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

33 lines
1.8 KiB
JavaScript
Raw Normal View History

2018-10-23 01:05:09 +03:00
define(["appSettings", "apphost", "emby-checkbox", "emby-select", "emby-input"], function(appSettings, appHost) {
"use strict";
function loadForm(page, user) {
page.querySelector("#txtSyncPath").value = appSettings.syncPath() || "", page.querySelector("#chkWifi").checked = appSettings.syncOnlyOnWifi(), page.querySelector(".selectAudioBitrate").value = appSettings.maxStaticMusicBitrate() || ""
}
function saveUser(page) {
var syncPath = page.querySelector("#txtSyncPath").value;
appSettings.syncPath(syncPath), appSettings.syncOnlyOnWifi(page.querySelector("#chkWifi").checked), appSettings.maxStaticMusicBitrate(page.querySelector(".selectAudioBitrate").value || null), require(["localsync"], function(localSync) {
localSync.sync()
})
}
return function(view, params) {
view.querySelector("form").addEventListener("submit", function(e) {
return saveUser(view), e.preventDefault(), !1
}), view.querySelector("#btnSelectSyncPath").addEventListener("click", function() {
require(["nativedirectorychooser"], function() {
NativeDirectoryChooser.chooseDirectory().then(function(path) {
path && (view.querySelector("#txtSyncPath").value = path)
})
})
}), view.addEventListener("viewshow", function() {
var page = this,
userId = getParameterByName("userId") || Dashboard.getCurrentUserId();
ApiClient.getUser(userId).then(function(user) {
loadForm(page, user)
}), appHost.supports("customsyncpath") ? page.querySelector(".fldSyncPath").classList.remove("hide") : page.querySelector(".fldSyncPath").classList.add("hide")
}), view.addEventListener("viewbeforehide", function() {
saveUser(this)
})
}
});