кнопка адмена

This commit is contained in:
neroduckale 2024-01-03 16:21:15 +05:00
parent 5c9d1989f5
commit b1c5e4c5a5
WARNING! Although there is a key with this ID in the database it does not verify this commit! This commit is SUSPICIOUS.
GPG key ID: 399E73062E1A3667
2 changed files with 64 additions and 31 deletions

View file

@ -3,21 +3,37 @@
<style> <style>
td, th { td, th {
padding: 5px 10px; padding: 5px 10px;
} }
.center { .center {
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
border-collapse: collapse; font-size: x-large;
border: 1px black; }
table, th, td {
border: 3px white solid;
border-collapse: collapse;
}
.admin {
margin-top: 50px;
border: 5px black solid;
background: white;
font-size: x-large;
}
.admin:hover {
background: black;
border: 5px white solid;
color: white;
transition: all;
transition-duration: 300ms;
} }
</style> </style>
Всего в таблице записей: <span id="count"></span>
<div> <div>
<table class="center" id="users"> <table class="center" id="users">
<tr><th>Айди</th><th>Никнейм</th><th>Масть</th></tr> <!--ряд с ячейками заголовков--> <tr><th>Айди</th><th>Никнейм</th><th>Масть</th></tr> <!--ряд с ячейками заголовков-->
<tr class="loading"><td>Loading...</td><td>Loading...</td><td>Loading...</td></tr> <!--ряд с ячейками тела таблицы--> <tr id="loading"><td>Loading...</td><td>Loading...</td><td>Loading...</td></tr> <!--ряд с ячейками тела таблицы-->
</table> </table>
<button class="admin" onclick="admin()" id="admin">РЕЖИМ АДМИНА</button>
</div> </div>
<script src="~/js/site.js"></script> <script src="~/js/site.js"></script>

View file

@ -1,5 +1,5 @@
console.log("Start!") const loading = document.getElementById("loading");
alert("startaed!") let loadingLive = true
async function getUsers() { async function getUsers() {
// отправляет запрос и получаем ответ // отправляет запрос и получаем ответ
const response = await fetch("/api/users", { const response = await fetch("/api/users", {
@ -10,29 +10,46 @@ async function getUsers() {
if (response.ok === true) { if (response.ok === true) {
// получаем данные // получаем данные
const users = await response.json(); const users = await response.json();
const table = document.querySelector("#users"); const table = document.getElementById("users");
const count = document.querySelector("#count") if (loadingLive) {
count.outerHTML = "1"; loading.remove();
document.querySelector("#loading").destroy(); loadingLive = false
}
users.forEach(user => table.append(create(user)));
return users;
} }
} }
// Получение одного пользователя
async function getUser(id) { function create(user) {
const response = await fetch(`/api/users/${id}`, { let tr = document.createElement("tr");
method: "GET", let tdName = document.createElement("td");
headers: { "Accept": "application/json" } let tdMast = document.createElement("td");
}); let tdId = document.createElement("td");
if (response.ok === true) { let tdBut = document.createElement("td");
const user = await response.json(); let ButtDel = document.createElement("button");
document.getElementById("userId").value = user.id; let ButtEdit = document.createElement("button");
document.getElementById("userName").value = user.nickname; tdId.append(user.id);
document.getElementById("userMast").value = user.mast; tdName.append(user.nickname);
} tdMast.append(user.mast);
else { ButtDel.append("УДАЛИТЬ");
// если произошла ошибка, получаем сообщение об ошибке ButtEdit.append("ИЗМЕНИТЬ");
const error = await response.json(); tdBut.append(ButtDel, ButtEdit);
console.log(error.message); // и выводим его на консоль tdBut.id = "ADMINBUT" + user.id;
} tdBut.className = "ADMINBUT"
tdBut.style.display = "none";
tr.append(tdId, tdName, tdMast, tdBut);
return tr;
} }
// Добавление пользователя // Добавление пользователя
await getUsers(); console.log(getUsers());
console.log("loaded!");
function admin() {
document.body.style.background = "black";
document.getElementById("admin").remove();
let adminbuttons = document.getElementsByClassName("ADMINBUT");
for (let item of adminbuttons) {
item.style.display = "inline";
}
}