obscreen/data/www/js/auth/users.js
2024-08-04 17:38:30 +02:00

44 lines
1.6 KiB
JavaScript

jQuery(document).ready(function ($) {
const main = function () {
$('.user-token-reveal').each(function() {
updateTokenReveal($(this), false);
});
};
$(document).on('click', '.user-add', function () {
showModal('modal-user-add');
$('.modal-user-add input[type=text]:eq(0)').focus().select();
});
$(document).on('click', '.user-edit', function () {
const user = JSON.parse($(this).parents('.user-item:eq(0)').attr('data-entity'));
showModal('modal-user-edit');
$('.modal-user-edit input:visible:eq(0)').focus().select();
$('#user-edit-enabled').prop('checked', user.enabled);
$('#user-edit-username').val(user.username);
$('#user-edit-id').val(user.id);
});
const updateTokenReveal = function($btn, revealState) {
const $holder = $btn.parents('.user-item:eq(0)');
const $input = $holder.find('.input-token:eq(0)');
const $icon = $btn.find('i:eq(0)');
const isActive = revealState !== undefined ? !revealState : $icon.hasClass('fa-eye-slash');
if (isActive) {
$icon.removeClass('fa-eye-slash').addClass('fa-eye');
$btn.removeClass('btn-neutral').addClass('btn-other');
$input.val($input.attr('data-private'));
} else {
$icon.removeClass('fa-eye').addClass('fa-eye-slash');
$btn.removeClass('btn-other').addClass('btn-neutral');
$input.val($input.attr('data-public'));
}
};
$(document).on('click', '.user-token-reveal', function () {
updateTokenReveal($(this));
});
main();
});