mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
continue jquery removal
This commit is contained in:
parent
2dba35a875
commit
5b0ece51d2
15 changed files with 692 additions and 595 deletions
|
@ -1,10 +1,11 @@
|
|||
define(['jQuery'], function ($) {
|
||||
define([], function () {
|
||||
|
||||
var LoginPage = {
|
||||
|
||||
showVisualForm: function (page) {
|
||||
$('.visualLoginForm', page).show();
|
||||
$('.manualLoginForm', page).hide();
|
||||
|
||||
page.querySelector('.visualLoginForm').classList.remove('hide');
|
||||
page.querySelector('.manualLoginForm').classList.add('hide');
|
||||
},
|
||||
|
||||
getLastSeenText: function (lastActivityDate) {
|
||||
|
@ -41,9 +42,8 @@
|
|||
|
||||
}, function (response) {
|
||||
|
||||
$('#pw', page).val('');
|
||||
$('#txtManualName', page).val('');
|
||||
$('#txtManualPassword', page).val('');
|
||||
page.querySelector('#txtManualName').value = '';
|
||||
page.querySelector('#txtManualPassword').value = '';
|
||||
|
||||
Dashboard.hideLoadingMsg();
|
||||
|
||||
|
@ -80,31 +80,21 @@
|
|||
}
|
||||
}
|
||||
|
||||
function onManualSubmit() {
|
||||
var page = $(this).parents('.page');
|
||||
|
||||
getApiClient().then(function (apiClient) {
|
||||
LoginPage.authenticateUserByName(page, apiClient, $('#txtManualName', page).val(), $('#txtManualPassword', page).val());
|
||||
});
|
||||
|
||||
// Disable default form submission
|
||||
return false;
|
||||
}
|
||||
|
||||
function showManualForm(context, showCancel, focusPassword) {
|
||||
$('.visualLoginForm', context).hide();
|
||||
$('.manualLoginForm', context).show();
|
||||
|
||||
context.querySelector('.manualLoginForm').classList.remove('hide');
|
||||
context.querySelector('.visualLoginForm').classList.add('hide');
|
||||
|
||||
if (focusPassword) {
|
||||
$('#txtManualPassword', context).focus();
|
||||
context.querySelector('#txtManualPassword').focus();
|
||||
} else {
|
||||
$('#txtManualName', context).focus();
|
||||
context.querySelector('#txtManualName').focus();
|
||||
}
|
||||
|
||||
if (showCancel) {
|
||||
$('.btnCancel', context).show();
|
||||
context.querySelector('.btnCancel').classList.remove('hide');
|
||||
} else {
|
||||
$('.btnCancel', context).hide();
|
||||
context.querySelector('.btnCancel').classList.add('hide');
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -163,32 +153,59 @@
|
|||
html += '</div>';
|
||||
}
|
||||
|
||||
var elem = $('#divUsers', context).html(html);
|
||||
context.querySelector('#divUsers').innerHTML = html;
|
||||
}
|
||||
|
||||
$('a', elem).on('click', function () {
|
||||
function parentWithClass(elem, className) {
|
||||
|
||||
var id = this.getAttribute('data-userid');
|
||||
var name = this.getAttribute('data-username');
|
||||
var haspw = this.getAttribute('data-haspw');
|
||||
while (!elem.classList || !elem.classList.contains(className)) {
|
||||
elem = elem.parentNode;
|
||||
|
||||
if (id == 'manual') {
|
||||
showManualForm(context, true);
|
||||
if (!elem) {
|
||||
return null;
|
||||
}
|
||||
else if (haspw == 'false') {
|
||||
LoginPage.authenticateUserByName(context, apiClient, name, '');
|
||||
} else {
|
||||
$('#txtManualName', context).val(name);
|
||||
$('#txtManualPassword', context).val('');
|
||||
showManualForm(context, true, true);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return elem;
|
||||
}
|
||||
|
||||
return function (view, params) {
|
||||
|
||||
var self = this;
|
||||
|
||||
$('.manualLoginForm', view).on('submit', onManualSubmit);
|
||||
view.querySelector('#divUsers').addEventListener('click', function(e) {
|
||||
var cardContent = parentWithClass(e.target, 'cardContent');
|
||||
|
||||
if (cardContent) {
|
||||
|
||||
var context = view;
|
||||
var id = cardContent.getAttribute('data-userid');
|
||||
var name = cardContent.getAttribute('data-username');
|
||||
var haspw = cardContent.getAttribute('data-haspw');
|
||||
|
||||
if (id == 'manual') {
|
||||
showManualForm(context, true);
|
||||
}
|
||||
else if (haspw == 'false') {
|
||||
LoginPage.authenticateUserByName(context, getApiClient(), name, '');
|
||||
} else {
|
||||
|
||||
context.querySelector('#txtManualName').value = name;
|
||||
context.querySelector('#txtManualPassword').value = '';
|
||||
showManualForm(context, true, true);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
view.querySelector('.manualLoginForm').addEventListener('submit', function (e) {
|
||||
getApiClient().then(function (apiClient) {
|
||||
LoginPage.authenticateUserByName(view, apiClient, view.querySelector('#txtManualName').value, view.querySelector('#txtManualPassword').value);
|
||||
});
|
||||
|
||||
e.preventDefault();
|
||||
// Disable default form submission
|
||||
return false;
|
||||
});
|
||||
|
||||
view.querySelector('.btnForgotPassword').addEventListener('click', function () {
|
||||
Dashboard.navigate('forgotpassword.html');
|
||||
|
@ -224,14 +241,14 @@
|
|||
|
||||
apiClient.getJSON(apiClient.getUrl('Branding/Configuration')).then(function (options) {
|
||||
|
||||
$('.disclaimer', view).html(options.LoginDisclaimer || '');
|
||||
view.querySelector('.disclaimer').innerHTML = options.LoginDisclaimer || '';
|
||||
});
|
||||
});
|
||||
|
||||
if (Dashboard.isConnectMode()) {
|
||||
$('.connectButtons', view).show();
|
||||
view.querySelector('.connectButtons').classList.remove('hide');
|
||||
} else {
|
||||
$('.connectButtons', view).hide();
|
||||
view.querySelector('.connectButtons').classList.add('hide');
|
||||
}
|
||||
});
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue