53 lines
2.0 KiB
JavaScript
53 lines
2.0 KiB
JavaScript
/**
|
|
* @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org>
|
|
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
|
*/
|
|
|
|
(() => {
|
|
|
|
document.addEventListener('DOMContentLoaded', () => {
|
|
var _document$getElementB;
|
|
const elCodeField = document.getElementById('users-mfa-code');
|
|
const elValidateButton = document.getElementById('users-mfa-captive-button-submit');
|
|
const elToolbarButton = (_document$getElementB = document.getElementById('toolbar-user-mfa-submit')) == null ? void 0 : _document$getElementB.querySelector('button');
|
|
|
|
// Focus the code field. If the code field is hidden, focus the submit button (useful e.g. for WebAuthn)
|
|
if (elCodeField && elCodeField.style.display !== 'none' && !elCodeField.classList.contains('visually-hidden') && elCodeField.type !== 'hidden') {
|
|
elCodeField.focus();
|
|
} else {
|
|
if (elValidateButton) {
|
|
elValidateButton.focus();
|
|
}
|
|
if (elToolbarButton) {
|
|
elToolbarButton.focus();
|
|
}
|
|
}
|
|
|
|
// Capture the admin toolbar buttons, make them click the inline buttons
|
|
document.querySelectorAll('.button-user-mfa-submit').forEach(elButton => {
|
|
elButton.addEventListener('click', e => {
|
|
e.preventDefault();
|
|
elValidateButton.click();
|
|
});
|
|
});
|
|
document.querySelectorAll('.button-user-mfa-logout').forEach(elButton => {
|
|
elButton.addEventListener('click', e => {
|
|
e.preventDefault();
|
|
const elLogout = document.getElementById('users-mfa-captive-button-logout');
|
|
if (elLogout) {
|
|
elLogout.click();
|
|
}
|
|
});
|
|
});
|
|
document.querySelectorAll('.button-user-mfa-choose-another').forEach(elButton => {
|
|
elButton.addEventListener('click', e => {
|
|
e.preventDefault();
|
|
const elChooseAnother = document.getElementById('users-mfa-captive-form-choose-another');
|
|
if (elChooseAnother) {
|
|
elChooseAnother.click();
|
|
}
|
|
});
|
|
});
|
|
});
|
|
})();
|