﻿
String.prototype.trim=function(){return this.replace(/^\s+/,'').replace(/\s+$/,'');}
function validatedSpecialChars(obj){var Ischar=true;var Char;var ValidChars="@!#$%^&*+=[]';{}|\":<>?";var textBXValue=$j(obj).val();for(i=0;i<textBXValue.length;i++){Char=textBXValue.charAt(i);if(ValidChars.indexOf(Char)!=-1){return true;}}}
function ValidateEmail(controlObj){var strEmail=controlObj.val().trim();var emailPattern=/^\w+([\+\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;return emailPattern.test(strEmail);}
function emailCheck(emailStr){var checkTLD=1;var emailPat=/^(.+)@(.+)$/;var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";var validChars="\[^\\s"+specialChars+"\]";var quotedUser="(\"[^\"]*\")";var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;var InvalidValidChars="`~!#$%^&*()+=-[]\\\';,/{}|\":<>?";var atom=validChars+'+';var word="("+atom+"|"+quotedUser+")";var emailRegPat=new RegExp("^"+word+"(\\."+word+")*$");var domainPat=new RegExp("^"+atom+"(\\."+atom+")*$");var matchArray=emailStr.match(emailPat);if(matchArray==null){return false;}
var email=matchArray[1];var domain=matchArray[2];for(i=0;i<email.length;i++){Char=email.charAt(i);if(InvalidValidChars.indexOf(Char)!=-1){return false;}}
if(email.match(emailRegPat)==null){return false;}
var atomPat=new RegExp("^"+atom+"$");var domArr=domain.split(".");var len=domArr.length;for(i=0;i<len;i++){if(domArr[i].search(atomPat)==-1){return false;}}
if(len<2){return false;}
return true;}
function IsNumeric(input){return(input-0)==input&&input.length>0;}
function ValidateNumericSymbol(input){var inValidChars="-+";for(i=0;i<input.length;i++){Char=input.charAt(i);if(inValidChars.indexOf(Char)!=-1){return false;}}
return true;}
var dtCh="/";var minYear=1900;var maxYear=2100;function isInteger(s){var i;for(i=0;i<s.length;i++){var c=s.charAt(i);if(((c<"0")||(c>"9")))return false;}
return true;}
function stripCharsInBag(s,bag){var i;var returnString="";for(i=0;i<s.length;i++){var c=s.charAt(i);if(bag.indexOf(c)==-1)returnString+=c;}
return returnString;}
function daysInFebruary(year){return(((year%4==0)&&((!(year%100==0))||(year%400==0)))?29:28);}
function DaysArray(n){for(var i=1;i<=n;i++){this[i]=31
if(i==4||i==6||i==9||i==11){this[i]=30}
if(i==2){this[i]=29}}
return this}
function isDate(dtStr){var daysInMonth=DaysArray(12)
var pos1=dtStr.indexOf(dtCh)
var pos2=dtStr.indexOf(dtCh,pos1+1)
var strMonth=dtStr.substring(0,pos1)
var strDay=dtStr.substring(pos1+1,pos2)
var strYear=dtStr.substring(pos2+1)
strYr=strYear
if(strDay.charAt(0)=="0"&&strDay.length>1)strDay=strDay.substring(1)
if(strMonth.charAt(0)=="0"&&strMonth.length>1)strMonth=strMonth.substring(1)
for(var i=1;i<=3;i++){if(strYr.charAt(0)=="0"&&strYr.length>1)strYr=strYr.substring(1)}
month=parseInt(strMonth)
day=parseInt(strDay)
year=parseInt(strYr)
if(pos1==-1||pos2==-1){return false}
if(strMonth.length<1||month<1||month>12){return false}
if(strDay.length<1||day<1||day>31||(month==2&&day>daysInFebruary(year))||day>daysInMonth[month]){return false}
if(strYear.length!=4||year==0||year<minYear||year>maxYear){return false}
if(dtStr.indexOf(dtCh,pos2+1)!=-1||isInteger(stripCharsInBag(dtStr,dtCh))==false){return false}
return true}
