summaryrefslogtreecommitdiffstats
path: root/ogcp/static
diff options
context:
space:
mode:
Diffstat (limited to 'ogcp/static')
-rw-r--r--ogcp/static/js/ogcp.js32
1 files changed, 18 insertions, 14 deletions
diff --git a/ogcp/static/js/ogcp.js b/ogcp/static/js/ogcp.js
index 17d3ca0..a0bbed1 100644
--- a/ogcp/static/js/ogcp.js
+++ b/ogcp/static/js/ogcp.js
@@ -52,11 +52,11 @@ function showSelectedClientsOnEvents() {
});
}
-function storeCheckboxStatus(checkbox) {
+function storeCheckboxStatus(checkbox, context) {
if (checkbox.checked)
- localStorage.setItem(checkbox.name, "check");
+ localStorage.setItem(context + checkbox.id, "check");
else
- localStorage.removeItem(checkbox.name);
+ localStorage.removeItem(context + checkbox.id);
}
function checkParentsCheckboxes() {
@@ -84,7 +84,7 @@ function checkParentsCheckboxes() {
});
}
-function checkChildrenCheckboxes() {
+function checkChildrenCheckboxes(context) {
const checkboxes = $('input:checkbox[form|="scopesForm"]')
checkboxes.on('change', function () {
@@ -98,7 +98,7 @@ function checkChildrenCheckboxes() {
others.prop('checked', false);
others.each(function() {
showSelectedClient(this);
- storeCheckboxStatus(this);
+ storeCheckboxStatus(this, context);
});
//others.trigger('change');
} else {
@@ -108,10 +108,10 @@ function checkChildrenCheckboxes() {
others.prop('checked', false).prop('indeterminate', false);
others.each(function() {
const checks = $(this).parent().find('input:checkbox').prop('checked', false);
- storeCheckboxStatus(this);
+ storeCheckboxStatus(this, context);
checks.each(function() {
showSelectedClient(this);
- storeCheckboxStatus(this);
+ storeCheckboxStatus(this, context);
});
});
}
@@ -119,22 +119,22 @@ function checkChildrenCheckboxes() {
children.each(function () {
this.checked = checked;
- storeCheckboxStatus(this);
+ storeCheckboxStatus(this, context);
$(this).trigger('show-client');
});
checkParentsCheckboxes();
});
}
-function keepSelectedClients() {
+function keepSelectedClients(context) {
const checkboxes = $('input:checkbox[form|="scopesForm"]')
checkboxes.on('change', function (event) {
- storeCheckboxStatus(this);
+ storeCheckboxStatus(this, context);
});
checkboxes.each(function () {
- if (localStorage.getItem(this.name) == 'check') {
+ if (localStorage.getItem(context + this.id) == 'check') {
this.checked = true;
$(this).trigger('show-client');
}
@@ -384,24 +384,28 @@ function checkRepoServer() {
});
}
-function checkFolderParent() {
+function checkFolderParent(context) {
const folder = $('input:checkbox[form|="scopesForm"][name="folder"]')
folder.on('change', function() {
const folder_parent = $('#' + $.escapeSelector(this.dataset.parentInput));
folder_parent.prop('checked', this.checked);
+ storeCheckboxStatus(folder_parent.get(0), context);
});
}
-function limitCheckboxes() {
+function limitCheckboxes(context) {
const checkboxes = $('input:checkbox[form|="scopesForm"]');
checkboxes.on('change', function () {
const checked = this;
checkboxes.filter((i, c) => c !== checked).prop('checked', false);
+
+ checkScopeServer();
+
checkboxes.each(function() {
+ storeCheckboxStatus(this, context);
showSelectedClient(this);
});
- checkScopeServer();
});
}