1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

update mobile detail layout

This commit is contained in:
Luke Pulverenti 2017-06-20 15:36:34 -04:00
parent 5c8ce0e96b
commit b2eda5460b
53 changed files with 191 additions and 60 deletions

View file

@ -0,0 +1 @@
define(["connectionManager","serverNotifications","events","globalize","emby-button"],function(connectionManager,serverNotifications,events,globalize,EmbyButtonPrototype){"use strict";function onClick(e){var button=this,id=button.getAttribute("data-id"),serverId=button.getAttribute("data-serverid"),apiClient=connectionManager.getApiClient(serverId);button.classList.contains("downloadbutton-on")?require(["confirm"],function(confirm){confirm({text:globalize.translate("sharedcomponents#ConfirmRemoveDownload"),confirmText:globalize.translate("sharedcomponents#RemoveDownload"),cancelText:globalize.translate("sharedcomponents#KeepDownload"),primary:"cancel"}).then(function(){apiClient.cancelSyncItems([id]),button.dispatchEvent(new CustomEvent("download-cancel",{cancelable:!1}))})}):require(["syncDialog"],function(syncDialog){syncDialog.showMenu({items:[id],isLocalSync:!0,serverId:serverId}).then(function(){button.dispatchEvent(new CustomEvent("download",{cancelable:!1}))})})}function updateSyncStatus(button,syncPercent){null!=syncPercent?button.classList.add("downloadbutton-on"):button.classList.remove("downloadbutton-on"),(syncPercent||0)>=100?button.classList.add("downloadbutton-complete"):button.classList.remove("downloadbutton-complete");var text;text=(syncPercent||0)>=100?globalize.translate("sharedcomponents#Downloaded"):null!=syncPercent?globalize.translate("sharedcomponents#Downloading"):globalize.translate("sharedcomponents#Download");var textElement=button.querySelector(".emby-downloadbutton-downloadtext");textElement&&(textElement.innerHTML=text),button.title=text}function clearEvents(button){button.removeEventListener("click",onClick)}function bindEvents(button){clearEvents(button),button.addEventListener("click",onClick)}var EmbyDownloadButtonPrototype=Object.create(EmbyButtonPrototype);EmbyDownloadButtonPrototype.createdCallback=function(){EmbyButtonPrototype.createdCallback&&EmbyButtonPrototype.createdCallback.call(this)},EmbyDownloadButtonPrototype.attachedCallback=function(){EmbyButtonPrototype.attachedCallback&&EmbyButtonPrototype.attachedCallback.call(this);var itemId=this.getAttribute("data-id"),serverId=this.getAttribute("data-serverid");itemId&&serverId&&bindEvents(this)},EmbyDownloadButtonPrototype.detachedCallback=function(){EmbyButtonPrototype.detachedCallback&&EmbyButtonPrototype.detachedCallback.call(this),clearEvents(this)},EmbyDownloadButtonPrototype.setItem=function(item){item?(this.setAttribute("data-id",item.Id),this.setAttribute("data-serverid",item.ServerId),updateSyncStatus(this,item.SyncPercent),bindEvents(this)):(this.removeAttribute("data-id"),this.removeAttribute("data-serverid"),clearEvents(this))},document.registerElement("emby-downloadbutton",{prototype:EmbyDownloadButtonPrototype,extends:"button"})});

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
define(["itemHelper","globalize","apphost","connectionManager","events","emby-button"],function(itemHelper,globalize,appHost,connectionManager,events){"use strict";function updateSyncStatus(container,item){var btnSyncToggle=container.querySelector(".btnSyncToggle");btnSyncToggle&&(null!=item.SyncPercent?(btnSyncToggle.classList.add("sync-on"),btnSyncToggle.querySelector("i").innerHTML="#4285F4"):(btnSyncToggle.classList.remove("sync-on"),btnSyncToggle.querySelector("i").style.color="inherit"))}function syncToggle(options){function resetSyncStatus(){updateSyncStatus(options.container,options.item)}function onSyncLocalClick(){this.classList.contains("sync-on")?require(["confirm"],function(confirm){confirm(globalize.translate("sharedcomponents#ConfirmRemoveDownload")).then(function(){connectionManager.getApiClient(options.item.ServerId).cancelSyncItems([options.item.Id])},resetSyncStatus)}):require(["syncDialog"],function(syncDialog){syncDialog.showMenu({items:[options.item],isLocalSync:!0,serverId:options.item.ServerId}).then(function(){events.trigger(self,"sync")},resetSyncStatus)})}var self=this;options=options||{},self.options=options;var container=options.container,user=options.user,item=options.item,html="";html+='<button type="button" is="emby-button" class="button-flat btnSyncToggle" style="margin:0;padding:.25em .5em;"><i class="md-icon">&#xE2C4;</i>',html+='<div style="margin: 0 0 0 .5em;font-weight:normal;">'+globalize.translate("sharedcomponents#Download")+"</div>",html+="</button>",itemHelper.canSync(user,item)?(appHost.supports("sync")?container.classList.remove("hide"):container.classList.add("hide"),container.innerHTML=html,container.querySelector(".btnSyncToggle").addEventListener("click",onSyncLocalClick),updateSyncStatus(container,item)):container.classList.add("hide")}return syncToggle.prototype.refresh=function(item){this.options.item=item,updateSyncStatus(this.options.container,item)},syncToggle.prototype.destroy=function(){var options=this.options;options&&(options.container.innerHTML="",this.options=null)},syncToggle});
define(["itemHelper","globalize","apphost","connectionManager","events","emby-button"],function(itemHelper,globalize,appHost,connectionManager,events){"use strict";function updateSyncStatus(container,item){var btnSyncToggle=container.querySelector(".btnSyncToggle");btnSyncToggle&&(null!=item.SyncPercent?(btnSyncToggle.classList.add("sync-on"),btnSyncToggle.querySelector("i").innerHTML="#4285F4"):(btnSyncToggle.classList.remove("sync-on"),btnSyncToggle.querySelector("i").style.color="inherit"))}function syncToggle(options){function resetSyncStatus(){updateSyncStatus(options.container,options.item)}function onSyncLocalClick(){this.classList.contains("sync-on")?require(["confirm"],function(confirm){confirm({text:globalize.translate("sharedcomponents#ConfirmRemoveDownload"),confirmText:globalize.translate("sharedcomponents#RemoveDownload"),cancelText:globalize.translate("sharedcomponents#KeepDownload"),primary:"cancel"}).then(function(){connectionManager.getApiClient(options.item.ServerId).cancelSyncItems([options.item.Id])},resetSyncStatus)}):require(["syncDialog"],function(syncDialog){syncDialog.showMenu({items:[options.item],isLocalSync:!0,serverId:options.item.ServerId}).then(function(){events.trigger(self,"sync")},resetSyncStatus)})}var self=this;options=options||{},self.options=options;var container=options.container,user=options.user,item=options.item,html="";html+='<button type="button" is="emby-button" class="button-flat btnSyncToggle" style="margin:0;padding:.25em .5em;"><i class="md-icon">&#xE2C4;</i>',html+='<div style="margin: 0 0 0 .5em;font-weight:normal;">'+globalize.translate("sharedcomponents#Download")+"</div>",html+="</button>",itemHelper.canSync(user,item)?(appHost.supports("sync")?container.classList.remove("hide"):container.classList.add("hide"),container.innerHTML=html,container.querySelector(".btnSyncToggle").addEventListener("click",onSyncLocalClick),updateSyncStatus(container,item)):container.classList.add("hide")}return syncToggle.prototype.refresh=function(item){this.options.item=item,updateSyncStatus(this.options.container,item)},syncToggle.prototype.destroy=function(){var options=this.options;options&&(options.container.innerHTML="",this.options=null)},syncToggle});