var validateArray = new Array(); function isInformed( id ) { var obj = document.getElementById(id); if( obj != null && obj.value.length > 0 ) { return true; } return false; } function isInteger (id) { var i; var s = document.getElementById(id).value; if ((s != null) || (s.length != 0)){ for (i = 0; i < s.length; i++) { var c = s.charAt(i); if (!((c >= "0") && (c <= "9"))) return false; } } return true; } function isIntegerNoInformed (id) { var i; var s = document.getElementById(id).value; if ((s != null)){ for (i = 0; i < s.length; i++) { var c = s.charAt(i); if (!((c >= "0") && (c <= "9"))) return false; } } return true; } function isInformed60( id ) { var obj = document.getElementById(id); if(obj != null && obj.value.length > 0 && obj.value.length <= 60 ) { return true; } return false; } function isInformed25( id ) { var obj = document.getElementById(id); if(obj != null && obj.value.length > 0 && obj.value.length <= 25 ) { return true; } return false; } function isInformed10( id ) { var obj = document.getElementById(id); if( obj != null && obj.value.length > 0 && obj.value.length <= 10 ) { return true; } return false; } function isObligatoryTelefono12( id ) { var obj = document.getElementById(id); if (isInteger(id)) { if( obj != null && obj.value.length > 0 && obj.value.length <= 12 ) { return true; } } return false; } function isObligatoryTelefono3( id ) { var obj = document.getElementById(id); if (isInteger(id)) { if( obj != null && obj.value.length > 0 && obj.value.length <= 3 ) { return true; } } return false; } function isInformedTelefono12( id ) { var obj = document.getElementById(id); if (isInteger(id)) { if( obj.value.length <= 12 ) { return true; } } return false; } function isInformedTelefono3( id ) { var obj = document.getElementById(id); if( obj.value.length <= 3 ) { return true; } return false; } /* A.Carreras: Añadida funcion para controlar campos no informados en la busqueda de la Home */ function isInformedHome( id ) { var obj = document.getElementById(id); if( obj.value != null && obj.value != "0" && obj.value != "dd/mm/aaaa" && obj.value !="" ) { return true; } return false; } function isCodUsuario ( id ) { var obj = document.getElementById(id); if( obj != null && obj.value.length > 0 && obj.value.length != 4 && obj.value.length != 8) { return true; } return false; } function isInformedPlus( id ) { var obj = document.getElementById(id); if(obj != null && obj.disable) { return true; } if( obj != null && obj.value.length > 0 ) { return true; } return false; } function isValidDateUS( id ) { /************************************************ DESCRIPTION: Validates that a string contains only valid dates with 2 digit month, 2 digit day, 4 digit year. Date separator can be ., -, or /. Uses combination of regular expressions and string parsing to validate date. Ex. dd/mm/yyyy or dd-mm-yyyy or dd.mm.yyyy RETURNS: True if valid, otherwise false. *************************************************/ var strValue = document.getElementById(id).value; var objRegExp = /^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{4}$/ //check to see if in correct format if(!objRegExp.test(strValue)) return false; //doesn't match pattern, bad date else{ var strSeparator = strValue.substring(2,3) var arrayDate = strValue.split(strSeparator); //create a lookup for months not equal to Feb. var arrayLookup = { '01' : 31,'03' : 31, '04' : 30,'05' : 31, '06' : 30,'07' : 31, '08' : 31,'09' : 30, '10' : 31,'11' : 30,'12' : 31} var intDay = parseInt(arrayDate[1],10); //check if month value and day value agree if(arrayLookup[arrayDate[1]] != null) { if(intDay <= arrayLookup[arrayDate[1]] && intDay != 0) return true; //found in lookup table, good date } //check for February (bugfix 20050322) //bugfix for parseInt kevin //bugfix biss year O.Jp Voutat var intMonth = parseInt(arrayDate[0],10); if (intMonth == 2) { var intYear = parseInt(arrayDate[2]); if (intDay > 0 && intDay < 29) { return true; } else if (intDay == 29) { if ((intYear % 4 == 0) && (intYear % 100 != 0) || (intYear % 400 == 0)) { // year div by 4 and ((not div by 100) or div by 400) ->ok return true; } } } } return false; //any other values, bad date } function isValidDate( id ) { /************************************************ DESCRIPTION: Validates that a string contains only valid dates with 2 digit month, 2 digit day, 4 digit year. Date separator can be ., -, or /. Uses combination of regular expressions and string parsing to validate date. Ex. dd/mm/yyyy or dd-mm-yyyy or dd.mm.yyyy RETURNS: True if valid, otherwise false. *************************************************/ var strValue = document.getElementById(id).value; var objRegExp = /^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{4}$/ //check to see if in correct format if(!objRegExp.test(strValue)) return false; //doesn't match pattern, bad date else{ var strSeparator = strValue.substring(2,3) var arrayDate = strValue.split(strSeparator); //create a lookup for months not equal to Feb. var arrayLookup = { '01' : 31,'03' : 31, '04' : 30,'05' : 31, '06' : 30,'07' : 31, '08' : 31,'09' : 30, '10' : 31,'11' : 30,'12' : 31} var intDay = parseInt(arrayDate[0],10); //check if month value and day value agree if(arrayLookup[arrayDate[1]] != null) { if(intDay <= arrayLookup[arrayDate[1]] && intDay != 0) return true; //found in lookup table, good date } //check for February (bugfix 20050322) //bugfix for parseInt kevin //bugfix biss year O.Jp Voutat var intMonth = parseInt(arrayDate[1],10); if (intMonth == 2) { var intYear = parseInt(arrayDate[2]); if (intDay > 0 && intDay < 29) { return true; } else if (intDay == 29) { if ((intYear % 4 == 0) && (intYear % 100 != 0) || (intYear % 400 == 0)) { // year div by 4 and ((not div by 100) or div by 400) ->ok return true; } } } } return false; //any other values, bad date } function isFalse (id ) { return false; } function isChecked( id ) { var obj = document.getElementById(id); if( obj != null && obj.checked ) { return true; } return false; } function isEmail( id ) { var obj = document.getElementById(id); if( obj == null && obj.value.length == 0 ) { return true; } var str = obj.value; return (str.lastIndexOf(".") > 2) && (str.indexOf("@") > 0) && (str.lastIndexOf(".") > (str.indexOf("@")+1)); } function isList( id ) { var obj = document.getElementById(id); if( obj != null && obj.value != "" ) { return true; } return false; } /* * O tienen 8 dÃÂgitos o esta vacÃÂo */ function checkRiuClassNumber( id ) { var obj = document.getElementById(id); //console.log("checkRiuClassNumber::" + obj.value); if( obj != null && obj.value.length == 0 ) { return true; } if( obj != null && obj.value.length == 8 ) { return true; } return false; } /* * Password iguales con mas de 6 y menos de 10 digitos */ function checkPasswordRiuClass( id ) { var obj1 = document.getElementById(id); if (id == "psw1"){ var obj2 = document.getElementById("psw2"); } if (id == "psw2"){ var obj2 = document.getElementById("psw1"); } if( obj1.value.length >= 6 && obj1.value.length <= 10 && obj1.value == obj2.value) { return true; } return false; } function addValidation(idp, funcp, msgp) { var o = { func : funcp, id : idp, msg : msgp }; validateArray[ validateArray.length ] = o; } function validame() { var ok = true; var msg = ""; var elem = document.getElementById(validateArray[0].id); //var textError = document.getElementById(elem.form.id + 'E'); var avisos = ""; for( i=0; i < validateArray.length; i++) { var o = validateArray[i]; if( o != null && !o.func(o.id) ) { var element = document.getElementById(o.id); if( element != null ) { fieldFocusOn(element); ok = false; var strHTML = o.msg; avisos += "