Spaces:
Build error
Build error
File size: 3,586 Bytes
752c636 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 |
function add_request_row(username,request_message)
{
//#access_requests_table
// <tr>
// <td>abc</td>
// <td>Please give access :(</td>
//
// <td>
// <button class="accept"><i class="fa-solid fa-check"></i></button>
// <button class="reject"><i class="fa-solid fa-close"></i></button>
// </td>
// </tr>
var table_row=document.createElement("tr");
var username_tag=document.createElement("td");
username_tag.innerText=username;
var request_message_tag=document.createElement("td");
request_message_tag.innerText=request_message;
var review_tag=document.createElement("td");
review_tag.innerHTML='<button class="accept" onclick="perform_action(this);"><i class="fa-solid fa-check"></i></button>\
<button class="reject" onclick="perform_action(this);"><i class="fa-solid fa-close"></i></button>';
table_row.appendChild(username_tag);
table_row.appendChild(request_message_tag);
table_row.appendChild(review_tag);
document.querySelector("#access_requests_table").appendChild(table_row);
}
fetch("get_all_requests/").then(function(response){
return response.json();
}).then(function(response){
console.log(response);
if ('username' in response)
{
for(var i=0;i<response['username'].length;i++)
{
if (response['access_key'][i]==null)
add_request_row(response['username'][i],response['request_message'][i])
else
add_access_row(response['username'][i],response['request_message'][i])
}
}
})
function perform_action(elem){
// console.log(elem);
console.log(elem.getAttribute("class"));
var row=elem.parentNode.parentNode;
// username:row.firstChild.innerText
if (elem.getAttribute("class")=="reject")
{
const response = confirm("Are you sure you want to do that?");
if (!response)
{
return;
}
}
var formdata=new FormData();
formdata.append("username",row.firstChild.innerText);
formdata.append("mode",elem.getAttribute("class"));
fetch("update_requests/",{
method:"POST",
body:formdata
}).then(function(response){
return response.json();
}).then(function(response){
console.log("response:",response);
if (elem.getAttribute("class")=="accept")
{
add_access_row(row.firstChild.innerText,row.querySelector("td:nth-child(2)").innerText);
}
else if (elem.getAttribute("class")=="revoke")
{
add_request_row(row.firstChild.innerText,row.firstChild.dataset.request_message);
}
row.remove();
})
}
function add_access_row(username,request_message)
{
//#access_requests_table
// <tr>
// <td>username</td>
// <td>
// <button class="reject"><i class="fa-solid fa-close"></i></button>
// </td>
// </tr>
var table_row=document.createElement("tr");
var username_tag=document.createElement("td");
username_tag.innerText=username;
username_tag.dataset.request_message=request_message;
var remove_access_tag=document.createElement("td");
remove_access_tag.innerHTML='<button class="revoke" onclick="perform_action(this);"><i class="fa-solid fa-close"></i></button>';
table_row.appendChild(username_tag);
table_row.appendChild(remove_access_tag);
document.querySelector("#access_granted_table").appendChild(table_row);
}
// add_access_row('username')
// add_access_row('anuj')
// add_access_row('abc') |