1 line
12 KiB
JavaScript
1 line
12 KiB
JavaScript
define(["exports","./../appsettings.js","./../../emby-apiclient/events.js"],function(_exports,_appsettings,_events){function UserSettings(){}function getHomeSection(instance,index){index=instance.get("homesection"+index)||instance.getDefaultHomeScreenSection(index);return"folders"===index?index=instance.getDefaultHomeScreenSection(0):"onnow"===index?index="livetv":"librarytiles"!==index&&"smalllibrarytiles-automobile"!==index&&"librarytiles-automobile"!==index||(index="smalllibrarytiles"),index}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,UserSettings.prototype.setUserInfo=function(userId,apiClient){var self;return this.saveTimeout&&clearTimeout(this.saveTimeout),this.currentUserId=userId,this.currentApiClient=apiClient,userId?(self=this,apiClient.getDisplayPreferences("usersettings",userId,"emby").then(function(result){result.CustomPrefs=result.CustomPrefs||{},self.displayPrefs=result,_events.default.trigger(self,"load")})):(this.displayPrefs=null,Promise.resolve())},UserSettings.prototype.getData=function(){return this.displayPrefs},UserSettings.prototype.importFrom=function(instance){this.displayPrefs=instance.getData()},UserSettings.prototype.set=function(name,value,enableOnServer){var currentValue,userId=this.currentUserId;if(userId)return currentValue=this.get(name,enableOnServer),userId=_appsettings.default.set(name,value=null==value?null:value,userId),!1!==enableOnServer&&this.displayPrefs&&(this.displayPrefs.CustomPrefs[name]=null==value?value:value.toString(),(enableOnServer=this).saveTimeout&&clearTimeout(enableOnServer.saveTimeout),enableOnServer.saveTimeout=setTimeout(function(){this.saveTimeout=null,this.currentApiClient.updateDisplayPreferences("usersettings",this.displayPrefs,this.currentUserId,"emby")}.bind(enableOnServer),50)),currentValue!==value&&_events.default.trigger(this,"change",[name,value]),userId;throw new Error("userId cannot be null")},UserSettings.prototype.remove=function(name,enableOnServer){return this.set(name,null,enableOnServer)},UserSettings.prototype.get=function(name,enableOnServer){var userId=this.currentUserId;return userId?!1!==enableOnServer&&this.displayPrefs?this.displayPrefs.CustomPrefs[name]:_appsettings.default.get(name,userId):null},UserSettings.prototype.serverConfig=function(config){var apiClient=this.currentApiClient;return config?apiClient.updateUserConfiguration(this.currentUserId,config):apiClient.getUser(this.currentUserId).then(function(user){return user.Configuration})},UserSettings.prototype.enableCinemaMode=function(val){return null!=val?this.set("enableCinemaMode",val.toString(),!1):!(val=this.get("enableCinemaMode",!1))||"false"!==val},UserSettings.prototype.enableNextVideoInfoOverlay=function(val){return null!=val?this.set("enableNextVideoInfoOverlay",val.toString()):"false"!==(val=this.get("enableNextVideoInfoOverlay"))},UserSettings.prototype.getEnableLogoAsTitle=function(displayLanguage){var val=this.get("enableLogoAsTitle");return val?"true"===val:displayLanguage&&displayLanguage.toLowerCase().startsWith("en")},UserSettings.prototype.setEnableLogoAsTitle=function(val){return this.set("enableLogoAsTitle",val.toString())},UserSettings.prototype.enableThemeSongs=function(val){return null!=val?this.set("enableThemeSongs",val.toString(),!1):"false"!==(val=this.get("enableThemeSongs",!1))},UserSettings.prototype.enableThemeVideos=function(val){return null!=val?this.set("enableThemeVideos",val.toString(),!1):!!(val=this.get("enableThemeVideos",!1))&&"false"!==val},UserSettings.prototype.hideMediaTransportButtons=function(val){return null!=val?this.set("hideMediaTransportButtons",val.toString(),!1):this.get("hideMediaTransportButtons",!1)||"auto"},UserSettings.prototype.enableHomescreenFocusPreviews=function(val){return null!=val?this.set("enableHomescreenFocusPreviews",val.toString(),!0):"true"===(val=this.get("enableHomescreenFocusPreviews",!0))},UserSettings.prototype.enableBackdrops=function(val){return null!=val?this.set("enableBackdrops",val.toString(),!1):!!(val=this.get("enableBackdrops",!1))&&"false"!==val},UserSettings.prototype.enableRatingInfoOnPlaybackStart=function(val){return null!=val?this.set("enableRatingInfoOnPlaybackStart",val.toString(),!0):"false"!==(val=this.get("enableRatingInfoOnPlaybackStart",!0))},UserSettings.prototype.language=function(val){return null!=val?this.set("language",val.toString(),!1):this.get("language",!1)},UserSettings.prototype.dateTimeLocale=function(val){return null!=val?this.set("datetimelocale",val.toString(),!1):this.get("datetimelocale",!1)},UserSettings.prototype.skipBackLength=function(val){return null!=val?this.set("skipBackLength",val.toString()):parseInt(this.get("skipBackLength")||"10000")},UserSettings.prototype.skipForwardLength=function(val){return null!=val?this.set("skipForwardLength",val.toString()):parseInt(this.get("skipForwardLength")||"10000")},UserSettings.prototype.settingsTheme=function(val){return null!=val?this.set("settingsTheme",val,!1):this.get("settingsTheme",!1)},UserSettings.prototype.theme=function(val){return null!=val?this.set("appTheme",val,!1):this.get("appTheme",!1)||null},UserSettings.prototype.accentColor=function(val){return null!=val?this.set("accentColor",val,!0):this.get("accentColor",!0)||"emby"},UserSettings.prototype.screensaver=function(val){return null!=val?this.set("screensaver",val,!1):this.get("screensaver",!1)||null},UserSettings.prototype.soundEffects=function(val){return null!=val?this.set("soundeffects",val,!1):this.get("soundeffects",!1)||null},UserSettings.prototype.osdContentSection=function(val){return null!=val?this.set("osdcontentsection",val,!1):this.get("osdcontentsection",!1)},UserSettings.prototype.drawerStyle=function(val){return null!=val?this.set("drawerstyle",val,!1):this.get("drawerstyle",!1)||"docked"},UserSettings.prototype.settingsDrawerStyle=function(val){return null!=val?this.set("settingsdrawerstyle",val,!1):this.get("settingsdrawerstyle",!1)||"docked"},UserSettings.prototype.nowPlayingAudioBackgroundStyle=function(val){return null!=val?this.set("nowPlayingAudioBackgroundStyle",val,!0):this.get("nowPlayingAudioBackgroundStyle",!0)||"blur"},UserSettings.prototype.nowPlayingVideoBackgroundStyle=function(val){return null!=val?this.set("nowPlayingVideoBackgroundStyle",val,!0):this.get("nowPlayingVideoBackgroundStyle",!0)||"backdrop"},UserSettings.prototype.stillWatchingTimeMs=function(val){return null!=val?this.set("stillwatchingms",val,!0):parseInt(this.get("stillwatchingms",!0)||"14400000")},UserSettings.prototype.tvHome=function(val){return null!=val?this.set("tvhome",val,!0):this.get("tvhome",!0)||"vertical"},UserSettings.prototype.itemSortBy=function(itemId,val){itemId="sortitems-"+itemId+"-by";return null!=val?this.set(itemId,val,!1):this.get(itemId,!1)||""},UserSettings.prototype.itemSortOrder=function(itemId,val){itemId="sortitems-"+itemId+"-order";return null!=val?this.set(itemId,val,!1):this.get(itemId,!1)||"Ascending"},UserSettings.prototype.enableStillWatching=function(val){return null!=val?this.stillWatchingTimeMs(val?144e5:0):0<this.stillWatchingTimeMs()},UserSettings.prototype.getSubtitleAppearanceSettings=function(key){key=key||"localplayersubtitleappearance3";key=JSON.parse(this.get(key,!1)||"{}");return key.dropShadow||(key.dropShadow="dropshadow"),key.textBackground||(key.textBackground="transparent"),key.textBackgroundOpacity||(key.textBackgroundOpacity="1"),key.textColor||(key.textColor="#ffffff"),key.verticalPosition||(key.verticalPosition="10"),key},UserSettings.prototype.setSubtitleAppearanceSettings=function(value,key){return this.set(key=key||"localplayersubtitleappearance3",JSON.stringify(value),!1)},UserSettings.prototype.setFilter=function(key,value,enableOnServer){return this.set(key,value,!0===enableOnServer)},UserSettings.prototype.getFilter=function(key,enableOnServer){key=this.get(key,!0===enableOnServer);return"null"===key||""===key?null:key},UserSettings.prototype.getDefaultHomeScreenSection=function(index){switch(index){case 0:return"smalllibrarytiles";case 1:return"resume";case 2:return"resumeaudio";case 3:return"livetv";case 4:return"none";case 5:return"latestmedia";default:return"none"}},UserSettings.prototype.homeSection0=function(val){return null!=val?this.set("homesection0",val.toString(),!0):getHomeSection(this,0)},UserSettings.prototype.homeSection1=function(val){return null!=val?this.set("homesection1",val.toString(),!0):getHomeSection(this,1)},UserSettings.prototype.homeSection2=function(val){return null!=val?this.set("homesection2",val.toString(),!0):getHomeSection(this,2)},UserSettings.prototype.homeSection3=function(val){return null!=val?this.set("homesection3",val.toString(),!0):getHomeSection(this,3)},UserSettings.prototype.homeSection4=function(val){return null!=val?this.set("homesection4",val.toString(),!0):getHomeSection(this,4)},UserSettings.prototype.homeSection5=function(val){return null!=val?this.set("homesection5",val.toString(),!0):getHomeSection(this,5)},UserSettings.prototype.homeSection6=function(val){return null!=val?this.set("homesection6",val.toString(),!0):getHomeSection(this,6)},UserSettings.prototype.getHomeScreenSections=function(includeBlanks){for(var sections=[],i=0;i<7;i++){var section=getHomeSection(this,i);"none"===section&&!includeBlanks||sections.push(section)}return sections},UserSettings.prototype.enableVideoUnderUI=function(val){return null!=val?this.set("enableVideoUnderUI",val.toString(),!1):"true"===this.get("enableVideoUnderUI",!1)},UserSettings.prototype.guideChannelStyle=function(val){return null!=val?this.set("guideChannelStyle",val.toString(),!0):this.get("guideChannelStyle",!0)||"image"},UserSettings.prototype.showChannelNumberInGuide=function(val){return null!=val?this.set("showChannelNumberInGuide",val.toString(),!0):"false"!==this.get("showChannelNumberInGuide",!0)},UserSettings.prototype.showFullMediaInfoOnDetailScreen=function(val){return null!=val?this.set("showFullMediaInfoOnDetailScreen",val.toString(),!0):"false"!==this.get("showFullMediaInfoOnDetailScreen",!0)},UserSettings.prototype.seriesDisplay=function(val){return null!=val?this.set("seriesDisplay",val.toString(),!0):this.get("seriesDisplay",!0)||"episodessingleseason"},UserSettings.prototype.cardSize=function(val){return null!=val?this.set("cardSize",val.toString(),!1):this.get("cardSize",!1)||"normal"},UserSettings.prototype.videoOrientation=function(val){return null!=val?this.set("videoOrientation",val.toString(),!1):this.get("videoOrientation",!1)||"auto"},UserSettings.prototype.getLiveTvChannelSortSettingsKey=function(){return"livetv-channelorder"},UserSettings.prototype.getLiveTvChannelSortOrders=function(globalize){for(var selectedOrder,sortBy=[],currentOrder=(sortBy.push({name:globalize.translate("HeaderDefaultChannelOrder"),value:"DefaultChannelOrder",defaultSortOrder:"Ascending",menuSortKey:"0"}),sortBy.push({name:globalize.translate("ChannelNumber"),value:"ChannelNumber,SortName",defaultSortOrder:"Ascending"}),sortBy.push({name:globalize.translate("DatePlayed"),value:"DatePlayed,ChannelNumber,SortName",defaultSortOrder:"Descending"}),sortBy.push({name:globalize.translate("Title"),value:"SortName",defaultSortOrder:"Ascending"}),sortBy.push({name:globalize.translate("HeaderFavoritesThenByDefault"),value:"IsFavorite,DefaultChannelOrder",defaultSortOrder:"Ascending"}),sortBy.push({name:globalize.translate("HeaderFavoritesThenByChannelNumber"),value:"IsFavorite,ChannelNumber,SortName",defaultSortOrder:"Ascending"}),sortBy.push({name:globalize.translate("HeaderFavoritesThenByTitle"),value:"IsFavorite,SortName",defaultSortOrder:"Ascending"}),this.getFilter(this.getLiveTvChannelSortSettingsKey(),!0)),i=0,length=sortBy.length;i<length;i++){var order=sortBy[i];if(order.value===currentOrder){selectedOrder=order;break}}return(selectedOrder=selectedOrder||sortBy[0]).selected=!0,sortBy},UserSettings.prototype.addLiveTvChannelSortingToQuery=function(query,globalize){for(var selectedOrder,orders=this.getLiveTvChannelSortOrders(globalize),i=0,length=orders.length;i<length;i++){var order=orders[i];if(order.selected){selectedOrder=order;break}}query.SortBy=selectedOrder.value,query.SortOrder=selectedOrder.defaultSortOrder},_exports.default=UserSettings}); |