op-packages/luci-theme-material3/htdocs/luci-static/resources/view/material3/sysauth.js
2026-05-03 20:20:03 +08:00

45 lines
861 B
JavaScript

'use strict';
'require ui';
'require view';
return view.extend({
render() {
const form = document.querySelector('form');
const btn = document.querySelector('button');
const dlg = ui.showModal(
_('Authorization Required'),
Array.from(document.querySelectorAll('section > *')),
'login'
);
const overlay = document.getElementById('modal_overlay');
if (overlay)
overlay.classList.add('login-overlay');
form.addEventListener('keypress', (ev) => {
if (ev.key === 'Enter')
btn.click();
});
btn.addEventListener('click', () => {
dlg.querySelectorAll('*').forEach((node) => {
node.style.display = 'none';
});
dlg.appendChild(E('div', {
class: 'spinning'
}, _('Logging in…')));
form.submit();
});
document.querySelector('input[type="password"]').focus();
return '';
},
addFooter() {},
});