var SaibCHVersion="SaibCH.0014 14Aug08 Channel Validators";SaibVCStore(SaibCHVersion);var SaibCHAreaCodes="=01.L"+"=02.L"+"=03.L"+"=04.L"+"=050.M"+"=051.M"+"=052.M"+"=053.M"+"=054.M"+"=055.M"+"=056.M"+"=059.M"+"=06.L"+"=07.L";var SaibCHDnsNames=".COM"+".ORG"+".NET"+".MIL"+".GOV"+".EDU"+".AERO"+".ASIA"+".BIZ"+".CAT"+".COOP"+".INFO"+".JOBS"+".MOBI"+".NAME"+".PRO"+".TEL"+".INT"+".TRAVEL"+".MUSEUM"+".<End>";function __CHCheckEmail(TagObject,TagName,TagOption,IsPop){var ARAB=false;UpTagOption=TagOption.toUpperCase();if(SaibFVTester==true)UpTagOption=SaibFVTestOp;if(UpTagOption.indexOf('ARAB')>=0)ARAB=true;TagObject.value=SaibMDTrim(TagObject.value);if(SaibFVOnBlur==false&&TagObject.value.length>0){var Mask=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{0,128})+$/;var j=0;var k=0;var kca=0,kdt=0,knd=0;var ch="";var ux=TagObject.value.toUpperCase();for(j=0;j<ux.length;j++){ch=ux.charAt(j);if(ch==".")kdt++;if(ch=="@")kca++;if(j==(ux.length-1)&&(ch=="."||ch=="@"))knd++;if(!(ch=="."||ch=="-"||ch=="_"||ch=="@"||(ch>="A"&&ch<="Z")||(ch>="0"&&ch<="9")))k++;}if(k>0||ux.length>127){if(IsPop==false)return-1;if(ARAB==false)alert(TagName+" contains invalid or too many characters\nPlease correct");else alert(TagName+" يحتوي على حروف غير صحيحة\nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}if(kdt<1||!(kca==1)||knd>0||!Mask.test(TagObject.value)){if(IsPop==false)return-2;if(ARAB==false)alert(TagName+" has invalid structure\nPlease correct");else alert("تركيبة "+TagName+"  غير صحيحة\nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}var ix=TagObject.value.lastIndexOf(".");var fx=TagObject.value.substring(ix,TagObject.value.length);if((fx.length-1)>6){if(IsPop==false)return-2;if(ARAB==false)alert(TagName+" has invalid structure\nPlease correct");else alert("تركيبة "+TagName+"  غير صحيحة\nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}ux=fx.toUpperCase();var dx=SaibCHDnsNames.indexOf(ux+".");if((fx.length-1)==2)dx=0;for(j=1;j<ux.length;j++){ch=ux.charAt(j);if(ch<"A"||ch>"Z")k++;}if(k>0||dx<0){if(IsPop==false)return-3;if(ARAB==false)alert(TagName+" domain ["+fx+"] must be alphabetic or is unknown\nPlease correct");else alert(" آخر مقطع في "+TagName+"  ["+fx+"] يجب أن يتكون من حروف\nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}if(IsPop==false)return 0;}}function SaibCHCheckEmail(TagObject,TagName,TagOption,IsPop){var RC=0;if(IsPop==false){RC=__CHCheckEmail(TagObject,TagName,TagOption,IsPop);if(SaibFVTester==true)alert("CHCheckEmail returned "+RC);return RC;}else __CHCheckEmail(TagObject,TagName,TagOption,IsPop);}function __CHExtFixUp(RawStr){var Extns=new Array("EXTN","EXT","EX","XTN","XT","X","LOC","LOK");var CooStr=""+RawStr.toUpperCase();var i,j,m,n;var k=Extns.length;var n=CooStr.length;if(n==0)return""+CooStr;for(j=0;j<k;j++){i=CooStr.indexOf(Extns[j]);if(i>=0){m=Extns[j].length;if(i==0){if(m<n)CooStr="+"+CooStr.substring(m);else CooStr="+";break;}if((i+m)>n){CooStr=""+CooStr(0,i)+"+";break;}var Front=""+CooStr.substring(0,i);var Back=""+CooStr.substring(i+m);CooStr=""+Front+"+"+Back;break;}}return""+CooStr;}function __CHCheckKsaPhone(TagObject,TagName,TagOption,IsPop){var ARAB=false;var CELL=true;var POTS=true;var PIDD=true;var EXTN=false;var MaxExt=5;UpTagOption=TagOption.toUpperCase();if(SaibFVTester==true)UpTagOption=SaibFVTestOp;if(UpTagOption.indexOf('ARAB')>=0)ARAB=true;if(UpTagOption.indexOf('NOIDD')>=0)PIDD=false;if(UpTagOption.indexOf('NOCELL')>=0){CELL=false;POTS=true;}else if(UpTagOption.indexOf('CELL')>=0){CELL=true;POTS=false;}if(UpTagOption.indexOf('NOEXT')>=0){EXTN=false;}else if(UpTagOption.indexOf('EXT')>=0&&POTS){EXTN=true;}TagObject.value=SaibMDTrim(TagObject.value);if(SaibFVOnBlur==false&&TagObject.value.length>0){var j=0;var k=0;var p=0;var isDig=false;var isExt=false;var ch="";var ux=TagObject.value.toUpperCase();ux=""+__CHExtFixUp(""+ux);var uv="=";var dn="=";var dx="=";var Sz=(CELL)?15:14;for(j=0;j<ux.length;j++){ch=ux.charAt(j);if(isDig&&ch=="+")isExt=true;if(ch=="("||ch==")"||ch=="-"||ch=="."||ch==" "||ch=="/"||(j==0&&ch=="+")||(j!=0&&ch=="+"&&EXTN))p++;else{if(ch>="0"&&ch<="9"){isDig=true;uv+=ch;if(isExt)dx+=ch;else dn+=ch;}else k++;}}if(EXTN)uv=dn;if(EXTN==false&&dx.length>1){if(IsPop==false)return-6;if(ARAB==false)alert(TagName+" includes an extension number\n"+"Extension "+dx.substring(1)+" not allowed\nPlease correct");else alert(TagName+" يحتوي على رقم تحويلة\n"+"التحويلة "+dx.substring(1)+" غير مسموحة\nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}if(k>0){if(IsPop==false)return-1;if(ARAB==false)alert(TagName+" contains invalid characters\nPlease correct");else alert(TagName+" يحتوي على حروف غير صحيحة\nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}if(((uv.length-1)<=15&&(uv.length-1)>=13)&&uv.substring(0,6)=="=00966")uv="="+uv.substring(6,uv.length);if(((uv.length-1)<=14&&(uv.length-1)>=11)&&uv.substring(0,4)=="=966")uv="="+uv.substring(4,uv.length);if(((uv.length-1)==10||(uv.length-1)==9)&&uv.charAt(1)=="0")uv="="+uv.substring(2,uv.length);if((uv.length-1)!=8&&(uv.length-1)!=9){if(IsPop==false)return-2;if(ARAB==false)alert(TagName+" contains an incorrect number of digits"+"\nEnter your area code and number\nPlease correct");else alert(TagName+" يحتوي على أرقام غير صحيحة"+"\nالرجاء إدخال رمز المنطقة والرقم\nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}var AreaCode=((uv.length-1)==9)?uv.substring(1,3):uv.substring(1,2);var FindCode="=0"+AreaCode+".";k=SaibCHAreaCodes.indexOf(FindCode);if(k<0){if(IsPop==false)return-3;if(ARAB==false)alert(TagName+" area code [0"+AreaCode+"] invalid\nPlease correct");else alert("رمز المنطقة  [0"+AreaCode+"] في "+TagName+" غير صحيح \nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}var CodeType=SaibCHAreaCodes.substring(k,SaibCHAreaCodes.length);k=CodeType.indexOf(".");CodeType=CodeType.charAt(k+1);if(CodeType=="M"&&CELL==false){if(IsPop==false)return-4;if(ARAB==false)alert(TagName+" cannot be a Mobile phone number\nPlease correct");else alert(TagName+" لا يمكن أن يحتوي على رقم الهاتف الجوال \nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}if(CodeType=="M"&&CELL&&dx.length>1){if(IsPop==false)return-7;if(ARAB==false)alert(TagName+" includes an extension number\n"+"Mobile cannot have an extension "+dx.substring(1)+"\nPlease correct");else alert("["+TagName+" يحتوي على رقم تحويلة\n"+"لا يمكن لرقم الجوال أن يحتوي على رقم تحويلة "+dx.substring(1)+"\nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}if(CodeType=="L"&&POTS==false){if(IsPop==false)return-5;if(ARAB==false)alert(TagName+" must be a Mobile phone number\nPlease correct");else alert(TagName+" يجب أن يكون رقم الهاتف الجوال \nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}if(dx.length>(MaxExt+1)){if(IsPop==false)return-8;if(ARAB==false)alert(TagName+" includes an extension number\n"+"Extension "+dx.substring(1)+" exceeds "+MaxExt+" digits\nPlease correct");else alert(TagName+" يحتوي على رقم تحويلة\n"+"رقم التحويلة "+dx.substring(1)+" يجب أن لا يتعدى "+MaxExt+" أرقام\nالرجاء التصحيح");TagObject.focus();TagObject.select();return;}var IddTxt=(PIDD)?"+966-":"0";if(CodeType=="M")TagObject.value=IddTxt+uv.substring(1,3)+"-"+uv.substring(3,uv.length);else TagObject.value=IddTxt+uv.substring(1,2)+"-"+uv.substring(2,uv.length);if(dx.length>1)TagObject.value=""+TagObject.value+"+"+dx.substring(1);if(IsPop==false)return 0;}}function SaibCHCheckKsaPhone(TagObject,TagName,TagOption,IsPop){var RC=0;if(IsPop==false){RC=__CHCheckKsaPhone(TagObject,TagName,TagOption,IsPop);if(SaibFVTester==true)alert("CHCheckKsaPhone returned "+RC);return RC;}else __CHCheckKsaPhone(TagObject,TagName,TagOption,IsPop);}function SaibCHOnBlurEmail(TagObject,TagName,TagOption){__BSN();return SaibCHCheckEmail(TagObject,TagName,TagOption,true);}function SaibCHOnBlurKsaPhone(TagObject,TagName,TagOption){__BSN();return SaibCHCheckKsaPhone(TagObject,TagName,TagOption,true);}function TrackCHOnBlurEmail(TagObject,TagName,TagOption){__BSN();if(SaibSDisChanged(TagObject))return SaibCHOnBlurEmail(TagObject,TagName,TagOption);}function TrackCHOnBlurKsaPhone(TagObject,TagName,TagOption){__BSN();if(SaibSDisChanged(TagObject))return SaibCHOnBlurKsaPhone(TagObject,TagName,TagOption);}