2018-10-22 15:05:09 -07:00
|
|
|
define(["itemHelper", "libraryMenu", "apphost"], function(itemHelper, libraryMenu, appHost) {
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
function initSyncButtons(view) {
|
|
|
|
var apiClient = window.ApiClient;
|
|
|
|
apiClient && apiClient.getCurrentUserId() && apiClient.getCurrentUser().then(function(user) {
|
|
|
|
for (var item = {
|
|
|
|
SupportsSync: !0
|
|
|
|
}, categorySyncButtons = view.querySelectorAll(".categorySyncButton"), i = 0, length = categorySyncButtons.length; i < length; i++) categorySyncButtons[i].addEventListener("click", onCategorySyncButtonClick), itemHelper.canSync(user, item) ? categorySyncButtons[i].classList.remove("hide") : categorySyncButtons[i].classList.add("hide")
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
|
|
|
function onCategorySyncButtonClick(e) {
|
|
|
|
var button = this,
|
|
|
|
category = button.getAttribute("data-category"),
|
|
|
|
parentId = libraryMenu.getTopParentId();
|
|
|
|
require(["syncDialog"], function(syncDialog) {
|
|
|
|
syncDialog.showMenu({
|
|
|
|
ParentId: parentId,
|
|
|
|
Category: category,
|
|
|
|
serverId: ApiClient.serverId(),
|
|
|
|
mode: appHost.supports("sync") ? "download" : "sync"
|
|
|
|
})
|
|
|
|
})
|
|
|
|
}
|
|
|
|
return {
|
|
|
|
init: function(view) {
|
|
|
|
initSyncButtons(view)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|