Viewing File: /usr/local/cpanel/whostmgr/docroot/templates/edit_reseller_privileges/index.min.js

var EditReseller=function(doQuickPopupbox,PAGE,CPANEL,suggestedNameservers){"use strict";var VALID={};var autoDomainRegEx=new RegExp(`\\.${PAGE.autoDomainForHost}$`);var showWarning={};checkst();showDiv("limits_resources","usagelim");showPkgLim();accountLimitCheck();setupAccountLimitValidation();updateSubcategoryCheckboxes();delegate(document.querySelector(".list-group"),"click","input.acl-checkbox",handleDelegatedEvent);delegate(document.querySelector(".save-acl-list-container"),"click","input[type=radio]",handleRadioGroupEvent);delegate(document.querySelector("#limits_resources"),"click","#limits_resources",accountLimitCheck);return{toggleAll:toggleAll,checkcancreate:checkcancreate,checkcancreate2:checkcancreate2,addns:addns,killresnumlimitamt:killresnumlimitamt,checkresnumlimit:checkresnumlimit,updateacls:updateacls,handleLimitsForPreassignedPackages:handleLimitsForPreassignedPackages,handleLimitsForAccountAmounts:handleLimitsForAccountAmounts,handleLimitResources:handleLimitResources,toggleHelpText:toggleHelpText,toggleInherit:toggleInherit,initNsWarning:initNsWarning};function updateNsWarning(){var nsWarning=document.getElementById("warning-ns");var show=Object.values(showWarning).some((_=>_));show?nsWarning.classList.remove("hidden"):nsWarning.classList.add("hidden")}function toggleInherit(inherit){var nameserverList=document.getElementById("resellerNameserverList");if(inherit){nameserverList.className=nameserverList.className+" hidden";showWarning["suggested"]=suggestedNameservers.map((_=>_.suggested_nameserver)).some((_=>autoDomainRegEx.test(_)));showWarning["reseller"]=false}else{showWarning["suggested"]=false;nameserverList.className=nameserverList.className.replace("hidden","");nameserverList.scrollIntoView();document.getElementById("ns1").focus()}updateNsWarning()}function initNsWarning(){var nsValues={};var nameserverList=document.getElementById("resellerNameserverList");var nsInputs=nameserverList.querySelectorAll('input[type="text"]');var inherit=document.getElementById("inheritNameserversFromYes").checked;showWarning["suggested"]=inherit&&suggestedNameservers.map((_=>_.suggested_nameserver)).some((_=>autoDomainRegEx.test(_)));var _nsListener=function(event){var target=event.target;nsValues[target.id]=target.value;showWarning["reseller"]=Object.values(nsValues).some((_=>autoDomainRegEx.test(_)));updateNsWarning()};nsInputs.forEach((function(el){nsValues[el.id]=el.value;el.addEventListener("input",_nsListener);el.addEventListener("focus",_nsListener)}));showWarning["reseller"]=Object.values(nsValues).some((_=>autoDomainRegEx.test(_)));updateNsWarning()}function toggleAll(event){var check=event.target.checked;var parentEl=event.target.parentNode.parentNode;var inputEls=parentEl.querySelectorAll("input");for(var i=0,len=inputEls.length;i<len;i++){if(event.target.id===inputEls[i].id){continue}inputEls[i].checked=check}}function checkcancreate2(event,pkg){document.resform["respkg-"+pkg].checked=event.target.value==="0"}function checkcancreate(pkg){if(!document.resform["respkg-"+pkg].checked){document.resform["acctlim-"+pkg].value="0"}}function addns(el){var nameserver=el.value;doQuickPopupbox({title:"Configure Address Records",url:"../scripts2/addaforns",showloading:1,iframe:1,height:375},"nameserver",nameserver)}function killresnumlimitamt(sbox){if(!sbox.checked){document.resform.resnumlimitamt.value=0}}function checkresnumlimit(sbox){if(parseInt(sbox.value,10)>0){document.resform.limits_number_of_accounts.checked=true}}function updateacls(event){var selectedList=event.target.options[event.target.selectedIndex].value;if(typeof PAGE.acl_lists[selectedList]==="undefined"){return}var list=PAGE.acl_lists[selectedList];for(var i=0,keys=Object.keys(list),len=keys.length;i<len;i++){var value=Boolean(Number(list[keys[i]]));document.resform["acl-"+keys[i]].checked=value}updateSubcategoryCheckboxes()}function handleLimitsForPreassignedPackages(event){var child=document.resform["limits_number_of_packages"];if(!event.target.checked){child.checked=false}checkst();showPkgLim()}function handleLimitsForAccountAmounts(event){var parent=document.resform["limits_preassigned_packages"];if(event.target.checked){parent.checked=true}checkst();showPkgLim()}function handleLimitResources(){showDiv("limits_resources","usagelim")}function toggleHelpText(event,helpContainer){if(event.type==="keypress"){if(event.charCode===32||event.charCode===13){toggleText(helpContainer);event.preventDefault()}}else{toggleText(helpContainer)}}function toggleText(id){var container=document.getElementById(id);if(hasClass(container,"hidden")){removeClass(container,"hidden")}else{addClass(container,"hidden")}}function checkst(){if(document.resform.limits_number_of_packages){togglePkgNums(document.resform.limits_number_of_packages.checked)}}function updateSubcategoryCheckboxes(){var subcategoryBoxes=document.querySelectorAll(".acl-subcategory-checkbox");for(var i=0,len=subcategoryBoxes.length;i<len;i++){setSubcategoryCheckboxState(subcategoryBoxes[i])}}function handleRadioGroupEvent(event){var els=document.querySelectorAll(".save-acl-list-container input[type=radio]");for(var i=0,len=els.length;i<len;i++){if(els[i].id===event.target.id){enableRelatedField(els[i])}else{disableRelatedField(els[i])}}}function enableRelatedField(el){toggleRelatedField(el,false)}function disableRelatedField(el){toggleRelatedField(el,true)}function toggleRelatedField(el,state){var related=el.getAttribute("data-relates-to");if(related){var relatedEl=document.getElementById(related);if(relatedEl){relatedEl.disabled=state}}}function handleDelegatedEvent(event){setSubcategoryCheckboxState(event.target)}function setSubcategoryCheckboxState(el){var checkboxContainer=el.closest("div.checkbox");if(checkboxContainer===null){return}var subCatContainer=checkboxContainer.parentNode;var subCatElement=subCatContainer.querySelector(".acl-subcategory-checkbox");var acls=subCatContainer.querySelectorAll(".acl-checkbox");var count=0;var displayed=0;for(var i=0,len=acls.length;i<len;i++){if(acls[i].checked){count++}displayed++}subCatElement.checked=count===displayed;subCatElement.indeterminate=count>0&&count<displayed}function togglePkgNums(show){var pkgtbl=document.getElementById("acctlimittbl");for(var i=0;i<pkgtbl.rows.length;i++){if(show){removeClass(pkgtbl.rows[i].cells[3],"hidden")}else{addClass(pkgtbl.rows[i].cells[3],"hidden")}}}function showPkgLim(){var parent=document.getElementById("limits_preassigned_packages");var child=document.getElementById("limits_number_of_packages");if(parent===null||child===null){return}if(parent.checked||child.checked){removeClass(document.getElementById("pkglim"),"hidden")}if(!parent.checked&&!child.checked){addClass(document.getElementById("pkglim"),"hidden")}}function showDiv(inputId,divname){var conditionalElement=document.getElementById(inputId);var targetDiv=document.getElementById(divname);if(conditionalElement===null||targetDiv===null){return}if(conditionalElement.checked){removeClass(targetDiv,"hidden")}else{addClass(targetDiv,"hidden")}}function hasClass(el,className){if(el.classList){return el.classList.contains(className)}else{var regex=new RegExp("(\\s|^)"+className+"(\\s|$)");return regex.test(el.className)}}function addClass(el,className){if(el.classList){el.classList.add(className)}else if(!hasClass(el,className)){el.className+=" "+className}}function removeClass(el,className){if(el.classList){el.classList.remove(className)}else if(hasClass(el,className)){var reg=new RegExp("(\\s|^)"+className+"(\\s|$)");el.className=el.className.replace(reg," ")}}function delegate(element,type,selector,callback){element.addEventListener(type,(function(event){if(event.target.closest(selector)){callback.call(element,event)}}))}function accountLimitCheck(){var diskOption=document.querySelector("#privs_allow-unlimited-disk-pkgs"),bandwidthOption=document.querySelector("#privs_allow-unlimited-bw-pkgs"),diskWarningToggle=document.querySelector("#acl-warning-toggle-allow-unlimited-disk-pkgs"),bandwidthWarningToggle=document.querySelector("#acl-warning-toggle-allow-unlimited-bw-pkgs"),diskWarning=document.querySelector("#acl-warning-allow-unlimited-disk-pkgs"),bandwidthWarning=document.querySelector("#acl-warning-allow-unlimited-bw-pkgs");if(document.querySelector("#limits_resources").checked){diskOption.checked=false;diskOption.disabled=true;bandwidthOption.checked=false;bandwidthOption.disabled=true;diskWarningToggle.classList.remove("hidden");bandwidthWarningToggle.classList.remove("hidden");diskWarning.classList.remove("hidden");bandwidthWarning.classList.remove("hidden");updateValidation()}else{diskOption.checked=diskOption.defaultChecked;bandwidthOption.checked=bandwidthOption.defaultChecked;diskOption.disabled=false;bandwidthOption.disabled=false;diskWarningToggle.classList.add("hidden");bandwidthWarningToggle.classList.add("hidden");diskWarning.classList.add("hidden");bandwidthWarning.classList.add("hidden");clearValidationMessages()}}function isLimitResourcesChecked(){return document.querySelector("#limits_resources").checked}function setupAccountLimitValidation(){var rslimitdisk=document.getElementById("rslimit-disk");var rslimitbw=document.getElementById("rslimit-bw");if(rslimitdisk){VALID.maxAllowedDisk=new CPANEL.validate.validator(LOCALE.maketext("Maximum Allowed Disk Space"));VALID.maxAllowedDisk.add("rslimit-disk","if_not_empty(%input%, CPANEL.validate.positive_integer)",LOCALE.maketext("You must enter a positive integer value."),isLimitResourcesChecked);VALID.maxAllowedDisk.attach();if(rslimitdisk.value.length>0){VALID.maxAllowedDisk.verify()}}if(rslimitbw){VALID.maxAllowedBW=new CPANEL.validate.validator(LOCALE.maketext("Maximum Allowed Bandwidth"));VALID.maxAllowedBW.add("rslimit-bw","if_not_empty(%input%, CPANEL.validate.positive_integer)",LOCALE.maketext("You must enter a positive integer value."),isLimitResourcesChecked);VALID.maxAllowedBW.attach();if(rslimitbw.value.length>0){VALID.maxAllowedBW.verify()}}CPANEL.validate.attach_to_form("save_button",VALID)}function updateValidation(){var rslimitdisk=document.getElementById("rslimit-disk");var rslimitbw=document.getElementById("rslimit-bw");if(VALID.maxAllowedDisk&&rslimitdisk&&rslimitdisk.value.length>0){VALID.maxAllowedDisk.verify()}if(VALID.maxAllowedBW&&rslimitbw&&rslimitbw.value.length>0){VALID.maxAllowedBW.verify()}}function clearValidationMessages(){if(VALID.maxAllowedDisk){VALID.maxAllowedDisk.clear_messages()}if(VALID.maxAllowedBW){VALID.maxAllowedBW.clear_messages()}}}(do_quick_popupbox,PAGE,CPANEL,suggestedNameservers);(function(ELEMENT){"use strict";ELEMENT.matches=ELEMENT.matches||ELEMENT.mozMatchesSelector||ELEMENT.msMatchesSelector||ELEMENT.oMatchesSelector||ELEMENT.webkitMatchesSelector;ELEMENT.closest=ELEMENT.closest||function closest(selector){var element=this;while(element){if(element.matches(selector)){break}element=element.parentElement}return element}})(Element.prototype);
Back to Directory File Manager