function launch(strLink,w,h)
 {
  if (screen) {
   LeftPos = ((screen.width)/2)  - (w/2);
   TopPos  = ((screen.height)/2) - (h/2);
  }
  
  window.open(strLink,'new_win','resizable=yes,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,width='+ w + ',height=' + h + ',top=' + TopPos + ',left=' + LeftPos)
 
 return false; 
}

function launch(strLink,w,h,resize,scroll)
 {
  if (screen) {
   LeftPos = ((screen.width)/2)  - (w/2);
   TopPos  = ((screen.height)/2) - (h/2);
  }
  
  window.open(strLink,'new_win','resizable='+resize+',toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,width='+ w + ',height=' + h + ',top=' + TopPos + ',left=' + LeftPos)
 
  return false;
}

String.prototype.trim=function()
{
 return this.replace(/(^\s*)|(\s*$)/g,"");
}
/*
function NewWindow(mypage,myname,w,h,scroll,resize)
{
    var win=null;
    LeftPosition=(screen.width)?(screen.width-w)/2:100;
    TopPosition=(screen.height)?(screen.height-h)/2:100;

    settings='width='+w+',height='+h+',top='+
    TopPosition+',left='+LeftPosition+',scrollbars='+scroll+
    ',location=no,directories=no,status=no,menubar=no,'+
    'toolbar=no,resizable=' + resize;
    
    win=window.open(mypage,myname,settings);
}*/
function ClientCallback(result, context){
      alert(result);
      result=result.split('~')
      document.getElementById(""+ result[6] + "").innerHTML=result[2]
        //document.getElementById("SaraImg").src=result[3]
     
   }

   function ClientCallbackError(result, context){
      document.getElementById(""+ result[6] + "").innerHTML=result;
   }
   
   function OnenterKey()
   {
     var buttonPressed=window.event.keyCode
   
    if (buttonPressed==13)
    {
       
       GetResponse("arg", 'hlnkAsk');
       window.event.keyCode=0;
      
      }
   }

function chkSpCharactors(sString,sLow,sUpper,sSPCharMustHave,sSPCharCanHave)
{

	function IsAlphaNumeric(sStr){if ((/[^a-z0-9A-Z\s]/.test(sStr))== false){return true;}else{return false;}}
	function IsAlphabets(sStr){if ((/[^a-zA-Z\s]/.test(sStr))== false){return true;}else{return false;}}
	function IsNumeric(sStr){if ((/[^0-9\s]/.test(sStr))== false){return true;}else{return false;}}
	function fnMustHaveRegEx(sRegEx){
		var arrTmp;
		var arrSP = new Array();
		var iCount=0;
		var iCount2=0;
		var iCount3=0;
		var sRegExpStr = "";
		var sStatus;
		
		if (((sSPCharMustHave.slice(0,1))=="A")||((sSPCharMustHave.slice(0,1))=="N")){
			sSPCharMustHave = sSPCharMustHave.slice(2,sSPCharMustHave.length);
		}							

		arrTmp = sSPCharMustHave.split(",");
		arrTmp.sort(); 
		do
		{
			if(arrTmp[iCount2]!=arrTmp[iCount2+1]){
				arrSP[iCount3] = arrTmp[iCount2];
				if (arrSP[iCount3]=="!!"){
					arrSP[iCount3]=","
				}
				iCount3++;					
			}
		iCount2++; 
		}while(iCount2<arrTmp.length);

		do
		{
			sRegExpStr = sRegExpStr + arrSP[iCount] 
			var SingleRegExp = new RegExp("[\c"+arrSP[iCount]+"]", "g");
			if ((SingleRegExp.test(sString))!=true){
				sStatus = "false";
			}
		iCount++;
		}while(iCount<arrSP.length);							

		if (sStatus == "false"){
			return false;					
		}else{
			var GroupRegExp = new RegExp("["+sRegEx + sRegExpStr +"\s]", "g");
			if (GroupRegExp.test(sString)==false){
				return true;
			}else{
				return false;
			}
		} 			
	}
	
	function fnCanHaveRegEx(sRegEx,sType){
		var arrTmp;
		var arrSP = new Array();
		var iCount=0;
		var iCount2=0;
		var iCount3=0;
		var sRegExpStr = "";
		var sStatus;
						
		arrTmp = sSPCharCanHave.split(",");
		arrTmp.sort(); 
		do
		{
			if(arrTmp[iCount2]!=arrTmp[iCount2+1]){
				arrSP[iCount3] = arrTmp[iCount2];
				if (arrSP[iCount3]=="!!"){
					arrSP[iCount3]=","
				}

				iCount3++;					
			}
		iCount2++; 
		}while(iCount2<arrTmp.length);
								
		do
		{
			sRegExpStr = sRegExpStr + arrSP[iCount] 		
			var SingleRegExp = new RegExp("[\c"+arrSP[iCount]+"]", "g");
			
			if ((SingleRegExp.test(sString))==true){
				sStatus = "success";
			}
		iCount++;
		}while(iCount<arrSP.length);
			
		if (sStatus=="success"){
			
			var GroupRegExp = new RegExp("["+sRegEx+ sRegExpStr +"\s]", "g");
			if (GroupRegExp.test(sString)==false){
				return true;
			}else{
				return false;
			}
		}else{
		
			if (sType=="A"){
				return (IsAlphabets(sString));
			}else{
				if (sType=="N"){
					return (IsNumeric(sString));
				}else{
					if(sType=="AN"){
						return (IsAlphaNumeric(sString));
					}
				}
			}
		}
	}

	function fnCheckMustCan(sType){
		var arrTmp;
		var arrSP = new Array();
		var iCount=0;
		var iCount2=0;
		var iCount3=0;
		var sRegExpStr = "";
		var sStatus;
		
		if (((sSPCharMustHave.slice(0,1))=="A")||((sSPCharMustHave.slice(0,1))=="N")){
			sSPCharMustHave = sSPCharMustHave.slice(2,sSPCharMustHave.length);
		}
		
		arrTmp = sSPCharMustHave.split(",");
		arrTmp.sort(); 
		do
		{
			if(arrTmp[iCount2]!=arrTmp[iCount2+1]){
				arrSP[iCount3] = arrTmp[iCount2];
				if (arrSP[iCount3]=="!!"){
				arrSP[iCount3]=","
				}

				iCount3++;					
			}
		iCount2++; 
		}while(iCount2<arrTmp.length);

		do
		{
			sRegExpStr = sRegExpStr + "," + arrSP[iCount] 		
			var SingleRegExp = new RegExp("[\c"+arrSP[iCount]+"]", "g");
									
			if ((SingleRegExp.test(sString))!=true){
				sStatus = "false";
			}else{
				sStatus = "true";
			}
		iCount++;
		}while(iCount<arrSP.length);
		
		if (sType=="A"){
			if (sStatus == "false"){
				return false;					
			}else{
				sSPCharCanHave = (sSPCharCanHave + sRegExpStr);
				return(fnCanHaveRegEx("^a-zA-Z","A"));
			}			
		}else{
			if (sType=="N"){
				if (sStatus == "false"){
					return false;					
				}else{
					sSPCharCanHave = (sSPCharCanHave + sRegExpStr);
					return(fnCanHaveRegEx("^0-9","N"));
				}			
			}else{
				if (sStatus == "false"){
					return false;					
				}else{
					sSPCharCanHave = (sSPCharCanHave + sRegExpStr);
					return(fnCanHaveRegEx("^a-z0-9A-Z","AN"));
				}			
			}
		}
	}

	function fnMain(){
		if (((sSPCharMustHave=="")||(sSPCharMustHave==null))&& ((sSPCharCanHave=="")||(sSPCharCanHave==null))){
			return (IsAlphaNumeric(sString));
		}else{
			if (((sSPCharMustHave!="")||(sSPCharMustHave!=null))&& ((sSPCharCanHave=="")||(sSPCharCanHave==null))){			
				if (sSPCharMustHave.length<=2){
					if ((sSPCharMustHave.slice(0,1))=="A"){
						return (IsAlphabets(sString));
					}else{
						if ((sSPCharMustHave.slice(0,1))=="N"){
							return (IsNumeric(sString));
						}else{

						var charRegExp;
						if (sSPCharMustHave.slice(0,2)=="\\\\"){
							charRegExp = new RegExp("[^a-zA-Z0-9"+ sSPCharMustHave.slice(0,2) +"\s]", "g");
						}else{
							if (sSPCharMustHave.slice(0,2)=="!!"){
								charRegExp = new RegExp("[^a-zA-Z0-9"+ "," +"\s]", "g");
							}else{
								charRegExp = new RegExp("[^a-zA-Z0-9"+ sSPCharMustHave.slice(0,1) +"\s]", "g");
							}
						}
						
							var tmpval = charRegExp.test(sString);
							if (tmpval==false){
								var charRegExp2;
								if (sSPCharMustHave.slice(0,2)=="\\\\"){
									charRegExp2 = new RegExp("["+ sSPCharMustHave.slice(0,2) +"\s]", "g");
								}else{
									if(sSPCharMustHave.slice(0,2)=="!!"){
										var charRegExp2 = new RegExp("[\c"+","+"]", "g");
									}else{
										var charRegExp2 = new RegExp("[\c"+sSPCharMustHave.slice(0,1)+"]", "g");
									}
								}
								return(charRegExp2.test(sString));
							}else{
								return false;
							}
						}			
				}
				}else{
					if ((sSPCharMustHave.slice(0,1))=="A"){
						return(fnMustHaveRegEx("^a-zA-Z"));	
					}else{
						if ((sSPCharMustHave.slice(0,1))=="N"){
							return(fnMustHaveRegEx("^0-9"));
						}else{
							return(fnMustHaveRegEx("^a-z0-9A-Z"));	 
						}			
					}
				}	
			}else{
				if (((sSPCharMustHave=="")||(sSPCharMustHave==null))&& ((sSPCharCanHave!="")||(sSPCharCanHave!=null))){			
					return(fnCanHaveRegEx("^a-z0-9A-Z","AN"));
				}else{
						
					var arrTmp;
					var arrTmp2;
					var arrSP = new Array();
					var arrCanSP = new Array();
					var iCount2=0;
					var iCount3=0;
					var sFound="";
						
					arrTmp = sSPCharMustHave.split(",");
					arrTmp2 = sSPCharCanHave.split(",");
					arrTmp.sort(); 
					arrTmp2.sort();
					do
					{
						if(arrTmp[iCount2]!=arrTmp[iCount2+1]){
							arrSP[iCount3] = arrTmp[iCount2];
							if (arrSP[iCount3]=="!!"){
							arrSP[iCount3]=","
							}
						iCount3++;					
						}
					iCount2++; 
					}while(iCount2<arrTmp.length);

					iCount2 = 0;
					iCount3 = 0;
					do
					{
						if(arrTmp2[iCount2]!=arrTmp2[iCount2+1]){
							arrCanSP[iCount3] = arrTmp2[iCount2];
							if (arrSP[iCount3]=="!!"){
							arrSP[iCount3]=","
							}
						iCount3++;					
						}
					iCount2++; 
					}while(iCount2<arrTmp2.length);

					iCount2 = 0;
					iCount3 = 0;
					do
					{
						do
						{
							if (arrSP[iCount2]==arrCanSP[iCount3]){
								sFound="success";	
							}
						iCount3++; 
						}while(iCount3<arrCanSP.length);
						iCount3 = 0;
					iCount2++; 
					}while(iCount2<arrSP.length);

					if (sFound=="success"){
						return false;
					}else{
						if (sSPCharMustHave.length<=2){
							if ((sSPCharMustHave.slice(0,1))=="A"){
								return(fnCanHaveRegEx("^a-zA-Z","A"));
							}else{
								if ((sSPCharMustHave.slice(0,1))=="N"){
									return(fnCanHaveRegEx("^0-9","N"));
								}else{
									var SingleRegExp = new RegExp("[\c"+sSPCharMustHave+"]", "g");
									if ((SingleRegExp.test(sString))!=true){
										return false;
									}else{
										sSPCharCanHave = (sSPCharCanHave + "," + sSPCharMustHave);
										return(fnCanHaveRegEx("^a-z0-9A-Z","AN"));
									}
								}
							}
						}else{
							if ((sSPCharMustHave.slice(0,1))=="A"){
								return(fnCheckMustCan("A"));
							}else{
								if ((sSPCharMustHave.slice(0,1))=="N"){
									return(fnCheckMustCan("N"));
								}else{
									return(fnCheckMustCan("AN"));									
								}
							}
						}
					}
				}
			}
		}
	}

	if((sString!="")&&(sString!=null)){
		if(((sLow=="")||(sLow==null))&&((sUpper=="")||(sUpper==null))){
			return(fnMain());				 		
		}else{
			if(((sLow!="")||(sLow!=null))&&((sUpper!="")||(sUpper!=null))){
				if ((sString.length>=sLow)&&(sString.length<=sUpper)){
					return(fnMain());
				}else{
					return false;
				}
			}else{
				return false;
			}
		}
	}else{
	return false;
	}
}

   function checkexpand(arg) {
        var element
        if (!(arg))
          element = event.srcElement;
        else
          element = arg
        if ("" != element.id) {
          var ch = element.id + "sub";
          var el = document.all[ch];
          if (null!=el) el.style.display = "none" == el.style.display ? "" : "none"
          event.returnValue=false;
        }
      }

      function closediv(){
        if(document.all){
          checkexpand(collapsing)
        }
      }
      

function CheckSpecialChar(strText){
 var iChars = "!@#$%^&*()=-[]\\\';,./{}|\":<>?";
  
  for (var i = 0; i < strText.length; i++) {
  	if (iChars.indexOf(strText.charAt(i)) != -1) {
  	    return false;
  	}
 }
}

function checkemail(str){
  var aSplitedVal = str.split('@');
  if(aSplitedVal.length>2){
     return false;
  }
  //Modified by Dinesh Sharma on 15June2008 E-0354-CRIS-ES-ETISALAT ENHANCEMENT PHASE 1
 ///Increased the length to 4 (Hafsa.smile@emirates.xxxx)
  var filter=/^.+@.+\..{2,4}$/
//End Dinesh Sharma
  if (!filter.test(str))
     return false;
  else
     return true;
}


function trimAll(sString){
        while (sString.substring(0,1) == ' ')
            {
            sString = sString.substring(1, sString.length);
            }
         while (sString.substring(sString.length-1, sString.length) == ' ')
            {
            sString = sString.substring(0,sString.length-1);
            }
        return sString
}        

function CheckNumber(strText){
 var iChars = "+0123456789 ";
  
  for (var i = 0; i < strText.length; i++) {
  	if (iChars.indexOf(strText.charAt(i)) == -1) {
   	return false;
  	}
 }
}

function CheckSpecialCharStaffNumbers(strText){
 var iChars = "!@#$%^&*()=-[]\\\';,./{}|\":<>?+";
  
  for (var i = 0; i < strText.length; i++) {
  	if (iChars.indexOf(strText.charAt(i)) != -1) {
  	//alert ("Your username has special characters. \nThese are not allowed.\n Please remove them and try again.");
  	return false;
  	}
 }
}

function CheckSpecialCharWithNumbers(strText){
 var iChars = "!@#$%^&*()=-[]\\\';,./{}|\":<>?+0123456789";
  
  for (var i = 0; i < strText.length; i++) {
  	if (iChars.indexOf(strText.charAt(i)) != -1) {
  	//alert ("Your username has special characters. \nThese are not allowed.\n Please remove them and try again.");
  	return false;
  	}
 }
}

function CheckSpecialCharEmail(strText){
 var iChars = "!#$%^&*()=[]\\\';,/{}|\":<>?";
  
  for (var i = 0; i < strText.length; i++) {
  	if (iChars.indexOf(strText.charAt(i)) != -1) {
  	//alert ("Your username has special characters. \nThese are not allowed.\n Please remove them and try again.");
  	
  	return false;
  	}
 }
}

function doValidateEgateForm()
 {
    
    var theForm = document.forms[1];
    var objSubmitType='<%=objSubmitType.ClientID%>';
    
    if (document.forms[1].chkEgate.checked)
        document.forms[1].submit();
   
     else
     alert("Please check the Checkbox")
    
    
 }
 
 
 var gAutoPrint = false; // Flag for whether or not to automatically call the print function
 function printSpecial(sName,sNumber,sHeading,w,h)
		{
			if (document.getElementById != null)
			{
				var html = '<HTML>\n<HEAD>\n';
				
				if (document.getElementsByTagName != null)
				{
					var headTags = document.getElementsByTagName("head");
					if (headTags.length > 0)
						html += headTags[0].innerHTML;
				}
				
				html += '\n</HE' + 'AD>\n<BODY>\n';
				html += '<table border="0" cellspacing="0" cellpadding="0" width="360" align="left"><tr><td>';
				html += '<table border="0" cellspacing="0" cellpadding="0" width="350" align="left">';
				html += '<tr><td><b class="bigDrkBlue">&nbsp;&nbsp; ' + sHeading + '</b><br></td></tr>';
				html += '<tr><td><br>';
				html += '<b class="smBoldTxtDrkBlue">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Name:</b>&nbsp;<b class="smTxtDrkBlue">'+ sName +'</b><br>';
				html += '</td></tr><tr><td><br><b class="smBoldTxtDrkBlue">';
				html += '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Skywards membership no:</b>&nbsp;<b class="smTxtDrkBlue">';
				html += ConfigurationManager.AppSettings("sCardPrefix") + sNumber + '</b><br><br></td></tr></table></td></tr><tr><td>';
				var printReadyElem = document.getElementById("printReady");
				
				if (printReadyElem != null)
				{		
				       var shtml=printReadyElem.innerHTML;
				       if (sHeading=='Account  Summary') {
				        shtml=shtml.replace('border=0','border="1"');
						shtml=shtml.replace('border="0"','border="1"');
						}
						html += shtml;
						
				}
				else
				{
					alert("Could not find the printReady section in the HTML");
					return;
				}
				
				html +='</td></tr><tr><td><a href="#" onclick="javascript:print()"><img src="i/btn_db_print.gif" width="60" height="18" align="right" border="0"></a></td></tr></table>';
				
				
				html += '\n</BO' + 'DY>\n</HT' + 'ML>';
				if (screen) {
					LeftPos = ((screen.width)/2)  - (w/2);
					TopPos  = ((screen.height)/2) - (h/2);
						}
				var printWin =	window.open("",'new_win','resizable=no,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,width='+ w + ',height=' + h + ',top=' + TopPos + ',left=' + LeftPos)
				
				//var printWin = window.open("","printSpecial");
				printWin.document.open();
				printWin.document.write(html);
				printWin.document.close();
				if (gAutoPrint)
					printWin.print();
			}
			else
			{
				alert("Sorry, the print ready feature is only available in modern browsers.");
			}
		}function IsAlphabets(sStr)
{
    if ((/[^a-zA-Z\s]/.test(sStr))== false)
        {
            return true;
        }
    else
        {   
            return false;
        }
}
  
function IsNumeric(sStr)
{
    if ((/[^0-9\s]/.test(sStr))== false)
        {   
            return true;
        }
        else
        {
            return false;
        }
}

function IsAlphaNumeric(sStr)
{
    if ((/[^a-z0-9A-Z\s]/.test(sStr))== false)
    {
        return true;
    }
    else
    {
        return false;
    }
}
function Trim(stringToTrim) 
{
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}

function RemoveComma(stringToTrim) 
{
	return stringToTrim.replace(/\,/g,'');
}

function AddComma(number) 
{
    number = '' + number;
    if (number.length > 3) 
    {
        var mod = number.length % 3;
        var output = (mod > 0 ? (number.substring(0,mod)) : '');
        for (i=0 ; i < Math.floor(number.length / 3); i++) 
        {
            if ((mod == 0) && (i == 0))
            output += number.substring(mod+ 3 * i, mod + 3 * i + 3);
            else
            output+= ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);
        }
        return (output);
    }
    else return number;
}

