jellyfish-web/src/controllers/wizard/user.js

68 lines
2.1 KiB
JavaScript
Raw Normal View History

2020-05-04 12:44:12 +02:00
define(['loading', 'globalize', 'dashboardcss', 'emby-input', 'emby-button', 'emby-button'], function (loading, globalize) {
'use strict';
2018-10-23 01:05:09 +03:00
function getApiClient() {
2019-03-22 12:14:41 -07:00
return ApiClient;
2018-10-23 01:05:09 +03:00
}
function nextWizardPage() {
2020-05-04 12:44:12 +02:00
Dashboard.navigate('wizardlibrary.html');
2018-10-23 01:05:09 +03:00
}
function onUpdateUserComplete(result) {
2020-05-04 12:44:12 +02:00
console.debug('user update complete: ' + result);
2019-03-22 12:14:41 -07:00
loading.hide();
nextWizardPage();
2018-10-23 01:05:09 +03:00
}
function submit(form) {
loading.show();
var apiClient = getApiClient();
apiClient.ajax({
2020-05-04 12:44:12 +02:00
type: 'POST',
2018-10-23 01:05:09 +03:00
data: {
2020-05-04 12:44:12 +02:00
Name: form.querySelector('#txtUsername').value,
Password: form.querySelector('#txtManualPassword').value
2018-10-23 01:05:09 +03:00
},
2020-05-04 12:44:12 +02:00
url: apiClient.getUrl('Startup/User')
2019-03-22 12:14:41 -07:00
}).then(onUpdateUserComplete);
2018-10-23 01:05:09 +03:00
}
function onSubmit(e) {
var form = this;
2019-10-08 01:29:20 +03:00
2020-05-04 12:44:12 +02:00
if (form.querySelector('#txtManualPassword').value != form.querySelector('#txtPasswordConfirm').value) {
require(['toast'], function (toast) {
toast(globalize.translate('PasswordMatchError'));
});
} else {
submit(form);
}
2019-10-08 01:29:20 +03:00
e.preventDefault();
return false;
2018-10-23 01:05:09 +03:00
}
function onViewShow() {
loading.show();
2019-03-22 12:14:41 -07:00
var page = this;
var apiClient = getApiClient();
2020-05-04 12:44:12 +02:00
apiClient.getJSON(apiClient.getUrl('Startup/User')).then(function (user) {
page.querySelector('#txtUsername').value = user.Name || '';
page.querySelector('#txtManualPassword').value = user.Password || '';
loading.hide();
2019-10-08 01:29:20 +03:00
});
2018-10-23 01:05:09 +03:00
}
2019-10-08 01:29:20 +03:00
return function (view, params) {
2020-05-04 12:44:12 +02:00
view.querySelector('.wizardUserForm').addEventListener('submit', onSubmit);
view.addEventListener('viewshow', function () {
document.querySelector('.skinHeader').classList.add('noHomeButtonHeader');
2019-03-22 12:14:41 -07:00
});
2020-05-04 12:44:12 +02:00
view.addEventListener('viewhide', function () {
document.querySelector('.skinHeader').classList.remove('noHomeButtonHeader');
2019-03-22 12:14:41 -07:00
});
2020-05-04 12:44:12 +02:00
view.addEventListener('viewshow', onViewShow);
2019-10-08 01:29:20 +03:00
};
2018-12-11 18:54:50 -05:00
});