admin buttons
This commit is contained in:
parent
fde7fdd50a
commit
c86acc10ca
1 changed files with 44 additions and 11 deletions
|
|
@ -1,9 +1,18 @@
|
||||||
const archiveButtons = document.getElementsByClassName('archive-button');
|
const archiveButtons = document.getElementsByClassName('archive-button');
|
||||||
const activityButtons = document.getElementsByClassName('change-activity-btn');
|
const activityButtons = document.getElementsByClassName('change-activity-btn');
|
||||||
|
const adminButtons = document.getElementsByClassName('change-admin-btn');
|
||||||
|
|
||||||
|
|
||||||
|
function deactivateAdminButtons(){
|
||||||
|
for (let i = 0; i < adminButtons.length; i++){
|
||||||
|
adminButtons[i].disabled=true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function activateAdminButtons(){
|
||||||
|
for (let i = 0; i < adminButtons.length; i++){
|
||||||
|
adminButtons[i].disabled=false;
|
||||||
|
}
|
||||||
|
}
|
||||||
function deactivateArchiveButtons(){
|
function deactivateArchiveButtons(){
|
||||||
for (let i = 0; i < archiveButtons.length; i++){
|
for (let i = 0; i < archiveButtons.length; i++){
|
||||||
archiveButtons[i].disabled=true;
|
archiveButtons[i].disabled=true;
|
||||||
|
|
@ -25,9 +34,19 @@ function activateActiveStatusCheckboxes(){
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async function updateActiveStatus(id, status) {
|
function activateAllButtons(){
|
||||||
deactivateActiveStatusCheckboxes()
|
activateAdminButtons()
|
||||||
|
activateArchiveButtons()
|
||||||
|
activateActiveStatusCheckboxes()
|
||||||
|
}
|
||||||
|
function deactivateAllButtons(){
|
||||||
|
deactivateAdminButtons()
|
||||||
deactivateArchiveButtons()
|
deactivateArchiveButtons()
|
||||||
|
deactivateActiveStatusCheckboxes()
|
||||||
|
}
|
||||||
|
|
||||||
|
async function updateActiveStatus(id, status) {
|
||||||
|
deactivateAllButtons()
|
||||||
var result = await fetch(`/campaigns/campaign_api/update_active_status/${id}/${status}`, {method:'PUT'});
|
var result = await fetch(`/campaigns/campaign_api/update_active_status/${id}/${status}`, {method:'PUT'});
|
||||||
var data = await result.json();
|
var data = await result.json();
|
||||||
if (status === true){
|
if (status === true){
|
||||||
|
|
@ -36,19 +55,28 @@ async function updateActiveStatus(id, status) {
|
||||||
status = 'False'
|
status = 'False'
|
||||||
}
|
}
|
||||||
document.getElementById(`${id}-active-status`).innerText = status;
|
document.getElementById(`${id}-active-status`).innerText = status;
|
||||||
activateActiveStatusCheckboxes()
|
activateAllButtons()
|
||||||
activateArchiveButtons()
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async function archiveCampaign(id){
|
async function archiveCampaign(id){
|
||||||
deactivateActiveStatusCheckboxes()
|
deactivateAllButtons()
|
||||||
deactivateArchiveButtons()
|
|
||||||
var result = await fetch(`/campaigns/campaign_api/archive_campaign/${id}`, {method:'PUT'});
|
var result = await fetch(`/campaigns/campaign_api/archive_campaign/${id}`, {method:'PUT'});
|
||||||
var data = await result.json();
|
var data = await result.json();
|
||||||
document.getElementById(`${id}-row`).remove();
|
document.getElementById(`${id}-row`).remove();
|
||||||
activateActiveStatusCheckboxes()
|
activateAllButtons()
|
||||||
activateArchiveButtons()
|
}
|
||||||
|
|
||||||
|
async function updateAdminStatus(id, status) {
|
||||||
|
deactivateAllButtons()
|
||||||
|
var result = await fetch(`/users/users_api/update_admin_status/${id}/${status}`, {method:'PUT'});
|
||||||
|
var data = await result.json();
|
||||||
|
if (status === true){
|
||||||
|
status = 'True'
|
||||||
|
} else {
|
||||||
|
status = 'False'
|
||||||
|
}
|
||||||
|
document.getElementById(`${id}-admin-status`).innerText = status;
|
||||||
|
activateAllButtons()
|
||||||
}
|
}
|
||||||
|
|
||||||
document.addEventListener("DOMContentLoaded", (event) => {
|
document.addEventListener("DOMContentLoaded", (event) => {
|
||||||
|
|
@ -62,4 +90,9 @@ document.addEventListener("DOMContentLoaded", (event) => {
|
||||||
archiveCampaign(parseInt(e.target.value))
|
archiveCampaign(parseInt(e.target.value))
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
for(let i = 0; i < adminButtons.length; i++){
|
||||||
|
adminButtons[i].addEventListener('change', e => {
|
||||||
|
updateAdminStatus(parseInt(e.target.value), e.target.checked)
|
||||||
|
})
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue