Files
auth_service_c/web/js/change_user.js
T
wt 155c259ea9
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-Make (push) Successful in 9s
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-CMake (push) Successful in 14s
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-Meson (push) Failing after 8s
added web and fix some problems
2025-08-27 17:00:57 +07:00

57 lines
2.3 KiB
JavaScript

const changeuserform = document.querySelector('.changeuserform')
const changeuserformbody = document.querySelector('.changeuserformbody')
const changeuserformusername = document.querySelector('#changeuserformusername')
const changeuserformemail = document.querySelector('#changeuserformemail')
const changeuserformgroup = document.querySelector('#changeuserformgroup')
const changeuserformissuperuser = document.querySelector('#changeuserformissuperuser')
const cancelchangeuser = document.querySelector("#cancelchangeuser")
let changedatauserid = "";
let userdata = "";
const change_user_data = async (userid) => {
changeuserform.classList.add('active')
changedatauserid = userid
const all_users = await fetch(routes.all_users(), {
method: 'POST',
body: `{"token":"${localStorage.getItem('token')}"}`
}).then(data => data.json()).then(jsondata => jsondata).catch((error) => {
notification(`Ошибка на сервере: ${error}`, "error")
})
userdata = all_users.find(usr => usr.id === userid)
changeuserformusername.value = userdata.username
changeuserformgroup.value = userdata.group
changeuserformissuperuser.checked = userdata.is_superuser === "1"
changeuserformemail.value = userdata.email
}
cancelchangeuser.addEventListener('click', (e) => {
e.preventDefault()
changeuserform.classList.remove('active')
})
changeuserformbody.addEventListener('submit', async (e) => {
e.preventDefault()
let request = {
token: localStorage.getItem('token'),
userid: changedatauserid,
username: changeuserformusername.value,
email: changeuserformemail.value,
is_superuser: changeuserformissuperuser.checked,
group: changeuserformgroup.value
};
const status = await fetch(routes.change_user(), {
method: 'PUT',
body: JSON.stringify(request)
}).then(data => data.json()).then(jsondata => jsondata).catch((error) => {
notification(`Ошибка на сервере: ${error}`, "error")
})
if (!status.error) {
notification("Данные пользователя успешно изменены", "success")
changeuserform.classList.remove('active')
await get_all_users()
} else {
notification(status.error, "error")
}
})