fixes
This commit is contained in:
		| @ -7,7 +7,7 @@ | ||||
|         display: flex; | ||||
|         justify-content: space-between; | ||||
|         text-align: center; | ||||
|         margin: 20px auto; | ||||
|         margin: 0px auto; | ||||
|         padding: 10px; | ||||
|         background-color:cornsilk; | ||||
|     } | ||||
| @ -27,20 +27,30 @@ | ||||
|         list-style: none; | ||||
|         height: 320px; | ||||
|     } | ||||
|     #find_user_btns{ | ||||
|         /* display: flex; */ | ||||
|         margin: auto 0px; | ||||
|         /* height: 25px; */ | ||||
|     } | ||||
| </style> | ||||
|  | ||||
| <h1><%=lang("users")%></h1> | ||||
| <div style="display: flex;justify-content: space-between;"> | ||||
|     <h1>пользователи</h1> | ||||
|     <div id="find_user_btns"> | ||||
|         <button onclick="load_users_data(users_from,true);">найти по имени</button> | ||||
|         <button onclick="load_users_data(users_from)">очистить</button> | ||||
|     </div> | ||||
| </div> | ||||
| <section id="users_section"> | ||||
|     <div style="display: flex;justify-content: space-between;margin: auto;"> | ||||
|         <div style="display: flex;"><h1><%= lang("total") %>: </h1> <h1 id="users_count">0</h1></div> | ||||
|         <div style="display: flex;margin: auto 0px;"><%=lang("from")%> <div id="users_from">0</div> <%=lang("to")%> <div id="users_to">10</div></div> | ||||
|         <div style="margin: auto 0px;"><button onclick="if(users_from-load_interval>=0){users_from-=load_interval;load_users_data(users_from);}">< 10 <%= lang("back") %></button></div> | ||||
|         <div style="margin: auto 0px;"><button onclick="users_from+=load_interval;load_users_data(users_from);"><%= lang("next") %> 10 ></button></div> | ||||
|         <div style="display: flex;"><h1>всего: </h1> <h1 id="users_count">0</h1></div> | ||||
|         <div style="display: flex;margin: auto 0px;">с <div id="users_from">0</div> по <div id="users_to">10</div></div> | ||||
|         <div style="margin: auto 0px;"><button onclick="if(users_from-load_interval>=0){users_from-=load_interval;load_users_data(users_from);}">< 10 назад</button></div> | ||||
|         <div style="margin: auto 0px;"><button onclick="users_from+=load_interval;load_users_data(users_from);">даллее ></button></div> | ||||
|     </div> | ||||
|     <div> | ||||
|         <li id="first_user"><div><%= lang("login") %></div><div><%= lang("privileges") %></div><div><%= lang("edit") %></div></li> | ||||
|         <ul id="user_list"> | ||||
|         </ul> | ||||
|         <li id="first_user"><div>логин</div><div>превилегии</div><div>функции</div></li> | ||||
|         <ul id="user_list"></ul> | ||||
|     </div> | ||||
| </section> | ||||
|  | ||||
| @ -49,54 +59,53 @@ | ||||
|     let users_from = 0; | ||||
|     let load_interval = 5; | ||||
|     load_users_data(users_from); | ||||
|     function load_users_data(from,to){ | ||||
|     function load_users_data(from,by_name=false){ | ||||
|         // if(to == "forward") {users_from+=load_interval;} | ||||
|         // else if(to == "back") {users_from-=load_interval;} | ||||
|         document.getElementById("user_list").innerHTML = ""; | ||||
|         document.getElementById("users_from").innerText = from; | ||||
|         document.getElementById("users_to").innerText = from+load_interval; | ||||
|         $.post( "/admin/users/get",{from:from,load_interval:load_interval}) | ||||
|         .done(function( res ) { | ||||
|             // console.log("serv reg"); | ||||
|             if(res["out"] == "good"){ | ||||
|                 // console.log(res["body"]); | ||||
|                 document.getElementById("users_count").innerText = res["count"]; | ||||
|                 res["body"].forEach(user => { | ||||
|                     let user_sec = document.createElement("li"); | ||||
|                     user_sec.id = `user_${user["id"]}`; | ||||
|  | ||||
|                     let user_name = document.createElement("div"); | ||||
|                     user_name.id = `login_${user["id"]}`; | ||||
|                     user_name.innerText = user["login"]; | ||||
|  | ||||
|                     let user_pass = document.createElement("div"); | ||||
|                     user_pass.id = `pass_${user["id"]}`; | ||||
|                     user_pass.innerText = user["pass"]; | ||||
|                     user_pass.style.display = "none"; | ||||
|  | ||||
|                     let user_prevs = document.createElement("div"); | ||||
|                     user_prevs.id = `admin_${user["id"]}`; | ||||
|                     user_prevs.innerText = Boolean(user["admin"]); | ||||
|  | ||||
|                     let user_buttons = document.createElement("button"); | ||||
|                     user_buttons.id = "user_buttons";  | ||||
|                     user_buttons.innerText = "<%=lang('edit')%>";  | ||||
|                     user_buttons.classList.add(user["id"]);  | ||||
|                     user_buttons.classList.add("menu_btn");  | ||||
|  | ||||
|                     user_sec.append(user_pass); | ||||
|                     user_sec.append(user_name); | ||||
|                     user_sec.append(user_prevs); | ||||
|                     user_sec.append(user_buttons); | ||||
|  | ||||
|                     document.getElementById("user_list").append(user_sec); | ||||
|         if(!by_name){ | ||||
|             $.post( "/admin/users/get",{from:from,load_interval:load_interval}) | ||||
|             .done(function( res ) { | ||||
|                 if(res["out"] == "good"){ | ||||
|                     document.getElementById("users_count").innerText = res["count"]; | ||||
|                     res["body"].forEach(user => { | ||||
|                         let user_sec = document.createElement("li");user_sec.id = `user_${user["id"]}`; | ||||
|                         let user_name = document.createElement("div");user_name.id = `login_${user["id"]}`;user_name.innerText = user["login"]; | ||||
|                         let user_pass = document.createElement("div");user_pass.id = `pass_${user["id"]}`;user_pass.innerText = user["pass"];user_pass.style.display = "none"; | ||||
|                         let user_prevs = document.createElement("div");user_prevs.id = `admin_${user["id"]}`;user_prevs.innerText = Boolean(user["admin"]); | ||||
|                         let user_buttons = document.createElement("button");user_buttons.id = "user_buttons"; user_buttons.innerText = "изменить"; user_buttons.classList.add(user["id"]); user_buttons.classList.add("menu_btn");  | ||||
|              | ||||
|                         user_sec.append(user_pass);user_sec.append(user_name);user_sec.append(user_prevs);user_sec.append(user_buttons); | ||||
|                         document.getElementById("user_list").append(user_sec); | ||||
|                     }); | ||||
|                 } | ||||
|                 else if (res["out"] == "bad"){ | ||||
|                      | ||||
|                 } | ||||
|             }); | ||||
|         } | ||||
|         else{ | ||||
|             let login = ask("имя"); | ||||
|             if (login != ""){ | ||||
|                 $.post( "/admin/users/find",{login:login,from:from,load_interval:load_interval}) | ||||
|                 .done(function( res ) { | ||||
|                     if(res["out"] == "good"){ | ||||
|                         res["body"].forEach(user => { | ||||
|                             let user_sec = document.createElement("li");user_sec.id = `user_${user["id"]}`; | ||||
|                             let user_name = document.createElement("div");user_name.id = `login_${user["id"]}`;user_name.innerText = user["login"]; | ||||
|                             let user_pass = document.createElement("div");user_pass.id = `pass_${user["id"]}`;user_pass.innerText = user["pass"];user_pass.style.display = "none"; | ||||
|                             let user_prevs = document.createElement("div");user_prevs.id = `admin_${user["id"]}`;user_prevs.innerText = Boolean(user["admin"]); | ||||
|                             let user_buttons = document.createElement("button");user_buttons.id = "user_buttons"; user_buttons.innerText = "изменить"; user_buttons.classList.add(user["id"]); user_buttons.classList.add("menu_btn");  | ||||
|                  | ||||
|                             user_sec.append(user_pass);user_sec.append(user_name);user_sec.append(user_prevs);user_sec.append(user_buttons); | ||||
|                             document.getElementById("user_list").append(user_sec); | ||||
|                         }); | ||||
|                     } | ||||
|                 }); | ||||
|                 // document.getElementById("reg_response").innerHTML = `user ${login} successfully registered `; | ||||
|             } | ||||
|             else if (res["out"] == "bad"){ | ||||
|  | ||||
|             } | ||||
|         }); | ||||
|         } | ||||
|     } | ||||
|     function user_edit(key){ | ||||
|         let user = document.getElementById("user_edit_menu"); | ||||
| @ -107,7 +116,7 @@ | ||||
|         let value = null; | ||||
|  | ||||
|         if(key!="admin") {value = ask(key,document.getElementById(`${key}_${id}`).innerText)} | ||||
|         else if (confirm(`<%=lang('are you sure you want to change')%> <%=lang('admin privileges')%> <%=lang('for')%> ${login} <%=lang("to the")%> ${!admin}?`) == true){value = (!admin)}; | ||||
|         else if (confirm(`вы точно хотите изменить привелегии пользователя ${login} на ${!admin}?`) == true){value = (!admin)}; | ||||
|         if(value != null){ | ||||
|             $.post( "/admin/users/edit",{key:key,value:value,id:id,login:login}) | ||||
|             .done(function( res ) { | ||||
| @ -125,8 +134,8 @@ | ||||
|         let user = document.getElementById("user_edit_menu"); | ||||
|         let id = user.getAttribute("login_id"); | ||||
|         let login = user.getAttribute("login_name"); | ||||
|         if(confirm(`<%= lang("are you sure you want to delete user") %> ${login}?`) == true){ | ||||
|             $.post( "/admin/users/del/user",{login:login,id:id}) | ||||
|         if(confirm(`вы точно хотите удалить пользователя ${login}?`) == true){ | ||||
|             $.post( "/admin/users/delete",{login:login,id:id}) | ||||
|             .done(function( res ) { | ||||
|                 if(res["out"] == "good"){ | ||||
|                     load_users_data(users_from); | ||||
| @ -135,29 +144,10 @@ | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     let user_edit_menu = document.createElement("div"); | ||||
|     user_edit_menu.id = "user_edit_menu";  | ||||
|     user_edit_menu.classList.add("cmenu");  | ||||
|  | ||||
|     let user_chenge_name = document.createElement("button"); | ||||
|     user_chenge_name.innerHTML = "<%= lang('change login') %>";  | ||||
|     user_chenge_name.setAttribute("onclick","user_edit('login')");  | ||||
|  | ||||
|     let user_chenge_pass = document.createElement("button"); | ||||
|     user_chenge_pass.innerHTML = "<%= lang('change password') %>";  | ||||
|     user_chenge_pass.setAttribute("onclick","user_edit('pass')");  | ||||
|  | ||||
|     let user_chenge_prevs = document.createElement("button"); | ||||
|     user_chenge_prevs.innerHTML = "<%= lang('change privileges') %>"; | ||||
|     user_chenge_prevs.setAttribute("onclick","user_edit('admin')");  | ||||
|  | ||||
|     let user_delete = document.createElement("button"); | ||||
|     user_delete.innerHTML = "<%= lang('delete user') %>"; | ||||
|     user_delete.setAttribute("onclick","user_del()");  | ||||
|  | ||||
|     user_edit_menu.append(user_chenge_name); | ||||
|     user_edit_menu.append(user_chenge_pass); | ||||
|     user_edit_menu.append(user_chenge_prevs); | ||||
|     user_edit_menu.append(user_delete); | ||||
|     document.body.append(user_edit_menu); | ||||
|     let user_edit_menu = document.createElement("div");user_edit_menu.id = "user_edit_menu"; user_edit_menu.classList.add("cmenu");  | ||||
|     let user_chenge_name = document.createElement("button");user_chenge_name.innerHTML = "именить логин"; user_chenge_name.setAttribute("onclick","user_edit('login')");  | ||||
|     let user_chenge_pass = document.createElement("button");user_chenge_pass.innerHTML = "изменить пароль"; user_chenge_pass.setAttribute("onclick","user_edit('pass')");  | ||||
|     let user_chenge_prevs = document.createElement("button");user_chenge_prevs.innerHTML = "сменить привелегии";user_chenge_prevs.setAttribute("onclick","user_edit('admin')");  | ||||
|     let user_delete = document.createElement("button");user_delete.innerHTML = "удалить пользователя";user_delete.setAttribute("onclick","user_del()");  | ||||
|     user_edit_menu.append(user_chenge_name);user_edit_menu.append(user_chenge_pass);user_edit_menu.append(user_chenge_prevs);user_edit_menu.append(user_delete);document.body.append(user_edit_menu); | ||||
| </script> | ||||
|  | ||||
| @ -1,23 +1,23 @@ | ||||
| <style> | ||||
|     .main_sec{ | ||||
|     .user_reg_form{ | ||||
|         margin: auto; | ||||
|         /* display: flex; */ | ||||
|         text-align: center; | ||||
|     } | ||||
| </style> | ||||
| <h1><%= lang("user registration") %></h1> | ||||
| <div class="main_sec"> | ||||
| <h1>регистрация пользователя</h1> | ||||
| <form action="#" class="user_reg_form"> | ||||
|     <div> | ||||
|         <input type="text" id="login" name="login" value="" placeholder="<%= lang("login") %>"> | ||||
|         <input type="password" id="pass" name="pass" value="" placeholder="<%= lang("password") %>"> | ||||
|         <button onclick='reg();'><%= lang("register") %></button> | ||||
|         <input type="text" id="login" name="login" value="" placeholder="логин"> | ||||
|         <input type="password" id="pass" name="pass" value="" placeholder="пароль"> | ||||
|         <input type="submit" onclick='reg();' value="зарегистрировать"> | ||||
|     </div> | ||||
|     <div> | ||||
|         <label for="admin_check"><%= lang("admin") %></label> | ||||
|         <label for="admin_check">админ. привелегии</label> | ||||
|         <input type="checkbox" name="admin" value='false' id="admin_check"> | ||||
|     </div> | ||||
|     <div id="reg_response"></div> | ||||
| </div> | ||||
| </form> | ||||
|  | ||||
| <script> | ||||
|         function reg(){ | ||||
| @ -27,18 +27,20 @@ | ||||
|             let admin = document.getElementById("admin_check").checked; | ||||
|             // console.log(login,pass,admin); | ||||
|             // console.log("cl reg"); | ||||
|             $.post( "/admin/users/reg", { login:login,pass:pass,admin:admin }) | ||||
|             .done(function( res ) { | ||||
|                 // console.log("serv reg"); | ||||
|                 if(res["out"] == "good"){ | ||||
|                     // console.log(res["body"]); | ||||
|                     document.getElementById("reg_response").innerHTML = `user ${login} successfully registered `; | ||||
|                     load_users_data(users_from); | ||||
|             if(login != ""&&pass!=""){ | ||||
|                 $.post( "/admin/users/new", { login:login,pass:pass,admin:admin }) | ||||
|                 .done(function( res ) { | ||||
|                     // console.log("serv reg"); | ||||
|                     if(res["out"] == "good"){ | ||||
|                         // console.log(res["body"]); | ||||
|                         document.getElementById("reg_response").innerHTML = `user ${login} successfully registered `; | ||||
|                         load_users_data(users_from); | ||||
|  | ||||
|                 } | ||||
|                 else if (res["out"] == "bad"){ | ||||
|                     document.getElementById("reg_response").innerHTML = "cannot register user "+login+" already in use"; | ||||
|                 } | ||||
|             }); | ||||
|                     } | ||||
|                     else if (res["out"] == "bad"){ | ||||
|                         document.getElementById("reg_response").innerHTML = "cannot register user "+login+" already in use"; | ||||
|                     } | ||||
|                 }); | ||||
|             } | ||||
|         } | ||||
| </script> | ||||
		Reference in New Issue
	
	Block a user