Index: trunk/admin/include/tabs.js =================================================================== diff -u -N --- trunk/admin/include/tabs.js (revision 8397) +++ trunk/admin/include/tabs.js (revision 0) @@ -1,297 +0,0 @@ -//parses input tags looking for validation attributes - -function DataIsValid(f) -{ - var ValType = ''; - var span_id = ''; - var form_result = true; - var field_result = true; - var j = 0; - - for (var i = 0; i < f.elements.length; i++) - { - ValType = ''; - Field = f.elements[i]; - ValType = Field.getAttribute('ValidationType'); - if(ValType) - { - ValType = TransformValidationType(ValType); // for capability with old forms - span_id = 'prompt_' + Field.name; - span = document.getElementById(span_id); - if(span) - { - field_result = true; - ValType = ValType.split(','); - - j = 0; - while(j < ValType.length) - { - //alert('Validating ['+Field.name+'] as ['+ValType[j]+']'); - if(ValType[j] == 'password') - { - var repasswd = document.getElementById(Field.name + '_verify'); - if(repasswd) - { - field_result &= ValidateField(Field.value, ValType[j], repasswd.value); - document.getElementById('prompt_' + Field.name + '_verify').className = field_result ? 'text' : 'validation_error'; - } - } - else - field_result &= ValidateField(Field.value, ValType[j], Field); - j++; - } - span.className = field_result ? 'text' : 'validation_error'; - form_result &= field_result; - } - } - } - return form_result; -} - -function TransformValidationType(OldType) -{ - // replace old validation types with new - // on the fly in case if we have some forms - // that still use old validation types - - var NewType = ''; - switch(OldType) - { - case 'optional_date': - NewType = 'date'; - break; - default: - NewType = OldType; - break; - } - return NewType; -} - -function ValidateField(FieldValue, ValidateAs, RePasswdValue) -{ - // validate FieldValue based on ValidateAs rule specified; - // in case if password field compare it with RePasswdValue - var result = true; - switch(ValidateAs) - { - case 'exists': // field is required - var $Field = RePasswdValue; - switch ($Field.type) { - case 'radio': - result = false; - var $radio = document.getElementsByName($Field.name); - for (var $i = 0; $i < $radio.length; $i++) { - if ($radio[$i].checked) { - result = true; - break; - } - } - break; - default: - if(FieldValue.length == 0) result = false; - break; - } - break; - - case 'integer': // field must be integer number - result = ValidateNumber(FieldValue, ValidateAs); - break; - - case 'password': // validate as password field - result = (FieldValue == RePasswdValue) || (FieldValue.length == 0); - break; - - case 'date': // text must be a formatted date - result = ValidDate(FieldValue); - break; - - case 'time': // text must be a formatted time - result = ValidTime(FieldValue); - break; - case 'custom_name': - result = ValidCustomName(FieldValue); - break; - case 'theme_name': - result = ValidThemeName(FieldValue); - break; - } - return result; -} - -function MarkAsRequired(f) -{ - var ValType = ''; - var span_id = ''; - var result = true; - - for (var i = 0; i < f.elements.length; i++) { - ValType = ''; - Field = f.elements[i]; - ValType = Field.getAttribute('ValidationType'); - if (ValType) { - ValType = ValType.split(','); - if ((InArray(ValType,'exists') !== false) && (span_id != 'prompt_' + Field.name)) { - span_id = 'prompt_' + Field.name; - span = document.getElementById(span_id); - span.innerHTML += '*'; - } - } - } -} - -function InArray(aArray, aValue) -{ - // checks if element in array - var k = 0; - while(k < aArray.length) - { - if(aArray[k] == aValue) return k; - k++; - } - return false; -} - -//Used to submit the form when a tab is clicked on -function edit_submit(formname, status_field, targetURL, save_value, env_str, new_target) -{ - var full_env = env; - if( HasParam(env_str) ) full_env += env_str; - - if(full_env.substr(0,3) != "env") full_env = 'env=' + full_env; - f = document.getElementById(formname); - - if(f) - { - var valid = false; - if(save_value != 2 && save_value !=-1) - { - valid = DataIsValid(f); - } - else - { - var a = f.Action; - if(a) - { - a.value=''; - } - } - if(valid || save_value==2 || save_value==-1) - { - var URLPrefix = ''; - if( targetURL.substring(0, rootURL.length) != rootURL ) URLPrefix = rootURL; - - f.action = URLPrefix + targetURL; - if( !f.action.match('(.*)?env=(.*)') ) f.action += '?' + full_env; - - if(status_field.length > 0) - { - f.elements[status_field].value = save_value; //0= stay in temp, 1=save to perm, 2 = purge no save - } - - if(new_target != null && typeof(new_target) != 'undefined') f.target = new_target; - f.submit(); - } - else - if(!valid) alert(ErrorMsg); - } - else - { - alert('Form '+formname+' was not found.'); - } -} - -//Used when the save or cancel buttin is hit -function do_edit_save(formname, status_field, targetURL, save_value, env_str) -{ - var full_env = env; - if( HasParam(env_str) ) full_env += env_str; - if(full_env.substr(0,3)!="env") - full_env = 'env='+full_env; - - f = document.getElementById(formname); - if(f) - { - f.action = rootURL + targetURL; - - if( !f.action.match('(.*)?env=(.*)') ) f.action += '?' + full_env; - - //alert(f.action); - if(status_field.length>0) - { - f.elements[status_field].value = save_value; //0= stay in temp, 1=save to perm, 2 = purge no save - } - f.submit(); - } - else - alert('Form '+formname+' was not found.'); -} - -function jump_to_url(targetURL, env_str) -{ - var full_env = env; - if( HasParam(env_str) ) full_env += env_str; - - if(full_env.substr(0,3)!="env") - full_env = 'env='+full_env; - - document.location = rootURL + targetURL + '?' + full_env; -} -// ------------------------------------------------------------------------------------------------------------- -function submit_form(formname, status_field, targetURL, save_value, env_str) -{ - // by Alex, submits form. - - var full_env = env; - if( HasParam(env_str) ) full_env += env_str; - if(full_env.substr(0,3)!="env") - full_env = 'env='+full_env; - - - f = document.getElementById(formname); - - if(f) - { - var valid = false; - if(save_value != 2 && save_value !=-1) - { - valid = DataIsValid(f); - } - else - { - var a = f.Action; - if(a) - { - a.value=''; - } - } - if(valid || save_value==2 || save_value==-1) - { - f.action = rootURL + targetURL + '?' + full_env; - if(status_field.length>0) - { - f.elements[status_field].value = save_value; //0= stay in temp, 1=save to perm, 2 = purge no save - } - - f.submit(); - } - else - if(!valid) - alert(ErrorMsg); - - } - else - alert('Form '+formname+' was not found.'); -} - -function HasParam(param) -{ - // checks of parameter is passed to function (cross-browser) - return typeof(param) == 'undefined' ? false : true; -} - -function SetBackground(element_id, img_url) -{ - // set background image of element specified by id - var el = document.getElementById(element_id); - el.style.backgroundImage = 'url('+img_url+')'; -} \ No newline at end of file