1 line
7.1 KiB
JavaScript
1 line
7.1 KiB
JavaScript
define(["exports","./../../modules/common/globalize.js","./../../modules/layoutmanager.js","./../../modules/loading/loading.js","./../../modules/dialoghelper/dialoghelper.js","./../libraryoptionseditor/libraryoptionseditor.js","./../../modules/common/responsehelper.js","./../../modules/listview/listview.js","./../../modules/common/itemmanager/itemmanager.js","./../../modules/emby-elements/emby-scroller/emby-scroller.js","./../../modules/emby-elements/emby-button/emby-button.js","./../../modules/emby-elements/emby-button/paper-icon-button-light.js","./../../modules/emby-elements/emby-input/emby-input.js","./../../modules/emby-elements/emby-select/emby-select.js","./../../modules/emby-elements/emby-toggle/emby-toggle.js","./../../modules/emby-elements/emby-dialogclosebutton/emby-dialogclosebutton.js","./../../modules/emby-elements/emby-itemscontainer/emby-itemscontainer.js"],function(_exports,_globalize,_layoutmanager,_loading,_dialoghelper,_libraryoptionseditor,_responsehelper,_listview,_itemmanager,_embyScroller,_embyButton,_paperIconButtonLight,_embyInput,_embySelect,_embyToggle,_embyDialogclosebutton,_embyItemscontainer){var currentResolve,currentOptions;function addMediaLocation(page,path,networkSharePath,username,password){var virtualFolder=currentOptions.library,refreshAfterChange=currentOptions.refresh;ApiClient.addMediaPath(virtualFolder,{Path:path,NetworkPath:networkSharePath,Username:username,Password:password},refreshAfterChange).then(function(){refreshLibraryFromServer(page)},function(){var options;options=_globalize.default.translate("ErrorAddingMediaPathToVirtualFolder"),Emby.importModule("./modules/common/dialogs/alert.js").then(function(alert){return alert(options)})})}function refreshLibraryFromServer(page){ApiClient.getVirtualFolders().then(function(result){result=result.Items.filter(function(f){return f.ItemId===currentOptions.library.ItemId})[0];if(result)return currentOptions.library=result,renderLibrary(page,currentOptions)})}function getFolderListOptions(items){return{renderer:_listview.default,options:{moreButton:!1,defaultBackground:!1,action:_layoutmanager.default.tv?"menu":"edit",buttonCommands:["edit","delete"],fields:["Name","ShortOverview"],draggable:!1,dragReorder:!1,roundImage:!0,image:!1,multiSelect:!1,playQueueIndicator:!1,commandActions:{deleteItems:function(options){var context=this,item=options.items[0],virtualFolder=currentOptions.library,refreshAfterChange=currentOptions.refresh;return options.deleteMessages={single:{text:_globalize.default.translate("MessageConfirmRemoveMediaLocation"),title:_globalize.default.translate("HeaderRemoveMediaLocation"),confirmText:_globalize.default.translate("Remove")},plural:{text:_globalize.default.translate("MessageConfirmRemoveMediaLocation"),title:_globalize.default.translate("HeaderRemoveMediaLocation"),confirmText:_globalize.default.translate("Remove")}},_itemmanager.default.showDeleteConfirmation(options).then(function(){return ApiClient.removeMediaPath(virtualFolder,item.OriginalItem.Path,refreshAfterChange).then(function(){refreshLibraryFromServer(context)})})}.bind(this),edit:function(items,options){return showDirectoryBrowser(this,(items=items[0].OriginalItem).Path,items.NetworkPath)}.bind(this)}}}}function renderLibrary(page,options){options.library.LibraryOptions||(options.library.LibraryOptions={}),options.library.LibraryOptions.PathInfos||(options.library.LibraryOptions.PathInfos=[]),options.library.LibraryOptions.PathInfos.length||(options.library.LibraryOptions.PathInfos=options.library.Locations.map(function(p){return{Path:p}})),"boxsets"===options.library.CollectionType||"playlists"===options.library.CollectionType?page.querySelector(".folders").classList.add("hide"):page.querySelector(".folders").classList.remove("hide");var folderList=page.querySelector(".folderList");return folderList.waitForCustomElementUpgrade().then(function(){folderList.resume({refresh:!0})})}function onAddButtonClick(){showDirectoryBrowser(this.closest(".dlg-libraryeditor"))}function showDirectoryBrowser(context,originalPath,networkPath){return Emby.importModule("./modules/directorybrowser/directorybrowser.js").then(function(directoryBrowser){var picker=new directoryBrowser;return new Promise(function(resolve,reject){picker.show({enableNetworkSharePath:!0,enableLoginCredentials:!0,pathReadOnly:null!=originalPath,path:originalPath,networkSharePath:networkPath,callback:function(path,networkSharePath,username,password){path&&(originalPath?function(page,path,networkSharePath,username,password){var virtualFolder=currentOptions.library;ApiClient.updateMediaPath(virtualFolder,{Path:path,NetworkPath:networkSharePath,Username:username,Password:password}).then(function(){refreshLibraryFromServer(page)},_responsehelper.default.handleErrorResponse)}(context,originalPath,networkSharePath,username,password):addMediaLocation(context,path,networkSharePath,username,password)),picker.close(),resolve()}})})})}function onDialogClosing(){var libraryOptions=_libraryoptionseditor.default.getLibraryOptions(this.querySelector(".libraryOptions")),libraryOptions=Object.assign(currentOptions.library.LibraryOptions||{},libraryOptions);ApiClient.updateVirtualFolderOptions(currentOptions.library.ItemId,libraryOptions)}function onDialogClosed(){_loading.default.hide(),currentResolve(!0)}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,require(["flexStyles","formDialogStyle"]);_exports.default=function(){this.show=function(options){return new Promise(function(resolve,reject){currentResolve=resolve,currentOptions=options,0;resolve=new XMLHttpRequest;resolve.open("GET","components/medialibraryeditor/medialibraryeditor.template.html",!0),resolve.onload=function(e){var template=this.response,dlg=_dialoghelper.default.createDialog({size:_layoutmanager.default.tv?"fullscreen":"medium-tall",modal:!1,removeOnClose:!0,scrollY:!1}),template=(dlg.classList.add("dlg-libraryeditor"),dlg.classList.add("ui-body-a"),dlg.classList.add("background-theme-a"),dlg.classList.add("formDialog"),dlg.innerHTML=_globalize.default.translateDocument(template),dlg.querySelector(".formDialogHeaderTitle").innerHTML=options.library.Name,!function(dlg,options){renderLibrary(dlg,options),dlg.querySelector(".btnAddFolder").addEventListener("click",onAddButtonClick);var context=dlg.querySelector(".libraryOptions");_libraryoptionseditor.default.embed(context).then(function(){_libraryoptionseditor.default.setContentType(context,options.library.CollectionType).then(function(){_libraryoptionseditor.default.setLibraryOptions(context,options.library.LibraryOptions)})})}(dlg,options),dlg.addEventListener("closing",onDialogClosing),dlg.addEventListener("close",onDialogClosed),dlg.querySelector(".folderList"));template.fetchData=function(){var items=currentOptions.library.LibraryOptions.PathInfos.map(function(i,index){return{Type:"GenericListItem",Name:i.Path,CanDelete:!0,CanEdit:!0,Icon:"folder",DeleteType:"remove",ShortOverview:i.NetworkPath,OriginalItem:i}});return Promise.resolve({Items:items,TotalRecordCount:items.length})}.bind(dlg),template.getListOptions=getFolderListOptions.bind(dlg),_dialoghelper.default.open(dlg),refreshLibraryFromServer(dlg)},resolve.send()})}}}); |