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

59 lines
1.5 KiB
JavaScript
Raw Normal View History

2020-07-26 23:57:28 -05:00
import loading from 'loading';
import toast from 'toast';
import globalize from 'globalize';
2020-07-26 23:57:28 -05:00
2020-09-10 15:04:06 -05:00
const unavailable = 'Unavailable';
const available = 'Available';
const active = 'Active';
let page;
export default function(view) {
view.addEventListener('viewshow', function () {
page = this;
2020-07-26 23:57:28 -05:00
loading.show();
2020-09-10 15:04:06 -05:00
page.querySelector('#btnQuickConnectSubmit').onclick = onSubmit;
updatePage();
});
}
function loadPage(status) {
2020-09-16 04:20:00 +09:00
const check = status === available || status === active;
2020-09-10 15:04:06 -05:00
page.querySelector('#quickConnectStatus').textContent = status.toLocaleLowerCase();
page.querySelector('#chkQuickConnectAvailable').checked = check;
loading.hide();
}
function onSubmit() {
loading.show();
2020-09-16 04:20:00 +09:00
const newStatus = page.querySelector('#chkQuickConnectAvailable').checked ? available : unavailable;
2020-09-10 15:04:06 -05:00
2020-09-16 04:20:00 +09:00
const url = ApiClient.getUrl('/QuickConnect/Available?Status=' + newStatus);
2020-09-10 15:04:06 -05:00
ApiClient.ajax({
type: 'POST',
url: url
}, true).then(() => {
toast(globalize.translate('SettingsSaved'));
setTimeout(updatePage, 500);
return true;
}).catch((e) => {
console.error('Unable to set quick connect status. error:', e);
});
loading.hide();
return false;
}
function updatePage() {
ApiClient.getQuickConnect('Status').then((response) => {
loadPage(response);
return true;
}).catch((e) => {
console.error('Unable to get quick connect status. error:', e);
});
}