define(["exports","./../modules/common/globalize.js","./../modules/loading/loading.js","./../modules/tabbedview/basetab.js","./../modules/formhelper.js","./../modules/emby-elements/emby-checkbox/emby-checkbox.js","./../modules/emby-elements/emby-button/emby-button.js","./../modules/emby-elements/emby-button/paper-icon-button-light.js","./../modules/emby-elements/emby-select/emby-select.js","./../modules/emby-elements/emby-scroller/emby-scroller.js","./../modules/emby-elements/emby-itemscontainer/emby-itemscontainer.js"],function(_exports,_globalize,_loading,_basetab,_formhelper,_embyCheckbox,_embyButton,_paperIconButtonLight,_embySelect,_embyScroller,_embyItemscontainer){function triggerChange(select){var evt=document.createEvent("HTMLEvents");evt.initEvent("change",!1,!0),select.dispatchEvent(evt)}function renderMediaFolders(page,user,mediaFolders){html=(html="")+'

'+_globalize.default.translate("Libraries")+'

')+('"))+function(user,folder,subFolders,folderEnabled){for(var html="",excludedSubFolders=user.Policy.ExcludedSubFolders||[],folderId=folder.Guid||folder.Id,hide=0"+subFolder.Path+""}return html}(user,folder,folder.SubFolders||[],isChecked)+"
";html+="",page.querySelector(".folderAccess").innerHTML=html;page=page.querySelector(".chkEnableAllFolders");page.checked=user.Policy.EnableAllFolders,triggerChange(page)}function saveUser(user,page){user.Policy.EnableAllFolders=page.querySelector(".chkEnableAllFolders").checked,user.Policy.EnabledFolders=user.Policy.EnableAllFolders?[]:Array.prototype.filter.call(page.querySelectorAll(".chkFolder"),function(c){return c.checked}).map(function(c){return c.getAttribute("data-id")}),user.Policy.ExcludedSubFolders=user.Policy.EnableAllFolders?[]:Array.prototype.filter.call(page.querySelectorAll(".chkSubFolder"),function(c){return!c.checked}).map(function(c){return c.getAttribute("data-id")}),user.Policy.EnableAllChannels=page.querySelector(".chkEnableAllChannels").checked,user.Policy.EnabledChannels=user.Policy.EnableAllChannels?[]:Array.prototype.filter.call(page.querySelectorAll(".chkChannel"),function(c){return c.checked}).map(function(c){return c.getAttribute("data-id")}),user.Policy.EnableAllDevices=page.querySelector(".chkEnableAllDevices").checked,user.Policy.EnabledDevices=user.Policy.EnableAllDevices?[]:Array.prototype.filter.call(page.querySelectorAll(".chkDevice"),function(c){return c.checked}).map(function(c){return c.getAttribute("data-id")}),user.Policy.BlockedChannels=null,user.Policy.BlockedMediaFolders=null,ApiClient.updateUserPolicy(user.Id,user.Policy).then(function(){_loading.default.hide(),_formhelper.default.handleConfigurationSavedResponse()})}function onFolderChange(e){var e=e.target,view=this.view;if(e.classList.contains("chkFolder"))for(var page=view,folderId=e.getAttribute("data-id"),checked=e.checked,elems=page.querySelectorAll('.chkSubFolder[data-folderid="'+folderId+'"]'),i=0,length=elems.length;i"+folder.Name+""}page.querySelector(".channelAccess").innerHTML=html,channels.length?page.querySelector(".channelAccessContainer").classList.remove("hide"):page.querySelector(".channelAccessContainer").classList.add("hide"),page.querySelector(".chkEnableAllChannels").checked=user.Policy.EnableAllChannels,triggerChange(page.querySelector(".chkEnableAllChannels"))}(page,user,responses[1].Items),function(page,user,devices){for(var html="",i=0,length=devices.length;i"+device.Name+" - "+device.AppName+""}page.querySelector(".deviceAccess").innerHTML=html,page.querySelector(".chkEnableAllDevices").checked=user.Policy.EnableAllDevices,triggerChange(page.querySelector(".chkEnableAllDevices")),user.Policy.IsAdministrator?page.querySelector(".deviceAccessContainer").classList.add("hide"):page.querySelector(".deviceAccessContainer").classList.remove("hide")}(page,user,responses[2].Items),function(page,user){ApiClient.getJSON(ApiClient.getUrl("Library/SelectableMediaFolders")).then(function(mediaFolders){renderMediaFolders(page,user,mediaFolders)})}(page,user),_loading.default.hide()})},AccessTab.prototype.destroy=function(){_basetab.default.prototype.destroy.apply(this,arguments),this.apiClient=null},_exports.default=AccessTab});