function superacl_autoselect_permissions(caller) { callerLabel = parseInt(caller.id.substring(4)); baseLabel = caller.id.substring(0,4); parent = caller.parentNode.parentNode; boxes = parent.getElementsByTagName('input'); for (i = 0; i < boxes.length; i++) { e = boxes[i]; if (! e) continue; id = e.id; if (!id || id.length<4 || id.substring(0,4) != baseLabel) continue; label = parseInt(id.substring(4)); //check lower rights, too if (caller.checked && label < callerLabel) e.checked = true; //uncheck upper rights too else if (! caller.checked && label > callerLabel) e.checked = false; } } function ajax_superacl_class() { this.sack = null; this.inObj = null; this.outObj = null; this.timer = null; } function fillNamespaceDropdown() { // fill namespace selector if ($('superacl__nsselid')) { var ajax_superaclns = new ajax_superacl_class(); ajax_superaclns.sack = new sack(DOKU_BASE + 'lib/plugins/superacl/ajax.php'); ajax_superaclns.sack.AjaxFailedAlert = ''; ajax_superaclns.sack.encodeURIString = false; ajax_superaclns.exec = function() { pageid = $("superacl__pageid").value; ns_selid = $("superacl__nsselid").value; ajax_superaclns.sack.runAJAX('q=namespaces&pageid=' + encodeURI(pageid) + '&selid=' + encodeURI(ns_selid)); }; ajax_superaclns.sack.onCompletion = function() { var data = eval(ajax_superaclns.sack.response); if(data === '') return; // add namespaces to select box select = $('superacl__nsselect'); for(i = 0; i < data.length; ++i) { option = new Option(data[i].text, data[i].value, data[i].sel, data[i].sel); select.options[i] = option; } }; ajax_superaclns.exec(); } // fill page selector if ($('superacl__aclid')) { var ajax_superaclpage = new ajax_superacl_class(); ajax_superaclpage.sack = new sack(DOKU_BASE + 'lib/plugins/superacl/ajax.php'); ajax_superaclpage.sack.AjaxFailedAlert = ''; ajax_superaclpage.sack.encodeURIString = false; ajax_superaclpage.exec = function() { acl_id = $("superacl__aclid").value; page_selid = $("superacl__pageselid").value; page_text = $("superacl__page_text").value; ns_text = $("superacl__namespace_text").value; ajax_superaclpage.sack.runAJAX( 'q=pages&aclid=' + encodeURI(acl_id) + '&selid=' + encodeURI(page_selid) + '&page_text=' + encodeURI(page_text) + '&ns_text=' + encodeURI(ns_text) ); }; ajax_superaclpage.sack.onCompletion = function() { var data = eval(ajax_superaclpage.sack.response); if(data === '') return; // add namespaces to select box select = $('superacl__pageselect'); for(i = 0; i < data.length; ++i) { option = new Option(data[i].text, data[i].value, data[i].sel, data[i].sel); select.options[i] = option; } }; ajax_superaclpage.exec(); } } addInitEvent(function(){fillNamespaceDropdown();});