function trim(a){var d=/^ */;a=(""+a).replace(d,"");d=/ *$/;return a.replace(d,"")}function ShowAlert(a,d,c){alert(a);if(!d.elements[c].disabled&&!d.elements[c].length){d.elements[c].type!="hidden"&&d.elements[c].focus();d.elements[c].options||d.elements[c].select()}return false}function parse_int(a){a=(""+a).replace(/^0*/,"");return parseInt(a)}function GetValue(a){if(a.length&&!a.options){for(var d=0;d<a.length;d++)if(a[d].checked)return a[d].value;return""}else return a.value}
function is_leap_year(a){return a%4==0&&!(a%100==0&&a%400!=0)}function isValidEmail(a){return/^ *([a-z0-9_-]+\.)*[a-z0-9_-]+@(([a-z0-9-]+\.)+(com|net|org|mil|edu|gov|arpa|info|biz|inc|name|[a-z]{2})|[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}) *$/.test(a.toLowerCase())}function isValidPhone(a){return/^\(?[0-9]{3}\)?[\-\. ]*[0-9]{3}[\-\. ]*[0-9]{4}$/.test(a)}function isValidNumber(a){return/^[0-9]+(\.?[0-9]+)?$/.test(a)}
function isValidDate(a){return/^([0-9]{4})\-([0-9]{1,2})\-([0-9]{1,2})$/.test(a)}function isValidDateTime(a){return/^([0-9]{4})\-([0-9]{1,2})\-([0-9]{1,2}) ([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2})$/.test(a)}function getNumberFromString(a){a=""+a;if(a=="")return a;return a=parseInt(a.replace(/^0*/,""))}
function testDate(a,d){var c=0,f=0,g=0,h=0,i=0,j=0,b="",e="";e="";e=a.split(" ");if(e.length>0){b=e[0].split("-");if(b.length>0)c=b[0];if(b.length>1)f=b[1];if(b.length>2)g=b[2]}b=[];b[1]=31;b[2]=is_leap_year(c)?29:28;b[3]=31;b[4]=30;b[5]=31;b[6]=30;b[7]=31;b[8]=31;b[9]=30;b[10]=31;b[11]=30;b[12]=31;c=getNumberFromString(c);f=getNumberFromString(f);g=getNumberFromString(g);if(c==""||isNaN(c)||c<1900)return"y";if(f==""||isNaN(f)||f<1||f>12)return"m";if(g==""||isNaN(g)||g<1||g>b[parseInt(f)])return"d";
if(d!=true){c=/^([0-9]{4})\-([0-9]{1,2})\-([0-9]{1,2})$/;if(!c.test(a))return"_";return""}if(e.length>1){e=e[1].split(":");if(e.length>0)h=e[0];if(e.length>1)i=e[1];if(e.length>2)j=e[2]}h=getNumberFromString(h);i=getNumberFromString(i);j=getNumberFromString(j);if(h==""||isNaN(h)||h<0||h>23)return"h";if(i==""||isNaN(i)||i<0||i>59)return"i";if(j==""||isNaN(j)||j<0||j>59)return"s";c=/^([0-9]{4})\-([0-9]{1,2})\-([0-9]{1,2}) ([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2})$/;if(!c.test(a))return"_";return""};
