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

Migration of wizard to ES6 modules

This commit is contained in:
Cameron 2020-07-17 19:04:56 +01:00
parent a9246f8f39
commit c11977c9fe
6 changed files with 235 additions and 227 deletions

View file

@ -141,6 +141,11 @@
"src/controllers/dashboard/logs.js", "src/controllers/dashboard/logs.js",
"src/controllers/user/subtitles.js", "src/controllers/user/subtitles.js",
"src/controllers/dashboard/plugins/repositories.js", "src/controllers/dashboard/plugins/repositories.js",
"src/controllers/wizard/finish.js",
"src/controllers/wizard/remoteaccess.js",
"src/controllers/wizard/settings.js",
"src/controllers/wizard/start.js",
"src/controllers/wizard/user.js",
"src/elements/emby-tabs/emby-tabs.js", "src/elements/emby-tabs/emby-tabs.js",
"src/elements/emby-scroller/emby-scroller.js", "src/elements/emby-scroller/emby-scroller.js",
"src/elements/emby-radio/emby-radio.js", "src/elements/emby-radio/emby-radio.js",

View file

@ -1,7 +1,6 @@
define(['loading'], function (loading) { import loading from 'loading';
'use strict';
function onFinish() { function onFinish() {
loading.show(); loading.show();
ApiClient.ajax({ ApiClient.ajax({
url: ApiClient.getUrl('Startup/Complete'), url: ApiClient.getUrl('Startup/Complete'),
@ -10,9 +9,8 @@ define(['loading'], function (loading) {
loading.hide(); loading.hide();
window.location.href = 'index.html'; window.location.href = 'index.html';
}); });
} }
return function (view, params) { export default function (view, params) {
view.querySelector('.btnWizardNext').addEventListener('click', onFinish); view.querySelector('.btnWizardNext').addEventListener('click', onFinish);
}; }
});

View file

@ -1,10 +1,12 @@
define(['loading', 'emby-checkbox', 'emby-button', 'emby-select'], function (loading) { import loading from 'loading';
'use strict'; import 'emby-checkbox';
import 'emby-button';
import 'emby-select';
function save(page) { function save(page) {
loading.show(); loading.show();
var apiClient = ApiClient; const apiClient = ApiClient;
var config = {}; const config = {};
config.EnableRemoteAccess = page.querySelector('#chkRemoteAccess').checked; config.EnableRemoteAccess = page.querySelector('#chkRemoteAccess').checked;
config.EnableAutomaticPortMapping = page.querySelector('#chkEnableUpnp').checked; config.EnableAutomaticPortMapping = page.querySelector('#chkEnableUpnp').checked;
apiClient.ajax({ apiClient.ajax({
@ -15,19 +17,19 @@ define(['loading', 'emby-checkbox', 'emby-button', 'emby-select'], function (loa
loading.hide(); loading.hide();
navigateToNextPage(); navigateToNextPage();
}); });
} }
function navigateToNextPage() { function navigateToNextPage() {
Dashboard.navigate('wizardfinish.html'); Dashboard.navigate('wizardfinish.html');
} }
function onSubmit(e) { function onSubmit(e) {
save(this); save(this);
e.preventDefault(); e.preventDefault();
return false; return false;
} }
return function (view, params) { export default function (view, params) {
view.querySelector('.wizardSettingsForm').addEventListener('submit', onSubmit); view.querySelector('.wizardSettingsForm').addEventListener('submit', onSubmit);
view.addEventListener('viewshow', function () { view.addEventListener('viewshow', function () {
document.querySelector('.skinHeader').classList.add('noHomeButtonHeader'); document.querySelector('.skinHeader').classList.add('noHomeButtonHeader');
@ -35,5 +37,4 @@ define(['loading', 'emby-checkbox', 'emby-button', 'emby-select'], function (loa
view.addEventListener('viewhide', function () { view.addEventListener('viewhide', function () {
document.querySelector('.skinHeader').classList.remove('noHomeButtonHeader'); document.querySelector('.skinHeader').classList.remove('noHomeButtonHeader');
}); });
}; }
});

View file

@ -1,9 +1,11 @@
define(['loading', 'emby-checkbox', 'emby-button', 'emby-select'], function (loading) { import loading from 'loading';
'use strict'; import 'emby-checkbox';
import 'emby-button';
import 'emby-select';
function save(page) { function save(page) {
loading.show(); loading.show();
var apiClient = ApiClient; const apiClient = ApiClient;
apiClient.getJSON(apiClient.getUrl('Startup/Configuration')).then(function (config) { apiClient.getJSON(apiClient.getUrl('Startup/Configuration')).then(function (config) {
config.PreferredMetadataLanguage = page.querySelector('#selectLanguage').value; config.PreferredMetadataLanguage = page.querySelector('#selectLanguage').value;
config.MetadataCountryCode = page.querySelector('#selectCountry').value; config.MetadataCountryCode = page.querySelector('#selectCountry').value;
@ -16,62 +18,62 @@ define(['loading', 'emby-checkbox', 'emby-button', 'emby-select'], function (loa
navigateToNextPage(); navigateToNextPage();
}); });
}); });
} }
function populateLanguages(select, languages) { function populateLanguages(select, languages) {
var html = ''; let html = '';
html += "<option value=''></option>"; html += "<option value=''></option>";
for (var i = 0, length = languages.length; i < length; i++) { for (let i = 0, length = languages.length; i < length; i++) {
var culture = languages[i]; const culture = languages[i];
html += "<option value='" + culture.TwoLetterISOLanguageName + "'>" + culture.DisplayName + '</option>'; html += "<option value='" + culture.TwoLetterISOLanguageName + "'>" + culture.DisplayName + '</option>';
} }
select.innerHTML = html; select.innerHTML = html;
} }
function populateCountries(select, allCountries) { function populateCountries(select, allCountries) {
var html = ''; let html = '';
html += "<option value=''></option>"; html += "<option value=''></option>";
for (var i = 0, length = allCountries.length; i < length; i++) { for (let i = 0, length = allCountries.length; i < length; i++) {
var culture = allCountries[i]; const culture = allCountries[i];
html += "<option value='" + culture.TwoLetterISORegionName + "'>" + culture.DisplayName + '</option>'; html += "<option value='" + culture.TwoLetterISORegionName + "'>" + culture.DisplayName + '</option>';
} }
select.innerHTML = html; select.innerHTML = html;
} }
function reloadData(page, config, cultures, countries) { function reloadData(page, config, cultures, countries) {
populateLanguages(page.querySelector('#selectLanguage'), cultures); populateLanguages(page.querySelector('#selectLanguage'), cultures);
populateCountries(page.querySelector('#selectCountry'), countries); populateCountries(page.querySelector('#selectCountry'), countries);
page.querySelector('#selectLanguage').value = config.PreferredMetadataLanguage; page.querySelector('#selectLanguage').value = config.PreferredMetadataLanguage;
page.querySelector('#selectCountry').value = config.MetadataCountryCode; page.querySelector('#selectCountry').value = config.MetadataCountryCode;
loading.hide(); loading.hide();
} }
function reload(page) { function reload(page) {
loading.show(); loading.show();
var apiClient = ApiClient; const apiClient = ApiClient;
var promise1 = apiClient.getJSON(apiClient.getUrl('Startup/Configuration')); const promise1 = apiClient.getJSON(apiClient.getUrl('Startup/Configuration'));
var promise2 = apiClient.getCultures(); const promise2 = apiClient.getCultures();
var promise3 = apiClient.getCountries(); const promise3 = apiClient.getCountries();
Promise.all([promise1, promise2, promise3]).then(function (responses) { Promise.all([promise1, promise2, promise3]).then(function (responses) {
reloadData(page, responses[0], responses[1], responses[2]); reloadData(page, responses[0], responses[1], responses[2]);
}); });
} }
function navigateToNextPage() { function navigateToNextPage() {
Dashboard.navigate('wizardremoteaccess.html'); Dashboard.navigate('wizardremoteaccess.html');
} }
function onSubmit(e) { function onSubmit(e) {
save(this); save(this);
e.preventDefault(); e.preventDefault();
return false; return false;
} }
return function (view, params) { export default function (view, params) {
view.querySelector('.wizardSettingsForm').addEventListener('submit', onSubmit); view.querySelector('.wizardSettingsForm').addEventListener('submit', onSubmit);
view.addEventListener('viewshow', function () { view.addEventListener('viewshow', function () {
document.querySelector('.skinHeader').classList.add('noHomeButtonHeader'); document.querySelector('.skinHeader').classList.add('noHomeButtonHeader');
@ -80,5 +82,4 @@ define(['loading', 'emby-checkbox', 'emby-button', 'emby-select'], function (loa
view.addEventListener('viewhide', function () { view.addEventListener('viewhide', function () {
document.querySelector('.skinHeader').classList.remove('noHomeButtonHeader'); document.querySelector('.skinHeader').classList.remove('noHomeButtonHeader');
}); });
}; }
});

View file

@ -1,16 +1,18 @@
define(['jQuery', 'loading', 'emby-button', 'emby-select'], function ($, loading) { import $ from 'jQuery';
'use strict'; import loading from 'loading';
import 'emby-button';
import 'emby-select';
function loadPage(page, config, languageOptions) { function loadPage(page, config, languageOptions) {
$('#selectLocalizationLanguage', page).html(languageOptions.map(function (l) { $('#selectLocalizationLanguage', page).html(languageOptions.map(function (l) {
return '<option value="' + l.Value + '">' + l.Name + '</option>'; return '<option value="' + l.Value + '">' + l.Name + '</option>';
})).val(config.UICulture); })).val(config.UICulture);
loading.hide(); loading.hide();
} }
function save(page) { function save(page) {
loading.show(); loading.show();
var apiClient = ApiClient; const apiClient = ApiClient;
apiClient.getJSON(apiClient.getUrl('Startup/Configuration')).then(function (config) { apiClient.getJSON(apiClient.getUrl('Startup/Configuration')).then(function (config) {
config.UICulture = $('#selectLocalizationLanguage', page).val(); config.UICulture = $('#selectLocalizationLanguage', page).val();
apiClient.ajax({ apiClient.ajax({
@ -21,22 +23,22 @@ define(['jQuery', 'loading', 'emby-button', 'emby-select'], function ($, loading
Dashboard.navigate('wizarduser.html'); Dashboard.navigate('wizarduser.html');
}); });
}); });
} }
function onSubmit() { function onSubmit() {
save($(this).parents('.page')); save($(this).parents('.page'));
return false; return false;
} }
return function (view, params) { export default function (view, params) {
$('.wizardStartForm', view).on('submit', onSubmit); $('.wizardStartForm', view).on('submit', onSubmit);
view.addEventListener('viewshow', function () { view.addEventListener('viewshow', function () {
document.querySelector('.skinHeader').classList.add('noHomeButtonHeader'); document.querySelector('.skinHeader').classList.add('noHomeButtonHeader');
loading.show(); loading.show();
var page = this; const page = this;
var apiClient = ApiClient; const apiClient = ApiClient;
var promise1 = apiClient.getJSON(apiClient.getUrl('Startup/Configuration')); const promise1 = apiClient.getJSON(apiClient.getUrl('Startup/Configuration'));
var promise2 = apiClient.getJSON(apiClient.getUrl('Localization/Options')); const promise2 = apiClient.getJSON(apiClient.getUrl('Localization/Options'));
Promise.all([promise1, promise2]).then(function (responses) { Promise.all([promise1, promise2]).then(function (responses) {
loadPage(page, responses[0], responses[1]); loadPage(page, responses[0], responses[1]);
}); });
@ -44,5 +46,4 @@ define(['jQuery', 'loading', 'emby-button', 'emby-select'], function ($, loading
view.addEventListener('viewhide', function () { view.addEventListener('viewhide', function () {
document.querySelector('.skinHeader').classList.remove('noHomeButtonHeader'); document.querySelector('.skinHeader').classList.remove('noHomeButtonHeader');
}); });
}; }
});

View file

@ -1,23 +1,26 @@
define(['loading', 'globalize', 'dashboardcss', 'emby-input', 'emby-button', 'emby-button'], function (loading, globalize) { import loading from 'loading';
'use strict'; import globalize from 'globalize';
import 'dashboardcss';
import 'emby-input';
import 'emby-button';
function getApiClient() { function getApiClient() {
return ApiClient; return ApiClient;
} }
function nextWizardPage() { function nextWizardPage() {
Dashboard.navigate('wizardlibrary.html'); Dashboard.navigate('wizardlibrary.html');
} }
function onUpdateUserComplete(result) { function onUpdateUserComplete(result) {
console.debug('user update complete: ' + result); console.debug('user update complete: ' + result);
loading.hide(); loading.hide();
nextWizardPage(); nextWizardPage();
} }
function submit(form) { function submit(form) {
loading.show(); loading.show();
var apiClient = getApiClient(); const apiClient = getApiClient();
apiClient.ajax({ apiClient.ajax({
type: 'POST', type: 'POST',
data: { data: {
@ -26,10 +29,10 @@ define(['loading', 'globalize', 'dashboardcss', 'emby-input', 'emby-button', 'em
}, },
url: apiClient.getUrl('Startup/User') url: apiClient.getUrl('Startup/User')
}).then(onUpdateUserComplete); }).then(onUpdateUserComplete);
} }
function onSubmit(e) { function onSubmit(e) {
var form = this; const form = this;
if (form.querySelector('#txtManualPassword').value != form.querySelector('#txtPasswordConfirm').value) { if (form.querySelector('#txtManualPassword').value != form.querySelector('#txtPasswordConfirm').value) {
require(['toast'], function (toast) { require(['toast'], function (toast) {
@ -41,20 +44,20 @@ define(['loading', 'globalize', 'dashboardcss', 'emby-input', 'emby-button', 'em
e.preventDefault(); e.preventDefault();
return false; return false;
} }
function onViewShow() { function onViewShow() {
loading.show(); loading.show();
var page = this; const page = this;
var apiClient = getApiClient(); const apiClient = getApiClient();
apiClient.getJSON(apiClient.getUrl('Startup/User')).then(function (user) { apiClient.getJSON(apiClient.getUrl('Startup/User')).then(function (user) {
page.querySelector('#txtUsername').value = user.Name || ''; page.querySelector('#txtUsername').value = user.Name || '';
page.querySelector('#txtManualPassword').value = user.Password || ''; page.querySelector('#txtManualPassword').value = user.Password || '';
loading.hide(); loading.hide();
}); });
} }
return function (view, params) { export default function (view, params) {
view.querySelector('.wizardUserForm').addEventListener('submit', onSubmit); view.querySelector('.wizardUserForm').addEventListener('submit', onSubmit);
view.addEventListener('viewshow', function () { view.addEventListener('viewshow', function () {
document.querySelector('.skinHeader').classList.add('noHomeButtonHeader'); document.querySelector('.skinHeader').classList.add('noHomeButtonHeader');
@ -63,5 +66,4 @@ define(['loading', 'globalize', 'dashboardcss', 'emby-input', 'emby-button', 'em
document.querySelector('.skinHeader').classList.remove('noHomeButtonHeader'); document.querySelector('.skinHeader').classList.remove('noHomeButtonHeader');
}); });
view.addEventListener('viewshow', onViewShow); view.addEventListener('viewshow', onViewShow);
}; }
});