mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2026-02-11 01:26:22 +01:00
Compare commits
3 Commits
0c0f2fd5ba
...
2a3d775a9b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2a3d775a9b | ||
|
|
648733d537 | ||
|
|
70caf7606c |
@@ -19,7 +19,7 @@
|
||||
{% translate "Join Requests" %}
|
||||
|
||||
{% if acceptrequests %}
|
||||
<span class="badge text-bg-secondary">{{ acceptrequests|length }}</span>
|
||||
<span id="acceptRequestsCounter" class="badge text-bg-secondary">{{ acceptrequests|length }}</span>
|
||||
{% endif %}
|
||||
</a>
|
||||
</li>
|
||||
@@ -30,7 +30,7 @@
|
||||
{% translate "Leave Requests" %}
|
||||
|
||||
{% if leaverequests %}
|
||||
<span class="badge text-bg-secondary">{{ leaverequests|length }}</span>
|
||||
<span id="leaveRequestsCounter" class="badge text-bg-secondary">{{ leaverequests|length }}</span>
|
||||
{% endif %}
|
||||
</a>
|
||||
</li>
|
||||
@@ -48,7 +48,7 @@
|
||||
<div id="add" class="tab-pane active">
|
||||
{% if acceptrequests %}
|
||||
<div>
|
||||
<table id="table-add" class="table table-responsive">
|
||||
<table id="table-add" class="table table-responsive w-100">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{% translate "Character" %}</th>
|
||||
@@ -123,7 +123,7 @@
|
||||
<div id="leave" class="tab-pane">
|
||||
{% if leaverequests %}
|
||||
<div>
|
||||
<table id="table-rem" class="table table-responsive">
|
||||
<table id="table-rem" class="table table-responsive w-100">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{% translate "Character" %}</th>
|
||||
@@ -271,19 +271,48 @@
|
||||
|
||||
function hitAuth(classLookup, table, URL){
|
||||
toggleButtons(classLookup);
|
||||
fetch(URL)
|
||||
let output = fetch(URL)
|
||||
.then(response => {
|
||||
if (!response.ok) {
|
||||
toggleButtons(classLookup);
|
||||
return
|
||||
return true;
|
||||
}
|
||||
removeRow(table, classLookup)
|
||||
})
|
||||
.catch(error => {
|
||||
toggleButtons(classLookup);
|
||||
return;
|
||||
return false;
|
||||
});
|
||||
toggleButtons(classLookup);
|
||||
return output;
|
||||
}
|
||||
|
||||
function decreaseCounterElement(elem){
|
||||
count = Number(elem.innerText);
|
||||
count -= 1;
|
||||
if (!count){
|
||||
elem.classList.add("d-none");
|
||||
} else {
|
||||
elem.innerText = count;
|
||||
}
|
||||
}
|
||||
|
||||
function decreaseCounter(id){
|
||||
elem = document.getElementById(id);
|
||||
if (elem){decreaseCounterElement(elem)}
|
||||
}
|
||||
|
||||
function decreaseMenuCounter(){
|
||||
decreaseCounter("globalNotificationCount");
|
||||
let elem = document.querySelector("a[href='{% url "groupmanagement:management" %}']");
|
||||
if (elem) {
|
||||
let badge = elem.parentElement.querySelector("span");
|
||||
if (badge){decreaseCounterElement(badge)}
|
||||
if (elem.parentElement.parentElement.parentElement.tagName === "LI"){
|
||||
let folderBadge = elem.parentElement.parentElement.parentElement.querySelector("span");
|
||||
if (folderBadge){decreaseCounterElement(folderBadge)}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
let acceptJoinButtons = document.querySelectorAll(".join-accept");
|
||||
@@ -291,7 +320,10 @@
|
||||
elem.addEventListener("click", function(event) {
|
||||
url = `${acceptJoinURL}${event.target.id}/`
|
||||
let elemClass = `.btns-join-${event.target.id}`
|
||||
hitAuth(elemClass, tableAdd, url)
|
||||
if (hitAuth(elemClass, tableAdd, url)){
|
||||
decreaseCounter("acceptRequestsCounter")
|
||||
decreaseMenuCounter()
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
@@ -300,7 +332,10 @@
|
||||
elem.addEventListener("click", function(event) {
|
||||
url = `${rejectJoinURL}${event.target.id}/`
|
||||
let elemClass = `.btns-join-${event.target.id}`
|
||||
hitAuth(elemClass, tableAdd, url)
|
||||
if (hitAuth(elemClass, tableAdd, url)){
|
||||
decreaseCounter("acceptRequestsCounter")
|
||||
decreaseMenuCounter()
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
@@ -309,7 +344,10 @@
|
||||
elem.addEventListener("click", function(event) {
|
||||
url = `${acceptLeaveURL}${event.target.id}/`
|
||||
let elemClass = `.btns-leave-${event.target.id}`
|
||||
hitAuth(elemClass, tableRem, url)
|
||||
if (hitAuth(elemClass, tableRem, url)){
|
||||
decreaseCounter("leaveRequestsCounter")
|
||||
decreaseMenuCounter()
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
@@ -318,10 +356,23 @@
|
||||
elem.addEventListener("click", function(event) {
|
||||
url = `${rejectLeaveURL}${event.target.id}/`
|
||||
let elemClass = `.btns-leave-${event.target.id}`
|
||||
hitAuth(elemClass, tableRem, url)
|
||||
if (hitAuth(elemClass, tableRem, url)){
|
||||
decreaseCounter("leaveRequestsCounter")
|
||||
decreaseMenuCounter()
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// Filter Dropdown sets widths so lets remove them when we tab change so they actually show.
|
||||
$('a[data-bs-toggle="tab"]').on('shown.bs.tab', function (e) {
|
||||
let elems = document.querySelectorAll(".form-select");
|
||||
elems.forEach(
|
||||
function(e) {
|
||||
e.style.maxWidth = "";
|
||||
}
|
||||
);
|
||||
});
|
||||
|
||||
});
|
||||
</script>
|
||||
{% endblock extra_javascript %}
|
||||
|
||||
@@ -20,7 +20,7 @@ $(document).ready(() => {
|
||||
|
||||
if (badges.length > 0 && notificationCount > 0) {
|
||||
const notificationBadge = document.createElement('span');
|
||||
|
||||
notificationBadge.id = "globalNotificationCount";
|
||||
notificationBadge.classList.add(
|
||||
'badge',
|
||||
'text-bg-danger',
|
||||
|
||||
Reference in New Issue
Block a user