Files
Futontime_UI/modules/metadataeditor/metadataeditor.js
2026-02-09 10:48:21 +01:00

1 line
32 KiB
JavaScript

define(["exports","./../emby-apiclient/connectionmanager.js","./../emby-apiclient/events.js","./../dialoghelper/dialoghelper.js","./../layoutmanager.js","./../common/globalize.js","./../common/datetime.js","./../common/textencoding.js","./../common/itemmanager/itemmanager.js","./../loading/loading.js","./../focusmanager.js","./../common/servicelocator.js","./../emby-elements/emby-checkbox/emby-checkbox.js","./../emby-elements/emby-toggle/emby-toggle.js","./../emby-elements/emby-input/emby-input.js","./../emby-elements/emby-select/emby-select.js","./../emby-elements/emby-textarea/emby-textarea.js","./../emby-elements/emby-button/emby-button.js","./../emby-elements/emby-button/paper-icon-button-light.js","./../emby-elements/emby-scroller/emby-scroller.js","./../emby-elements/emby-dialogclosebutton/emby-dialogclosebutton.js","./../common/input/api.js","./../listview/listview.js","./externalideditor.js"],function(_exports,_connectionmanager,_events,_dialoghelper,_layoutmanager,_globalize,_datetime,_textencoding,_itemmanager,_loading,_focusmanager,_servicelocator,_embyCheckbox,_embyToggle,_embyInput,_embySelect,_embyTextarea,_embyButton,_paperIconButtonLight,_embyScroller,_embyDialogclosebutton,_api,_listview,_externalideditor){function submitUpdatedItem(instance,form,item){var apiClient=_connectionmanager.default.getApiClient(instance.currentItem);!function(instance,form,item,apiClient){return"TvChannel"!==(item=instance.currentItem).Type||(instance=form.querySelector(".selectGuideDataProvider").value||null,form=form.querySelector(".selectGuideChannel").value||null,instance===item.ListingsProviderId&&form===item.ListingsChannelId)?Promise.resolve():apiClient.ajax({type:"POST",url:apiClient.getUrl("LiveTv/ChannelMappings"),data:{providerId:instance,tunerChannelId:item.ManagementId,providerChannelId:form},dataType:"json"})}(instance,form,0,apiClient).then(function(){apiClient.updateItem(item).then(function(){var options,context;instance.hasChanges=!0,options=_globalize.default.translate("MessageItemSaved"),Emby.importModule("./modules/toast/toast.js").then(function(toast){return toast(options)}),_loading.default.hide(),(context=instance.context).classList.contains("dialog")&&_dialoghelper.default.close(context)})})}function addElementToList(instance,source){var options;options={title:_globalize.default.translate("Add"),label:source.getAttribute("data-label"),confirmText:_globalize.default.translate("Add")},Emby.importModule("./modules/prompt/prompt.js").then(function(prompt){return prompt(options)}).then(function(text){var container=source.closest(".editableListviewContainer"),prop=source.getAttribute("data-field"),prop=(instance.currentItem[prop].push({Name:text}),container.querySelector(".itemsContainer").refreshItems(),container.querySelector(".chkLockedField"));prop&&(prop.checked=!0)})}function addOrEditPerson(instance,person){var isNew;return person||(person={},isNew=!0),Emby.importModule("./modules/metadataeditor/personeditor.js").then(function(personEditor){return personEditor.show(person).then(function(updatedPerson){isNew&&instance.currentItem.People.push(updatedPerson),isNew&&instance.refreshPeople();updatedPerson=instance.context.querySelector('.chkLockedField[data-field="Cast"]');updatedPerson&&(updatedPerson.checked=!0)})})}function onRejected(){}function afterDeleted(instance,item){var parentId=item.ParentId||item.SeasonId||item.SeriesId;parentId?reload(instance,parentId,item.ServerId):Emby.importModule("./modules/approuter.js").then(function(appRouter){appRouter.goHome()})}function onGuideDataProviderChange(e){var apiClient,section=this.context.querySelector(".channelMappingSection"),e=e.target.closest("select").value;e&&"none"!==e&&"tuner"!==e?(section.querySelector(".fldGuideChannelId").classList.remove("hide"),apiClient=_connectionmanager.default.getApiClient(this.currentItem),function(context,item,listingsProviderId,apiClient){apiClient.getJSON(apiClient.getUrl("LiveTv/ChannelMappingOptions",{ProviderId:listingsProviderId})).then(function(result){!function(context,item,channels){context=context.querySelector(".selectGuideChannel"),channels=channels.map(function(i){return'<option value="'+i.Id+'">'+i.Name.trim()+"</option>"}).join("");context.innerHTML=channels,context.value=item.ListingsChannelId}(context,item,result.ProviderChannels)})}(section,this.currentItem,e,apiClient)):section.querySelector(".fldGuideChannelId").classList.add("hide")}function onFieldInput(e){var container=this.closest(".inputContainer,.selectContainer").parentNode.closest(".inputContainer");container&&(container.querySelector(".chkLockedField").checked=!0)}function getLinkedItems(query){var instance=this.instance,type=this.type,property=this.property,icon=_itemmanager.default.getDefaultIcon({Type:type}),serverId=instance.serverId,sourceItems=instance.currentItem[property]||[],type=sourceItems.map(function(i,index){return{Type:"GenericListItem",Name:i.Name,CanDelete:!0,CanEdit:!1,Icon:icon,DeleteType:"remove",ShortOverview:i.Role,OriginalItem:i,CanReorder:!0,CanMoveUp:0<index,CanMoveDown:index<sourceItems.length-1,ServerId:serverId}});return Promise.resolve({Items:type,TotalRecordCount:type.length})}function getLinkedItemOptions(items){var enableDragReorder="Tag"!==this.type;return{renderer:_listview.default,options:{moreButton:!1,defaultBackground:!1,action:_layoutmanager.default.tv?"menu":"none",buttonCommands:["delete"],fields:["Name"],draggable:enableDragReorder,dragReorder:enableDragReorder,roundImage:!0,image:!1,playQueueIndicator:!1,commandActions:{deleteItems:function(options){var instance=this.instance,property=this.property,itemsToRemove=options.items;return instance.currentItem[property]=instance.currentItem[property].filter(function(t){return 0===itemsToRemove.filter(function(i){return i.OriginalItem===t}).length}),(options=instance.context.querySelector('.btnAddTextItem[data-field="'+property+'"]').closest(".editableListviewContainer").querySelector(".chkLockedField"))&&(options.checked=!0),Promise.resolve()}.bind(this),moveInOrder:function(items,options){var instance=this.instance,property=this.property,fromIndex=(console.log("onItemsMovedToNewIndex"),options.currentIndex),options=options.newIndex;return console.log("onItemsMovedToNewIndex, fromIndex: "+fromIndex+", newIndex: "+options),fromIndex!==options&&(arraymove(instance.currentItem[property],fromIndex,options),fromIndex=instance.context.querySelector('.btnAddTextItem[data-field="'+property+'"]').closest(".editableListviewContainer").querySelector(".chkLockedField"))&&(fromIndex.checked=!0),Promise.resolve()}.bind(this)}}}}function arraymove(arr,fromIndex,toIndex){var element=arr[fromIndex];arr.splice(fromIndex,1),arr.splice(toIndex,0,element)}function getPeopleListOptions(items){return{renderer:_listview.default,options:{moreButton:!1,defaultBackground:!1,action:_layoutmanager.default.tv?"menu":"edit",buttonCommands:["edit","delete"],fields:["Name","ShortOverview"],draggable:!0,dragReorder:!0,roundImage:!0,image:!1,playQueueIndicator:!1,commandActions:{deleteItems:function(options){var itemsToRemove=options.items,options=(this.currentItem.People=this.currentItem.People.filter(function(t){return 0===itemsToRemove.filter(function(i){return i.OriginalItem===t}).length}),this.context.querySelector('.chkLockedField[data-field="Cast"]'));options&&(options.checked=!0);return Promise.resolve()}.bind(this),edit:function(items,options){items=items[0];return addOrEditPerson(this,items.OriginalItem)}.bind(this),moveInOrder:function(items,options){console.log("onItemsMovedToNewIndex");var fromIndex=options.currentIndex,options=options.newIndex;return console.log("onItemsMovedToNewIndex, fromIndex: "+fromIndex+", newIndex: "+options),fromIndex!==options&&(arraymove(this.currentItem.People,fromIndex,options),fromIndex=this.context.querySelector('.chkLockedField[data-field="Cast"]'))&&(fromIndex.checked=!0),Promise.resolve()}.bind(this)}}}}function init(instance,itemId,context,apiClient){instance.itemId=itemId,instance.serverId=apiClient.serverId(),context.querySelector(".externalIds").addEventListener("click",function(e){var formatString,e=e.target.closest(".btnOpenExternalId");e&&(formatString=(e=context.querySelector("."+e.getAttribute("data-fieldid"))).getAttribute("data-formatstring"),e.value)&&_servicelocator.shell.openUrl(formatString.replace("{0}",e.value))}),context.querySelector(".btnMore").addEventListener("click",function(e){_connectionmanager.default.getApiClient(instance.currentItem).getCurrentUser().then(function(user){!function(instance,button,user){Emby.importModule("./modules/itemcontextmenu.js").then(function(itemContextMenu){var item=instance.currentItem;itemContextMenu.show({items:[item],positionTo:button,edit:!1,editImages:!0,editSubtitles:!0,sync:!1,share:!1,play:!1,queue:!1,user:user}).catch(onRejected)})}(instance,e.target,user)})}),context.querySelector(".selectGuideDataProvider").addEventListener("change",onGuideDataProviderChange.bind(instance)),context.querySelector(".btnHeaderSave").addEventListener("click",function(e){context.querySelector(".btnSave").click()});itemId=context.querySelector("form"),itemId.addEventListener("click",function(e){(e=e.target.closest(".btnAddTextItem"))&&addElementToList(this,e)}.bind(instance)),itemId.addEventListener("submit",function(e){_loading.default.show();var _form$querySelector$v,currentItem=this.currentItem,form=e.target.closest("form"),item=Object.assign({},currentItem),item=Object.assign(item,{Name:form.querySelector(".txtName").value,ChannelNumber:form.querySelector(".txtChannelNumber").value,OriginalTitle:form.querySelector(".txtOriginalName").value,ForcedSortName:form.querySelector(".txtSortName").value,SortName:form.querySelector(".txtSortName").value,CommunityRating:form.querySelector(".txtCommunityRating").value,CriticRating:form.querySelector(".txtCriticRating").value,IndexNumber:form.querySelector(".txtIndexNumber").value||null,ParentIndexNumber:form.querySelector(".txtParentIndexNumber").value||null,SortParentIndexNumber:form.querySelector(".txtDisplaySeason").value,SortIndexNumber:form.querySelector(".txtDisplayEpisode").value,Album:form.querySelector(".txtAlbum").value,AlbumArtists:function(form){return form.querySelector(".txtAlbumArtist").value.trim().split(";").filter(function(s){return 0<s.length}).map(function(a){return{Name:a}})}(form),ArtistItems:function(form){return form.querySelector(".txtArtist").value.trim().split(";").filter(function(s){return 0<s.length}).map(function(a){return{Name:a}})}(form),Composers:function(form){return form.querySelector(".txtComposer").value.trim().split(";").filter(function(s){return 0<s.length}).map(function(a){return{Name:a}})}(form),Overview:form.querySelector(".txtOverview").value,Status:form.querySelector(".selectStatus").value,PremiereDate:null==(_form$querySelector$v=form.querySelector(".txtPremiereDate").valueAsDateUtc)?void 0:_form$querySelector$v.toISOString(),DateCreated:null==(_form$querySelector$v=form.querySelector(".txtDateAdded").valueAsDateUtc)?void 0:_form$querySelector$v.toISOString(),EndDate:null==(_form$querySelector$v=form.querySelector(".txtEndDate").valueAsDateUtc)?void 0:_form$querySelector$v.toISOString(),ProductionYear:form.querySelector(".txtProductionYear").value,Video3DFormat:form.querySelector(".select3dFormat").value,OfficialRating:form.querySelector(".selectOfficialRating").value,CustomRating:form.querySelector(".selectCustomRating").value,LockData:form.querySelector(".chkLockData").checked,LockedFields:Array.prototype.filter.call(form.querySelectorAll(".chkLockedField"),function(c){return c.checked}).map(function(c){return c.getAttribute("data-field")})}),currentItem=("Series"===currentItem.Type?item.DisplayOrder=form.querySelector(".selectFileOrder").value:item.DisplayOrder=form.querySelector(".selectDisplayOrder").value,item.ProviderIds=Object.assign({},currentItem.ProviderIds),_externalideditor.default.updateObjectFromElements(form,item),item.PreferredMetadataLanguage=form.querySelector(".selectLanguage").value||null,item.PreferredMetadataCountryCode=form.querySelector(".selectCountry").value||null,"Person"===currentItem.Type&&(_form$querySelector$v=form.querySelector(".txtPlaceOfBirth").value,item.ProductionLocations=_form$querySelector$v?[_form$querySelector$v]:[]),"Series"===currentItem.Type&&(_form$querySelector$v=form.querySelector(".txtSeriesRuntime").value,item.RunTimeTicks=_form$querySelector$v?6e8*_form$querySelector$v:null),form.querySelector(".txtTagline").value);return item.Taglines=currentItem?[currentItem]:[],submitUpdatedItem(this,form,item),e.preventDefault(),e.stopPropagation(),!1}.bind(instance)),context.querySelector(".btnAddPerson").addEventListener("click",function(event,data){addOrEditPerson(instance)}),function(context){for(var elems=context.querySelectorAll(".txtInput-withlockedfield, .select-withlockedfield"),i=0,length=elems.length;i<length;i++){var elem=elems[i];"SELECT"===elem.tagName?elem.addEventListener("change",onFieldInput):elem.addEventListener("input",onFieldInput)}}(context),apiClient=context.querySelector(".peopleItemsContainer"),apiClient.fetchData=function(query){var icon=_itemmanager.default.getDefaultIcon({Type:"Person"}),serverId=this.serverId,people=this.currentItem.People||[],items=people.map(function(i,index){return{Type:"GenericListItem",Name:i.Name,CanDelete:!0,CanEdit:!0,Icon:icon,DeleteType:"remove",ShortOverview:i.Role,OriginalItem:i,CanReorder:!0,CanMoveUp:0<index,CanMoveDown:index<people.length-1,ServerId:serverId}});return Promise.resolve({Items:items,TotalRecordCount:items.length})}.bind(instance),apiClient.getListOptions=getPeopleListOptions.bind(instance),itemId=context.querySelector(".tagsItemsContainer"),itemId.fetchData=getLinkedItems.bind({instance:instance,type:"Tag",property:"TagItems"}),itemId.getListOptions=getLinkedItemOptions.bind({instance:instance,type:"Tag",property:"TagItems"}),apiClient=context.querySelector(".studiosItemsContainer"),apiClient.fetchData=getLinkedItems.bind({instance:instance,type:"Studio",property:"Studios"}),apiClient.getListOptions=getLinkedItemOptions.bind({instance:instance,type:"Studio",property:"Studios"}),itemId=context.querySelector(".genresItemsContainer");itemId.fetchData=getLinkedItems.bind({instance:instance,type:"Genre",property:"GenreItems"}),itemId.getListOptions=getLinkedItemOptions.bind({instance:instance,type:"Genre",property:"GenreItems"})}function hideElement(selector,context,multiple){context=context||document,"string"==typeof selector?(multiple=multiple?context.querySelectorAll(selector):[context.querySelector(selector)],Array.prototype.forEach.call(multiple,function(el){el&&el.classList.add("hide")})):selector.classList.add("hide")}function showElement(selector,context,multiple){context=context||document,"string"==typeof selector?(multiple=multiple?context.querySelectorAll(selector):[context.querySelector(selector)],Array.prototype.forEach.call(multiple,function(el){el&&el.classList.remove("hide")})):selector.classList.remove("hide")}function setRequired(elem,required){required?elem.setAttribute("required","required"):elem.removeAttribute("required")}function fillItemInfo(context,item,apiClient,parentalRatingOptions){var select=context.querySelector(".selectOfficialRating"),parentalRatingOptions=(populateRatings(parentalRatingOptions,select,item.OfficialRating),select.value=item.OfficialRating||"",populateRatings(parentalRatingOptions,select=context.querySelector(".selectCustomRating"),item.CustomRating),select.value=item.CustomRating||"",context.querySelector(".selectStatus")),select=(!function(select){var html="";html=(html=(html+="<option value=''></option>")+"<option value='Continuing'>"+_globalize.default.translate("Continuing")+"</option>")+"<option value='Ended'>"+_globalize.default.translate("Ended")+"</option>",select.innerHTML=html}(parentalRatingOptions),parentalRatingOptions.value=item.Status||"",context.querySelector(".select3dFormat",context).value=item.Video3DFormat||"",item.LockData||!1);if(context.querySelector(".chkLockData").checked=select,context.querySelector(".txtPath").innerHTML=item.Path||"",context.querySelector(".txtName").value=item.Name||"",context.querySelector(".txtChannelNumber").value=item.ChannelNumber||"",context.querySelector(".txtOriginalName").value=item.OriginalTitle||"",context.querySelector(".txtOverview").value=item.Overview||"",context.querySelector(".txtTagline").value=item.Taglines&&item.Taglines.length?item.Taglines[0]:"",context.querySelector(".txtSortName").value=item.SortName||"",context.querySelector(".txtCommunityRating").value=null==item.CommunityRating?"":item.CommunityRating.toFixed(1),context.querySelector(".txtCriticRating").value=item.CriticRating||"",context.querySelector(".txtIndexNumber").value=null==item.IndexNumber?"":item.IndexNumber,context.querySelector(".txtParentIndexNumber").value=null==item.ParentIndexNumber?"":item.ParentIndexNumber,context.querySelector(".txtDisplaySeason").value="SortParentIndexNumber"in item?item.SortParentIndexNumber:"",context.querySelector(".txtDisplayEpisode").value="SortIndexNumber"in item?item.SortIndexNumber:"",context.querySelector(".txtAlbum").value=item.Album||"",context.querySelector(".txtAlbumArtist").value=(item.AlbumArtists||[]).map(function(a){return a.Name}).join(";"),"Series"===item.Type?(context.querySelector(".selectFileOrder").value=(item.DisplayOrder||"").toLowerCase(),context.querySelector(".selectDisplayOrder").value=""):(context.querySelector(".selectDisplayOrder").value=item.DisplayOrder||"",context.querySelector(".selectFileOrder").value=""),context.querySelector(".txtArtist").value=(item.ArtistItems||[]).map(function(a){return a.Name}).join(";"),context.querySelector(".txtComposer").value=(item.Composers||[]).map(function(a){return a.Name}).join(";"),item.DateCreated)try{context.querySelector(".txtDateAdded").valueAsNumberUtc=Date.parse(item.DateCreated)}catch(e){context.querySelector(".txtDateAdded").value=""}else context.querySelector(".txtDateAdded").value="";if(item.PremiereDate)try{context.querySelector(".txtPremiereDate").valueAsNumberUtc=Date.parse(item.PremiereDate)}catch(e){context.querySelector(".txtPremiereDate").value=""}else context.querySelector(".txtPremiereDate").value="";if(item.EndDate)try{context.querySelector(".txtEndDate").valueAsNumberUtc=Date.parse(item.EndDate)}catch(e){context.querySelector(".txtEndDate").value=""}else context.querySelector(".txtEndDate").value="";context.querySelector(".txtProductionYear").value=item.ProductionYear||"";for(var parentalRatingOptions=item.ProductionLocations&&item.ProductionLocations.length?item.ProductionLocations[0]:"",promises=(context.querySelector(".txtPlaceOfBirth").value=parentalRatingOptions,context.querySelector(".selectLanguage").value=item.PreferredMetadataLanguage||"",context.querySelector(".selectCountry").value=item.PreferredMetadataCountryCode||"",item.RunTimeTicks?(select=item.RunTimeTicks/6e8,context.querySelector(".txtSeriesRuntime").value=Math.round(select)):context.querySelector(".txtSeriesRuntime",context).value="",_loading.default.hide(),[]),itemsContainers=context.querySelectorAll(".itemsContainer"),i=0,length=itemsContainers.length;i<length;i++)promises.push(function(itemsContainer,options){return itemsContainer.waitForCustomElementUpgrade().then(function(){itemsContainer.resume(options)})}(itemsContainers[i],{refresh:!0}));return Promise.all(promises)}function fillChannelMapping(instance,context,item,apiClient){apiClient.getJSON(apiClient.getUrl("LiveTv/ListingProviders",{ChannelId:item.Id})).then(function(result){result.length?context.querySelector(".channelMappingSection").classList.remove("hide"):context.querySelector(".channelMappingSection").classList.add("hide"),function(instance,context,item,providers){context=context.querySelector(".selectGuideDataProvider"),providers.push({Name:_globalize.default.translate("None"),Id:"none"}),providers=providers.map(function(i){return'<option value="'+i.Id+'">'+i.Name+" "+_textencoding.default.htmlEncode(i.ListingsId||i.Path||"").trim()+"</option>"}).join(""),context.innerHTML=providers,context.value=item.ListingsProviderId,onGuideDataProviderChange.call(instance,{target:context,currentTarget:context})}(instance,context,item,result)})}function populateRatings(allParentalRatings,select,currentValue){for(var rating,html="",ratings=(html+="<option value=''></option>",[]),currentValueFound=!1,i=0,length=allParentalRatings.length;i<length;i++)rating=allParentalRatings[i],ratings.push({Name:rating.Name,Value:rating.Name}),rating.Name===currentValue&&(currentValueFound=!0);for(currentValue&&!currentValueFound&&ratings.push({Name:currentValue,Value:currentValue}),i=0,length=ratings.length;i<length;i++)html+="<option value='"+(rating=ratings[i]).Value+"'>"+rating.Name+"</option>";select.innerHTML=html}function reload(instance,itemId,serverId){return _loading.default.show(),Promise.all([function(itemId,serverId){return serverId=_connectionmanager.default.getApiClient(serverId),itemId?serverId.getItem(serverId.getCurrentUserId(),itemId,{Fields:"ChannelMappingInfo",ExcludeFields:"Chapters,MediaSources,MediaStreams,Subviews"}):serverId.getRootFolder(serverId.getCurrentUserId())}(itemId,serverId),function(itemId,serverId){return serverId=_connectionmanager.default.getApiClient(serverId),itemId?serverId.getJSON(serverId.getUrl("Items/"+itemId+"/MetadataEditor")):Promise.resolve({})}(itemId,serverId)]).then(function(responses){var item=responses[0],responses=responses[1],context=instance.context,languages=(instance.currentItem=item,instance.hasChanges=!1,responses.Cultures),countries=responses.Countries,languages=(_externalideditor.default.embed(context.querySelector(".externalIdsSection"),item,responses.ExternalIdInfos),!function(context,item){for(var elems=context.querySelectorAll(".chkLockedField"),i=0,length=elems.length;i<length;i++){var elem=elems[i];elem.checked=item.LockedFields.includes(elem.getAttribute("data-field"))}}(context,item),!function(select,languages){var html="";html+="<option value=''></option>";for(var i=0,length=languages.length;i<length;i++){var culture=languages[i];html+="<option value='"+culture.TwoLetterISOLanguageName+"'>"+culture.DisplayName+"</option>"}select.innerHTML=html}(context.querySelector(".selectLanguage"),languages),context.querySelector(".selectCountry")),allCountries=countries,html="";html+="<option value=''></option>";for(var i=0,length=allCountries.length;i<length;i++){var culture=allCountries[i];html+="<option value='"+culture.TwoLetterISORegionName+"'>"+culture.DisplayName+"</option>"}languages.innerHTML=html;countries=_connectionmanager.default.getApiClient(item);return function(context,item){var itemType=item.Type;switch((item.Path?showElement:hideElement)(".fldPath",context),("Series"===item.Type||"Movie"===item.Type||"Trailer"===item.Type?showElement:hideElement)(".fldOriginalName",context),"Audio"===item.Type?(hideElement(".fldSortName",context),setRequired(context.querySelector(".txtSortName"),!1)):(showElement(".fldSortName",context),setRequired(context.querySelector(".txtSortName"),!0)),("Series"===item.Type?showElement:hideElement)(".fldSeriesRuntime",context),("Series"===item.Type||"Person"===item.Type?showElement:hideElement)(".fldEndDate",context),("MusicAlbum"===item.Type?showElement:hideElement)(".albumAssociationMessage",context),("Movie"===item.Type||"Trailer"===item.Type||"Series"===item.Type?showElement:hideElement)(".fldCriticRating",context),("Series"===item.Type?showElement:hideElement)(".fldStatus",context),("Video"===item.MediaType&&"TvChannel"!==item.Type?showElement:hideElement)(".fld3dFormat",context),("Audio"===item.Type?showElement:hideElement)(".fldAlbumArtist",context),("TvChannel"===item.Type?showElement:hideElement)(".fldChannelNumber",context),("Audio"===item.Type||"MusicVideo"===item.Type?(showElement(".fldArtist",context),showElement):(hideElement(".fldArtist",context),hideElement))(".fldAlbum",context),("Audio"===item.Type?showElement:hideElement)(".fldComposer",context),("Episode"===item.Type&&0===item.ParentIndexNumber?showElement:hideElement)(".collapsibleSpecialEpisodeInfo",context),("Person"===item.Type||"Genre"===item.Type||"Studio"===item.Type||"GameGenre"===item.Type||"MusicGenre"===item.Type||"TvChannel"===item.Type||"Book"===item.Type||"MusicArtist"===item.Type||"Channel"===item.Type||"TvChannel"===item.Type||"Folder"===item.Type?hideElement:showElement)(".peopleCollapsible",context),("Person"===item.Type||"Genre"===item.Type||"Studio"===item.Type||"GameGenre"===item.Type||"MusicGenre"===item.Type||"TvChannel"===item.Type||"Folder"===item.Type?(hideElement(".fldCommunityRating",context),hideElement(".genresCollapsible",context),hideElement(".studiosCollapsible",context),("TvChannel"===item.Type?showElement:hideElement)(".fldOfficialRating",context),hideElement):(showElement(".fldCommunityRating",context),showElement(".genresCollapsible",context),showElement(".studiosCollapsible",context),showElement(".fldOfficialRating",context),showElement))(".fldCustomRating",context),showElement(".tagsCollapsible",context),("TvChannel"===item.Type?(hideElement(".metadataSettingsCollapsible",context),hideElement):(showElement(".metadataSettingsCollapsible",context),showElement))(".fldDateAdded",context),itemType){case"TvChannel":case"Folder":hideElement(".fldPremiereDate",context);break;default:showElement(".fldPremiereDate",context)}switch(itemType){case"Person":case"TvChannel":case"Folder":hideElement(".fldYear",context);break;default:showElement(".fldYear",context)}("TvChannel"===item.Type||"Folder"===item.Type?hideElement:showElement)(".overviewContainer",context),("Person"===item.Type?(context.querySelector(".txtProductionYear").label(_globalize.default.translate("LabelBirthYear")),context.querySelector(".txtPremiereDate").label(_globalize.default.translate("LabelBirthDate")),context.querySelector(".txtEndDate").label(_globalize.default.translate("LabelDeathDate")),showElement):(context.querySelector(".txtProductionYear").label(_globalize.default.translate("Year")),context.querySelector(".txtPremiereDate").label(_globalize.default.translate("LabelReleaseDate")),context.querySelector(".txtEndDate").label(_globalize.default.translate("LabelEndDate")),hideElement))(".fldPlaceOfBirth"),"Audio"===item.Type||"Episode"===item.Type||"Season"===item.Type?(showElement(".fldIndexNumber"),"Episode"===item.Type?context.querySelector(".txtIndexNumber").label(_globalize.default.translate("LabelEpisodeNumber")):"Season"===item.Type?context.querySelector(".txtIndexNumber").label(_globalize.default.translate("LabelSeasonNumber")):"Audio"===item.Type?context.querySelector(".txtIndexNumber").label(_globalize.default.translate("LabelTrackNumber")):context.querySelector(".txtIndexNumber").label(_globalize.default.translate("LabelNumber"))):hideElement(".fldIndexNumber"),"Audio"===item.Type||"Episode"===item.Type?(showElement(".fldParentIndexNumber"),"Episode"===item.Type?context.querySelector(".txtParentIndexNumber").label(_globalize.default.translate("LabelSeasonNumber")):"Audio"===item.Type?context.querySelector(".txtParentIndexNumber").label(_globalize.default.translate("LabelDiscNumber")):context.querySelector(".txtParentIndexNumber").label(_globalize.default.translate("LabelParentNumber"))):hideElement(".fldParentIndexNumber",context),"BoxSet"===item.Type?(showElement(".fldDisplayOrder",context),hideElement(".fldFileOrder",context),context.querySelector(".selectDisplayOrder").innerHTML='<option value="SortName">'+_globalize.default.translate("SortName")+'</option><option value="PremiereDate">'+_globalize.default.translate("ReleaseDate")+"</option>",context.querySelector(".selectFileOrder").innerHTML=""):"Series"===item.Type?(hideElement(".fldDisplayOrder",context),showElement(".fldFileOrder",context),context.querySelector(".selectFileOrder").innerHTML='<option value="aired">'+_globalize.default.translate("Aired")+'</option><option value="absolute">'+_globalize.default.translate("Absolute")+'</option><option value="dvd">Dvd</option>',context.querySelector(".selectDisplayOrder").innerHTML=""):(context.querySelector(".selectDisplayOrder").innerHTML="",context.querySelector(".selectFileOrder").innerHTML="",hideElement(".fldDisplayOrder",context),hideElement(".fldFileOrder",context))}(context,item),"TvChannel"===item.Type&&fillChannelMapping(instance,context,item,countries),("Video"===item.MediaType&&"Episode"!==item.Type&&"TvChannel"!==item.Type||"Series"===item.Type||"Game"===item.Type?showElement:hideElement)(".fldTagline",context),fillItemInfo(context,item,0,responses.ParentalRatingOptions)})}function show(instance,itemId,serverId){return _loading.default.show(),require(["text!modules/metadataeditor/metadataeditor.template.html"]).then(function(responses){var responses=responses[0],dialogOptions={removeOnClose:!0,scrollY:!1},dialogOptions=(_layoutmanager.default.tv?dialogOptions.size="fullscreen":dialogOptions.size="medium-tall",_dialoghelper.default.createDialog(dialogOptions)),html=(dialogOptions.classList.add("formDialog"),"");html+=_globalize.default.translateDocument(responses,"sharedcomponents"),dialogOptions.innerHTML=html;for(var elems=dialogOptions.querySelectorAll(".dayText"),date=new Date;0<date.getDay();)date.setDate(date.getDate()-1);for(var i=0,length=elems.length;i<length;i++)elems[i].innerHTML=_datetime.default.toLocaleDateString(date,{weekday:"long"}),date.setDate(date.getDate()+1);dialogOptions.querySelector(".formDialogFooter").classList.remove("hide"),instance.context=dialogOptions;responses=_dialoghelper.default.open(dialogOptions);return init(instance,itemId,dialogOptions,_connectionmanager.default.getApiClient(serverId)),instance.resume({refresh:!0}),responses.then(function(){var hasChanges=instance.hasChanges;return instance.destroy(),hasChanges?Promise.resolve():Promise.reject()})})}function MetadataEditor(){this.onLibraryChangedFn=function(e,apiClient,data){var _data$ItemsUpdated,item=this.currentItem;item&&(null!=(_data$ItemsUpdated=data.ItemsUpdated)&&_data$ItemsUpdated.includes(item.Id)&&this.paused&&(this._fullReloadOnResume=!0),null!=(_data$ItemsUpdated=data.ItemsRemoved))&&_data$ItemsUpdated.includes(item.Id)&&(this.paused?this._afterDeletedOnResume=!0:afterDeleted(this,item))}.bind(this);var onLibraryChangedFn=this.onLibraryChangedFn;onLibraryChangedFn&&_events.default.on(_api.default,"LibraryChanged",onLibraryChangedFn)}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,require(["formDialogStyle","flexStyles","css!modules/metadataeditor/metadataeditor.css","css!!tv|modules/metadataeditor/metadataeditor_nontv.css"]),MetadataEditor.prototype.show=function(itemId,serverId){return show(this,itemId,serverId)},MetadataEditor.prototype.embed=function(elem,itemId,serverId){_loading.default.show();var instance=this;return require(["text!modules/metadataeditor/metadataeditor.template.html"]).then(function(responses){responses=responses[0],elem.innerHTML=_globalize.default.translateDocument(responses,"sharedcomponents"),(instance.context=elem).querySelector(".btnMore").classList.remove("hide"),init(instance,itemId,elem,_connectionmanager.default.getApiClient(serverId)),elem.querySelector(".formDialogFooter").classList.remove("formDialogFooter","hide"),elem.querySelector(".btnHeaderSave").classList.remove("hide"),responses=elem.querySelector("form");return responses.classList.remove("dialogContentInner","dialog-content-centered"),responses.classList.add("padded-bottom-page"),instance.resume({refresh:!0,autoFocus:!0})})},MetadataEditor.prototype.refreshPeople=function(){this.context.querySelector(".peopleItemsContainer").refreshItems()},MetadataEditor.prototype.pause=function(){this.paused=!0},MetadataEditor.prototype.resume=function(options){this.paused=null;function afterRefresh(){null!=options&&options.autoFocus&&_focusmanager.default.autoFocus(instance.context,{skipIfNotEnabled:!0})}var item,instance=this;this._afterDeletedOnResume?(item=this.currentItem)&&afterDeleted(this,item):this._fullReloadOnResume?(item=this.currentItem)&&reload(this,item.Id,item.ServerId).then(afterRefresh):null!=options&&options.refresh&&reload(this,this.itemId,this.serverId).then(afterRefresh),this._afterDeletedOnResume=null,this._fullReloadOnResume=null},MetadataEditor.prototype.destroy=function(){this.pause();var onLibraryChangedFn=this.onLibraryChangedFn;onLibraryChangedFn&&_events.default.off(_api.default,"LibraryChanged",onLibraryChangedFn),this.onLibraryChangedFn=null,this.hasChanges=null,this.context=null,this.currentItem=null,this.paused=null,this._afterDeletedOnResume=null,this._fullReloadOnResume=null};_exports.default=MetadataEditor});