var lang = require('dojo/_base/lang'); var Deferred = require('dojo/Deferred'); var app = require('umc/app'); var modules = [ "appcenter/app", "computers/computer", "computers/domaincontroller_backup", "computers/domaincontroller_master", "computers/domaincontroller_slave", "computers/ipmanagedclient", "computers/linux", "computers/macos", "computers/memberserver", "computers/trustaccount", "computers/ubuntu", "computers/windows", "computers/windows_domaincontroller", "container/cn", "container/dc", "container/msgpo", "container/ou", "dhcp/dhcp", "dhcp/host", "dhcp/pool", "dhcp/server", "dhcp/service", "dhcp/shared", "dhcp/sharedsubnet", "dhcp/subnet", "dns/alias", "dns/dns", "dns/forward_zone", "dns/host_record", "dns/ptr_record", "dns/reverse_zone", "dns/srv_record", "dns/txt_record", "groups/group", "kerberos/kdcentry", "mail/domain", "mail/folder", "mail/lists", "mail/mail", "nagios/nagios", "nagios/service", "nagios/timeperiod", "networks/network", "policies/admin_container", "policies/autostart", "policies/desktop", "policies/dhcp_boot", "policies/dhcp_dns", "policies/dhcp_dnsupdate", "policies/dhcp_leasetime", "policies/dhcp_netbios", "policies/dhcp_routing", "policies/dhcp_scope", "policies/dhcp_statements", "policies/ldapserver", "policies/mailquota", "policies/maintenance", "policies/masterpackages", "policies/memberpackages", "policies/nfsmounts", "policies/policy", "policies/print_quota", "policies/printserver", "policies/pwhistory", "policies/registry", "policies/release", "policies/repositoryserver", "policies/repositorysync", "policies/share_userquota", "policies/slavepackages", "policies/umc", "saml/serviceprovider", "settings/cn", "settings/default", "settings/directory", "settings/extended_attribute", "settings/extended_options", "settings/ldapacl", "settings/ldapschema", "settings/license", "settings/lock", "settings/mswmifilter", "settings/packages", "settings/printermodel", "settings/printeruri", "settings/prohibited_username", "settings/sambaconfig", "settings/sambadomain", "settings/service", "settings/settings", "settings/syntax", "settings/udm_hook", "settings/udm_module", "settings/udm_syntax", "settings/umc_operationset", "settings/usertemplate", "settings/xconfig_choices", "shares/print", "shares/printer", "shares/printergroup", "shares/share", "users/passwd", "users/self", "users/user" ]; var _open = function(type) { console.log('opening:', type); var tabClosedDeferred = new Deferred(); app.openModule('udm', 'navigation', { newObject: { objectType: type }, onCloseTab: function() { tabClosedDeferred.resolve(); } }); return tabClosedDeferred.promise; }; var deferred = new Deferred(); deferred.resolve(); modules.forEach(function(imod) { deferred = deferred.then(function() { return _open(imod); }); });