jellyfish-web/dashboard-ui/home/hometab.js

1 line
1.6 KiB
JavaScript
Raw Normal View History

2018-09-12 19:26:21 +02:00
define(["userSettings","loading","connectionManager","apphost","layoutManager","focusManager","homeSections","emby-itemscontainer"],function(userSettings,loading,connectionManager,appHost,layoutManager,focusManager,homeSections){"use strict";function HomeTab(view,params){this.view=view,this.params=params,this.apiClient=connectionManager.currentApiClient(),this.sectionsContainer=view.querySelector(".sections"),view.querySelector(".sections").addEventListener("settingschange",onHomeScreenSettingsChanged.bind(this))}function onHomeScreenSettingsChanged(){this.sectionsRendered=!1,this.paused||this.onResume({refresh:!0})}return HomeTab.prototype.onResume=function(options){if(this.sectionsRendered){var sectionsContainer=this.sectionsContainer;return sectionsContainer?homeSections.resume(sectionsContainer,options):Promise.resolve()}loading.show();var view=this.view,apiClient=this.apiClient;return this.destroyHomeSections(),this.sectionsRendered=!0,apiClient.getCurrentUser().then(function(user){return homeSections.loadSections(view.querySelector(".sections"),apiClient,user,userSettings).then(function(){options.autoFocus&&focusManager.autoFocus(view),loading.hide()})})},HomeTab.prototype.onPause=function(){var sectionsContainer=this.sectionsContainer;sectionsContainer&&homeSections.pause(sectionsContainer)},HomeTab.prototype.destroy=function(){this.view=null,this.params=null,this.apiClient=null,this.destroyHomeSections(),this.sectionsContainer=null},HomeTab.prototype.destroyHomeSections=function(){var sectionsContainer=this.sectionsContainer;sectionsContainer&&homeSections.destroySections(sectionsContainer)},HomeTab});