Viewing File: /usr/local/cpanel/whostmgr/docroot/templates/backup/form.min.js

CPANEL.namespace("CPANEL");var EVENT=EVENT||YAHOO.util.Event,DOM=DOM||YAHOO.util.Dom;CPANEL.Form={purgeContainer:function(container){container=DOM.get(container);EVENT.purgeElement(container,true);container.innerHTML=""},fireChanged:function(e){var target=e.target||e.srcElement;target.blur();target.focus()},checkPolicy:function(container,policy,error){if(policy){DOM.addClass(container,"hidden");DOM.removeClass(error,"active");DOM.removeClass(error,"error")}else{DOM.removeClass(container,"hidden");DOM.addClass(error,"active");DOM.addClass(error,"error")}},getData:function(form){if(form=DOM.get(form)){var elements=form.elements,data={},valueArray=[],valueCounter=0,fieldLength;for(var i=0,length=elements.length;i<length;i++){var currentElement=elements[i];if(typeof currentElement.name==="undefined"||currentElement.name===""){continue}if(typeof fieldLength==="undefined"){if(typeof form[currentElement.name].length!=="undefined"){fieldLength=form[currentElement.name].length}else{fieldLength=0}}if(currentElement.disabled){if(fieldLength--===0){fieldLength=undefined}}else{if(fieldLength>0&&currentElement.type!=="select-one"){if(currentElement.checked){valueArray.push(currentElement.value)}valueCounter++}else if(currentElement.type==="checkbox"){if(currentElement.checked){valueArray.push(currentElement.value)}else{valueArray.push("0")}}else if(typeof currentElement.value!=="undefined"&&currentElement.value!==""){valueArray.push(currentElement.value)}}if(valueCounter===0||valueCounter===fieldLength){if(valueArray.length>0){data[currentElement.name]=valueArray.toString()}valueArray=[];valueCounter=0;fieldLength=undefined}}return data}else{return null}},toggleDependentOptions:function(e,enabledValue){enabledValue=typeof enabledValue!=="undefined"?enabledValue:"1";var target=e.target||e.srcElement,checkbox=target.type==="checkbox"?true:false,container=target.id.replace(/_[^_]+(?![\s\S])/,"_options"),inputs=DOM.getElementsByClassName("advanced-option","input",container),errors=DOM.getElementsByClassName("error","span",container),alternateContainer=DOM.getElementsByClassName(container+"-alternate","div"),alternateInputs=[],alternateErrors;if(alternateContainer.length>0){alternateInputs=DOM.getElementsByClassName("advanced-option","input",alternateContainer[0]);alternateErrors=DOM.getElementsByClassName("error","span",alternateContainer[0])}if(checkbox&&target.checked||!checkbox&&target.value===enabledValue){if(alternateInputs.length>0){DOM.addClass(alternateContainer[0],"collapsed");DOM.addClass(alternateContainer[0],"inactive");DOM.removeClass(alternateErrors,"active")}DOM.removeClass(container,"collapsed");DOM.removeClass(container,"inactive");DOM.addClass(errors,"active")}else{if(alternateInputs.length>0){DOM.removeClass(alternateContainer[0],"collapsed");DOM.removeClass(alternateContainer[0],"inactive");DOM.addClass(alternateErrors,"active")}DOM.addClass(container,"collapsed");DOM.addClass(container,"inactive");DOM.removeClass(errors,"active")}for(var i=0,length=inputs.length;i<length;i++){inputs[i].disabled=inputs[i].disabled?false:true}for(i=0,length=alternateInputs.length;i<length;i++){alternateInputs[i].disabled=alternateInputs[i].disabled?false:true}},toggleLoadingButton:function(action){if(typeof action==="string"){action=DOM.get(action)}var spinner=DOM.getElementsByClassName("spinner","div",action)[0];if(!spinner){action=action.parentNode;spinner=DOM.getElementsByClassName("spinner","div",action)[0]}if(DOM.hasClass(action,"loading")){DOM.removeClass(action,"loading");DOM.removeClass(action.parentNode,"disabled");action.disabled=false}else{action.disabled=true;DOM.addClass(action.parentNode,"disabled");spinner.style.width=action.offsetWidth+"px";DOM.addClass(action,"loading")}},setFocusMask:function(focus){var mask=DOM.get("focus_mask");focus=DOM.get(focus);if(typeof focus!=="undefined"){if(focus.tagName==="INPUT"&&focus.checked){var node=DOM.getAncestorByClassName(focus,"form-group").parentNode,elements=focus.form.elements;DOM.addClass(node,"focus");for(var i=0,length=elements.length;i<length;i++){var advancedOptionContainer=DOM.getAncestorByClassName(elements[i],"advanced-options-container");if(DOM.hasClass(advancedOptionContainer,"inactive")){continue}if((elements[i].tagName==="BUTTON"||elements[i].tagName==="INPUT"||elements[i].tagName==="SELECT")&&elements[i].name!==focus.name){elements[i].disabled=true;DOM.addClass(elements[i],"out-of-focus")}}}else if(focus.tagName==="FORM"||focus.tagName==="FIELDSET"){DOM.addClass(focus,"focus")}CPANEL.Form.resizeFocusMask();DOM.removeClass(mask,"hidden")}},resizeFocusMask:function(){var mask=DOM.get("focus_mask"),focus=DOM.getElementsByClassName("focus")[0],parentForm,region,height,width;if(focus.tagName==="FORM"||focus.tagName==="FIELDSET"){parentForm=YAHOO.util.Selector.query("form","content",true);region=DOM.getRegion(focus);width=region.width+"px";height=region.top-DOM.getRegion(parentForm).top+2+"px"}else{parentForm=DOM.getAncestorByTagName(focus,"FORM");region=DOM.getRegion(parentForm);width=region.width+"px";height=region.bottom-region.top+"px"}DOM.setStyle(mask,"height",height);DOM.setStyle(mask,"width",width)},clearFocusMask:function(){var outOfFocus=DOM.getElementsByClassName("out-of-focus");for(var i=0,length=outOfFocus.length;i<length;i++){outOfFocus[i].disabled=false;DOM.removeClass(outOfFocus[i],"out-of-focus")}DOM.addClass("focus_mask","hidden");DOM.removeClass(DOM.getElementsByClassName("focus")[0],"focus")},Validator:function(){var validators=[];this.register=function(field,callback){field=DOM.get(field);callback=typeof callback!=="function"?this.callback:callback;var delay=function(){setTimeout(callback.bind(this,field),5)},tests=field.className.replace("validate","").trim().split(" "),field_container=DOM.getAncestorByClassName(field,"form-group"),field_test={};for(var i=0,length=tests.length;i<length;i++){field_test={field:field,validator:this[tests[i]],field_container:field_container,error_container:DOM.getElementsByClassName(tests[i],"span",field_container)[0]};if(typeof field_test.validator==="function"){validators.push(field_test);if(CPANEL.dom.has_oninput){EVENT.on(field,"input",callback,field)}else{EVENT.on(field,"keyup",callback,field);EVENT.on(field,"change",callback,field);EVENT.on(field,"paste",delay,field)}}}};this.callback=function(e,field){if(field.disabled){return}var field_container=DOM.getAncestorByClassName(field,"field");var failed=0;for(var i=0,length=validators.length;i<length;i++){var currentValidator=validators[i];if(currentValidator.field.id!==field.id){continue}if(currentValidator.validator(currentValidator.field)){DOM.removeClass(currentValidator.error_container,"active");DOM.removeClass(currentValidator.error_container,"error")}else{DOM.addClass(currentValidator.error_container,"active");DOM.addClass(currentValidator.error_container,"error");failed++}}if(failed>0){DOM.addClass(field_container,"error")}else{DOM.removeClass(field_container,"error")}};this.verify=function(){for(var i=0,length=validators.length;i<length;i++){this.callback(null,validators[i].field)}};this.required=function(field){return!(typeof field.value.length!=="undefined"&&field.value.length===0)};this.noslashes=function(field){if(field.value.indexOf("/")<0&&field.value.indexOf("\\")<0){return true}return false};this.range=function(field){if(!CPANEL.validate.positive_integer(field.value)){return false}var value=parseInt(field.value,10),min=parseInt(DOM.getAttribute(field,"min"),10),max=parseInt(DOM.getAttribute(field,"max"),10);return value>=min&&value<=max};this.minimum=function(field){if(!CPANEL.validate.positive_integer(field.value)){return false}var value=parseInt(field.value,10),min=parseInt(DOM.getAttribute(field,"min"),10);return value>=min};this.maximum_percent=function(field){var value=parseInt(field.value,10),max=parseInt(DOM.getAttribute(field,"max"),10),units=document.getElementById(DOM.getAttribute(field,"id")+"_unit");if(units.value=="MB"){return true}return value<=max};this.path=function(field){if(field.value.indexOf("/")!==0){return false}return CPANEL.validate.dir_path(field.value)};this.relative=function(field){if(field.value.length===0){return true}if(field.value.indexOf("/")===0){return false}if(field.value.substring(0,3)==="../"){return false}return CPANEL.validate.dir_path(field.value)};this.remote=function(field){if(field.value.length===0){return true}if(field.value.substring(0,3)==="../"){return false}return CPANEL.validate.dir_path(field.value)};this.keyname=function(field){if(field.value.length===0){return true}if(!CPANEL.validate.no_chars(field.value," ")){return false}return CPANEL.validate.filename(field.value)};this.host=function(field){if(/^(127(\.\d+){1,3}|[0:]+1|localhost)$/i.test(field.value)){return false}return/^[a-z0-9.\-]{1,}$/i.test(field.value)};this.passphrase=function(field){if(field.value===""){return true}var min=parseInt(DOM.getAttribute(field,"minlength"),10),max=parseInt(DOM.getAttribute(field,"maxlength"),10),length=field.value.length;return typeof length!=="undefined"&&length>=min&&length<=max};this.name_length=function(field){var min=parseInt(DOM.getAttribute(field,"minlength"),10),max=parseInt(DOM.getAttribute(field,"maxlength"),10),length=field.value.length;return typeof length!=="undefined"&&length>=min&&length<=max}}};
Back to Directory File Manager