diff --git a/nrdkwebsite/Pages/users.cshtml b/nrdkwebsite/Pages/users.cshtml
index 6435bed..cfe3133 100644
--- a/nrdkwebsite/Pages/users.cshtml
+++ b/nrdkwebsite/Pages/users.cshtml
@@ -1,6 +1,6 @@
@page
@model Users
-
+@{ViewData["Title"] = "users";}
-
+
Айди | Никнейм | Масть |
Loading... | Loading... | Loading... |
-
+ @{
+ if (ViewData["Admin"] == "true")
+ {
+
+ }
+ }
-
+@{
+ if (ViewData["Admin"] == "true")
+ {
+
+
+ }
+ }
\ No newline at end of file
diff --git a/nrdkwebsite/Pages/users.cshtml.cs b/nrdkwebsite/Pages/users.cshtml.cs
index 01bcfde..8898873 100644
--- a/nrdkwebsite/Pages/users.cshtml.cs
+++ b/nrdkwebsite/Pages/users.cshtml.cs
@@ -4,8 +4,11 @@ namespace nrdkwebsite.Pages;
public class Users : PageModel
{
- public void OnGet()
+ public void OnGet(string user)
{
-
+ if (user == "admin")
+ {
+ ViewData["Admin"] = "true";
+ }
}
}
\ No newline at end of file
diff --git a/nrdkwebsite/wwwroot/js/admin.js b/nrdkwebsite/wwwroot/js/admin.js
new file mode 100644
index 0000000..c2e0c60
--- /dev/null
+++ b/nrdkwebsite/wwwroot/js/admin.js
@@ -0,0 +1,60 @@
+function admin() {
+ document.body.style.background = "black";
+ document.getElementById("admin").remove();
+ let adminbuttons = document.getElementsByClassName("ADMINBUT");
+ for (let item of adminbuttons) {
+ item.style.display = "";
+ }
+ let createuser = document.createElement("button");
+ createuser.append("НОВЫЙ ПОЛЬЗОВАТЕЛЬ");
+ createuser.className = "admin";
+ createuser.addEventListener("click", createclick);
+ document.getElementById("divine").append(createuser);
+}
+async function deleteUser(id) {
+ const response = await fetch(`/api/users/${id}`, {
+ method: "DELETE",
+ headers: { "Accept": "application/json" }
+ });
+ if (response.ok === true) {
+ const user = await response.json();
+ document.getElementById(user.id).remove();
+ }
+ else {
+ const error = await response.json();
+ console.log(error.message);
+ }
+}
+
+function createclick() {
+ let form = document.getElementById("newuser");
+ form.style.visibility = "visible";
+}
+
+async function createUser(nickname, mast) {
+
+ const response = await fetch("api/users", {
+ method: "POST",
+ headers: { "Accept": "application/json", "Content-Type": "application/json" },
+ body: JSON.stringify({
+ nickname: nickname,
+ mast: mast
+ })
+ });
+ if (response.ok === true) {
+ const user = await response.json();
+ document.getElementById("users").append(createrow(user, false));
+ }
+ else {
+ const error = await response.json();
+ console.log(error.message);
+ }
+}
+function neworupdate() {
+ let nickname = document.getElementById("nickname");
+ let mast = document.getElementById("mast");
+
+ createUser(nickname.value, mast.value);
+ nickname.value = "";
+ mast.value = "";
+}
\ No newline at end of file
diff --git a/nrdkwebsite/wwwroot/js/site.js b/nrdkwebsite/wwwroot/js/site.js
index df8d396..e67ecc7 100644
--- a/nrdkwebsite/wwwroot/js/site.js
+++ b/nrdkwebsite/wwwroot/js/site.js
@@ -1,5 +1,5 @@
const loading = document.getElementById("loading");
-let loadingLive = true
+let loadingLive = true;
async function getUsers() {
// отправляет запрос и получаем ответ
const response = await fetch("/api/users", {
@@ -15,41 +15,31 @@ async function getUsers() {
loading.remove();
loadingLive = false
}
- users.forEach(user => table.append(create(user)));
+ users.forEach(user => table.append(createrow(user, true)));
return users;
}
}
-
-function create(user) {
+function createrow(user, hidebut) {
let tr = document.createElement("tr");
let tdName = document.createElement("td");
let tdMast = document.createElement("td");
let tdId = document.createElement("td");
let tdBut = document.createElement("td");
let ButtDel = document.createElement("button");
- let ButtEdit = document.createElement("button");
tdId.append(user.id);
tdName.append(user.nickname);
tdMast.append(user.mast);
+ ButtDel.className = "AdminButtons";
ButtDel.append("УДАЛИТЬ");
- ButtEdit.append("ИЗМЕНИТЬ");
- tdBut.append(ButtDel, ButtEdit);
- tdBut.id = "ADMINBUT" + user.id;
- tdBut.className = "ADMINBUT"
- tdBut.style.display = "none";
+ ButtDel.addEventListener("click", async() => await deleteUser(user.id));
+ tdBut.append(ButtDel);
+ tdBut.className = "ADMINBUT";
+ if (hidebut) {
+ tdBut.style.display = "none";
+ }
tr.append(tdId, tdName, tdMast, tdBut);
+ tr.id = user.id;
return tr;
}
-// Добавление пользователя
-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";
- }
-}
\ No newline at end of file
+getUsers();
\ No newline at end of file