1 line
8.9 KiB
JavaScript
1 line
8.9 KiB
JavaScript
define(["exports","./basetab.js","./../emby-apiclient/connectionmanager.js","./listcontroller.js","./../layoutmanager.js"],function(_exports,_basetab,_connectionmanager,_listcontroller,_layoutmanager){function ItemsTab(view,params,options){_basetab.default.apply(this,arguments),_listcontroller.default.apply(this,arguments),this.view=view,this.params=params,this.options=options,params.serverId&&(this.apiClient=_connectionmanager.default.getApiClient(params.serverId))}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,Object.assign(ItemsTab.prototype,_basetab.default.prototype),Object.assign(ItemsTab.prototype,_listcontroller.default.prototype),ItemsTab.prototype.onTemplateLoaded=function(){_basetab.default.prototype.onTemplateLoaded.apply(this,arguments);var params=this.params;this.initItemsContainer(),this.addFocusBehavior(this.itemsContainer),params.parentId&&!this.isGlobalQuery()&&this.itemsContainer.setAttribute("data-parentid",params.parentId),this.initButtons()},ItemsTab.prototype.getBaseQuery=function(){var sortMenuOptions=this.getSortMenuOptions(),sortValues=this.getSortValues(),fields=this.getRequestedItemFields(),settings=this.getViewSettings(),visibleFields=("primary"!==settings.imageType&&"list"!==settings.imageType||(fields+=",PrimaryImageAspectRatio"),settings.fields),visibleFields=(!visibleFields.includes("ProductionYear")&&"list"!==settings.imageType||(fields+=",ProductionYear"),!visibleFields.includes("CommunityRating")&&"list"!==settings.imageType||(fields+=",CommunityRating"),!visibleFields.includes("OfficialRating")&&"list"!==settings.imageType||(fields+=",OfficialRating"),!visibleFields.includes("CriticRating")&&"list"!==settings.imageType||(fields+=",CriticRating"),visibleFields.includes("PremiereDate")&&(fields+=",PremiereDate"),visibleFields.includes("StartDate")&&(fields+=",StartDate"),visibleFields.includes("DateCreated")&&(fields+=",DateCreated"),visibleFields.includes("Resolution")&&(fields+=",Width,Height"),visibleFields.includes("Bitrate")&&(fields+=",Bitrate"),visibleFields.includes("Size")&&(fields+=",Size"),visibleFields.includes("Container")&&(fields+=",Container"),visibleFields.includes("Video3DFormat")&&(fields+=",Video3DFormat"),visibleFields.includes("Genres")&&(fields+=",Genres"),visibleFields.includes("Studios")&&(fields+=",Studios"),visibleFields.includes("Tags")&&(fields+=",Tags"),visibleFields.includes("Filename")&&(fields+=",Filename"),visibleFields.includes("Path")&&(fields+=",Path"),visibleFields.includes("Overview")&&(fields+=",Overview"),visibleFields.includes("OriginalTitle")&&(fields+=",OriginalTitle"),visibleFields.includes("SortName")&&(fields+=",SortName"),visibleFields.includes("PlayCount")&&(fields+=",UserDataPlayCount"),visibleFields.includes("DatePlayed")&&(fields+=",UserDataLastPlayedDate"),this.enableAlphaPicker(sortValues.sortBy,sortValues.sortOrder)&&_layoutmanager.default.tv&&(fields+=",Prefix"),this.getRequestedImageTypes()),sortOrder=("banner"===settings.imageType?visibleFields+=",Banner":"disc"===settings.imageType?visibleFields+=",Disc":"logo"===settings.imageType&&(visibleFields+=",Logo"),sortValues.sortOrder),sortMenuOptions=(sortValues.sortBy&&sortOrder&&(sortMenuOptions=function(sortMenuOptions,sortBy){for(var i=0,length=sortMenuOptions.length;i<length;i++){var option=sortMenuOptions[i];if(option.value===sortBy)return option}return null}(sortMenuOptions,sortValues.sortBy))&&sortMenuOptions["sortOrder"+sortOrder]&&(sortOrder=sortMenuOptions["sortOrder"+sortOrder]),{SortBy:sortValues.sortBy,SortOrder:sortOrder,IncludeItemTypes:this.getQueryIncludeItemTypes().join(","),Recursive:!0,Fields:fields,StartIndex:0,ParentId:this.isGlobalQuery()?null:this.params.parentId});return"datagrid"===settings.imageType?(sortMenuOptions.EnableImages=!1,sortMenuOptions.ImageTypeLimit=0):(sortMenuOptions.EnableImageTypes=visibleFields,sortMenuOptions.ImageTypeLimit=1),sortMenuOptions},ItemsTab.prototype.getQueryInfo=function(enableFilters){var hasFilters,query=this.getBaseQuery(),queryFilters=[],enableFilters=(this.options&&"favorites"===this.options.mode&&queryFilters.push("IsFavorite"),!1!==enableFilters&&((enableFilters=this.getFilters()).SeriesStatus&&(query.SeriesStatus=enableFilters.SeriesStatus,hasFilters=!0),enableFilters.IsPlayed&&(queryFilters.push("IsPlayed"),hasFilters=!0),enableFilters.IsUnplayed&&(queryFilters.push("IsUnplayed"),hasFilters=!0),enableFilters.IsFavorite&&(queryFilters.push("IsFavorite"),hasFilters=!0),enableFilters.IsResumable&&(queryFilters.push("IsResumable"),hasFilters=!0),enableFilters.Containers&&(hasFilters=!0,query.Containers=enableFilters.Containers),enableFilters.AudioCodecs&&(hasFilters=!0,query.AudioCodecs=enableFilters.AudioCodecs),enableFilters.AudioLayouts&&(hasFilters=!0,query.AudioLayouts=enableFilters.AudioLayouts),enableFilters.AudioLanguages&&(hasFilters=!0,query.AudioLanguages=enableFilters.AudioLanguages),enableFilters.VideoCodecs&&(hasFilters=!0,query.VideoCodecs=enableFilters.VideoCodecs),enableFilters.SubtitleCodecs&&(hasFilters=!0,query.SubtitleCodecs=enableFilters.SubtitleCodecs),enableFilters.SubtitleLanguages&&(hasFilters=!0,query.SubtitleLanguages=enableFilters.SubtitleLanguages),enableFilters.GenreIds&&(hasFilters=!0,query.GenreIds=enableFilters.GenreIds),enableFilters.OfficialRatings&&(hasFilters=!0,query.OfficialRatings=enableFilters.OfficialRatings),enableFilters.StudioIds&&(hasFilters=!0,query.StudioIds=enableFilters.StudioIds),enableFilters.TagIds&&(hasFilters=!0,query.TagIds=enableFilters.TagIds),enableFilters.Years&&(hasFilters=!0,query.Years=enableFilters.Years),enableFilters.Is3D&&(hasFilters=query.Is3D=!0),enableFilters.Resolution&&(this.setResolutionIntoQuery(query,enableFilters.Resolution),hasFilters=!0),null!=enableFilters.HasSubtitles&&(query.HasSubtitles=enableFilters.HasSubtitles,hasFilters=!0),null!=enableFilters.HasLyrics&&(query.HasSubtitles=enableFilters.HasLyrics,hasFilters=!0),null!=enableFilters.ChannelMappingStatus&&(query.ChannelMappingStatus=enableFilters.ChannelMappingStatus,hasFilters=!0),null!=enableFilters.HasTrailer&&(query.HasTrailer=enableFilters.HasTrailer,hasFilters=!0),null!=enableFilters.HasSpecialFeature&&(query.HasSpecialFeature=enableFilters.HasSpecialFeature,hasFilters=!0),null!=enableFilters.HasThemeSong&&(query.HasThemeSong=enableFilters.HasThemeSong,hasFilters=!0),null!=enableFilters.HasThemeVideo&&(query.HasThemeVideo=enableFilters.HasThemeVideo,hasFilters=!0),null!=enableFilters.HasOverview&&(query.HasOverview=enableFilters.HasOverview,hasFilters=!0),null!=enableFilters.HasImdbId&&(query.HasImdbId=enableFilters.HasImdbId,hasFilters=!0),null!=enableFilters.HasTvdbId&&(query.HasTvdbId=enableFilters.HasTvdbId,hasFilters=!0),null!=enableFilters.HasTmdbId&&(query.HasTmdbId=enableFilters.HasTmdbId,hasFilters=!0),null!=enableFilters.IsLocked)&&(query.IsLocked=enableFilters.IsLocked,hasFilters=!0),query.Filters=queryFilters.length?queryFilters.join(","):null,this.getViewSettings());return enableFilters.groupItemsIntoCollections?query.GroupItemsIntoCollections=!0:enableFilters.groupItemsIntoTags&&(query.GroupItemsInto="Tags"),(this.getSortValues().sortBy||"").startsWith("Random")&&(query.RandomSeed=this.getRandomSeed()),{query:query,hasFilters:hasFilters}},ItemsTab.prototype.getSettingsKey=function(){return this.params.parentId+"-1"},ItemsTab.prototype.onResume=function(options){_basetab.default.prototype.onResume.apply(this,arguments),_listcontroller.default.prototype.resume.apply(this,arguments),options&&options.refresh&&this.updateSortText(),this.supportsAlphaPicker()&&this.initAlphaPicker();var alphaNumericShortcuts=this.alphaNumericShortcuts,instance=(alphaNumericShortcuts&&alphaNumericShortcuts.resume(),this),autoFocus=options.autoFocus;this.itemsContainer.resume(options).then(function(result){autoFocus&&instance.autoFocus()})},ItemsTab.prototype.loadItemsTemplate=function(){var promise=require(["text!modules/tabbedview/itemstab.template.html"]);return"y"===this.scrollDirection()?promise:promise.then(function(responses){var html=responses[0];return html=(html=(html=(html=(html=(html=html.replace('data-horizontal="false"','data-horizontal="true"')).replace('data-forcescrollbar="true"','data-forcescrollbar="false"')).replace('data-bindheader="true"','data-bindheader="false"')).replace(" padded-bottom-page","")).replace(" vertical-wrap","")).replace(' data-virtualscrolllayout="vertical-grid"',""),responses[0]=html,responses})},ItemsTab.prototype.supportsAlphaPicker=function(){return!1},ItemsTab.prototype.refresh=function(options){var instance=this,autoFocus=options.autoFocus;this.itemsContainer.refreshItems(options).then(function(result){autoFocus&&instance.autoFocus()})},ItemsTab.prototype.onPause=function(){_basetab.default.prototype.onPause.apply(this,arguments),_listcontroller.default.prototype.pause.apply(this,arguments)},ItemsTab.prototype.destroy=function(){_basetab.default.prototype.destroy.apply(this,arguments),_listcontroller.default.prototype.destroy.apply(this,arguments),this.view=null,this.params=null,this.options=null,this.apiClient=null},_exports.default=ItemsTab}); |