/************************************************************************************************************************/
function ValidateForm(oForm) {
	/*
	* 1. sConstraints[0] : Validation type value required or not.
	* 2. sConstraints[1] : Type of validation, numeric, float, string, email, no special etc.
	* 3. sConstraints[2] : Message against validation.
	*/
	for(var index = 0; index < oForm.length; index++) {
		var sConstraints =  oForm.elements[index].getAttribute("validate");
		if(!IsEmpty(sConstraints)) {
			sConstraints = sConstraints.split("|");
			switch(sConstraints[0]) {
			  /***********************************************************************************************************/
				case "REQUIRED":
					switch(sConstraints[1]) {
						case "INT":
						  if(sConstraints.length > 3) {
						    if(!Validate("INT",oForm.elements[index],sConstraints[3])) return false;
						    var oElement = oForm.elements[index];
						    if(parseInt(oElement.value) > parseInt(sConstraints[2])) {
						      alert(sConstraints[3]); oElement.focus(); return false;
						      }
						    }
						  else {
						    if(!Validate("INT",oForm.elements[index],sConstraints[2])) return false; 
						    }
					    break;
						case "URL":
						  if(!Validate("URL",oForm.elements[index],sConstraints[2])) return false; break;
						case "ACTIVITYDATE":
						  if(!Validate("ACTIVITYDATE",oForm.elements[index],sConstraints[2])) return false; break;
						case "CONTACTDATE":
						  if(!Validate("CONTACTDATE",oForm.elements[index],sConstraints[2])) return false; break;
						case "NAME":
						  if(!Validate("NAME",oForm.elements[index],sConstraints[2])) return false; break;
						case "NOSPL":
						  if(!Validate("NOSPL",oForm.elements[index],sConstraints[2])) return false; break;
						case "EMAIL":
						  if(!Validate("EMAIL",oForm.elements[index],sConstraints[2])) return false; break;
						case "FLOAT":
						  if(!Validate("FLOAT",oForm.elements[index],sConstraints[2])) return false; break;
						case "LOGIN": 
						  if(!Validate("LOGIN",oForm.elements[index],sConstraints[2])) return false; break;
						case "STRING":
						  if(!Validate("STRING",oForm.elements[index],sConstraints[2])) return false; break;
						case "SELECT":
						  if(!Validate("SELECT",oForm.elements[index],sConstraints[2])) return false; break;
						case "PASSWORD":
						  if(!Validate("PASSWORD",oForm.elements[index],sConstraints[2])) return false; break;
						case "NOTBLANK":
						  if(!Validate("NOTBLANK",oForm.elements[index],sConstraints[2])) return false; break;
						case "OFFICEPHONE":
						  if(!Validate("OFFICEPHONE",oForm.elements[index],sConstraints[2])) return false; break;
						case "MOBILEPHONE":
						  if(!Validate("MOBILEPHONE",oForm.elements[index],sConstraints[2])) return false; break;
						case "ZIP":
						    if(!Validate("ZIP",oForm.elements[index],sConstraints[2])) return false; break;
						case "TIME":
						    if(!Validate("TIME",oForm.elements[index],sConstraints[2])) return false; break;
						case "DATE":
						    if(!Validate("DATE",oForm.elements[index],sConstraints[2])) return false; break;      
						 case "FIRSTBLANK":
						  if(!Validate("FIRSTBLANK",oForm.elements[index],sConstraints[2])) return false; break;   
						    
						case "IMAGE_FILE":
							//if(!Validate("IMAGE_FILE",oForm.elements[index],sConstraints[2])) return false; break;
						case "FILE_NAME":
							//if(!Validate("IMAGE_FILE",oForm.elements[index],sConstraints[2])) return false; break;
						case "FILE_PATH":
							//if(!Validate("FILE_PATH",oForm.elements[index],sConstraints[2])) return false; break;
					}
					break;
			  /***********************************************************************************************************/
				case "OPTIONAL":
					if(!IsEmpty(oForm.elements[index].value)) {
					  switch(sConstraints[1]) {
						case "INT":
						  if(sConstraints.length > 3) {
						    if(!Validate("INT",oForm.elements[index],sConstraints[3])) return false;
						    var oElement = oForm.elements[index];
						    if(parseInt(oElement.value) > parseInt(sConstraints[2])) {
						      alert(sConstraints[3]); oElement.focus(); return false;
						      }
						    }
						  else {
						    if(!Validate("INT",oForm.elements[index],sConstraints[2])) return false; 
						    }
					    break;
						  case "URL":
						    if(!Validate("URL",oForm.elements[index],sConstraints[2])) return false; break;
						  case "CONTACTDATE":
						    if(!Validate("CONTACTDATE",oForm.elements[index],sConstraints[2])) return false; break;
						  case "NAME":
						    if(!Validate("NAME",oForm.elements[index],sConstraints[2])) return false; break;
						  case "NOSPL":
						    if(!Validate("NOSPL",oForm.elements[index],sConstraints[2])) return false; break;
						  case "EMAIL":
						    if(!Validate("EMAIL",oForm.elements[index],sConstraints[2])) return false; break;
						  case "FLOAT":
						    if(!Validate("FLOAT",oForm.elements[index],sConstraints[2])) return false; break;
						  case "STRING":
						    if(!Validate("STRING",oForm.elements[index],sConstraints[2])) return false; break;
						  case "SELECT":
						    if(!Validate("SELECT",oForm.elements[index],sConstraints[2])) return false; break;
						  case "NOTBLANK":
						    if(!Validate("NOTBLANK",oForm.elements[index],sConstraints[2])) return false; break;
						  case "OFFICEPHONE":
						    if(!Validate("OFFICEPHONE",oForm.elements[index],sConstraints[2])) return false; break;
						  case "MOBILEPHONE":
						    if(!Validate("MOBILEPHONE",oForm.elements[index],sConstraints[2])) return false; break;
						  case "ZIP":
						    if(!Validate("ZIP",oForm.elements[index],sConstraints[2])) return false; break;
						  case "TIME":
						    if(!Validate("TIME",oForm.elements[index],sConstraints[2])) return false; break;
						  case "DATE":
						    if(!Validate("DATE",oForm.elements[index],sConstraints[2])) return false; break;  
						  case "YEAR":
						    if(!Validate("YEAR",oForm.elements[index],sConstraints[2])) return false; break;
					  /*
						  case "IMAGE_FILE":
							  if(!Validate("IMAGE_FILE",oForm.elements[index],sConstraints[2])) return false; break;
						  case "FILE_NAME":
							  if(!Validate("IMAGE_FILE",oForm.elements[index],sConstraints[2])) return false; break;
						  case "FILE_PATH":
							  if(!Validate("FILE_PATH",oForm.elements[index],sConstraints[2])) return false; break;
					  */
					  }
				  }
					break;
				}
			}
		}
	return true;
	}
/************************************************************************************************************************/
function Validate(sType,oElement,sMessage) {
  var sRegExp = "";
  if(IsEmpty(sType))
    return false;
  switch(sType) {
		case "URL" : sRegExp =/http:\/\/([\w-]+\.)+[\w-]*(\/[\w- .\/?%=]*)?/; 
		             var sURL = "http://www." + oElement.value;
 	               if(sURL.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
		             break;
    case "INT" : sRegExp =/^[0-9]+$/; 
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
                  break;
    case "GRADE" : sRegExp =/^[a-eA-E+]+$/; 
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
                  break;              
    case "NAME" : sRegExp =/^[a-zA-Z\s]+$/; 
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
 	case "FIRSTBLANK" :	var temp = oElement.value;
 		           temp = temp.substring(0,1);     
 		           if(temp ==' '){alert(sMessage); return false;} 
                  break;
    case "FLOAT": sRegExp =/\d+$/; 
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
                  break;
    case "NOSPL": sRegExp =/^[a-zA-z0-9]+$/; 
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
                  break;
    case "LOGIN": sRegExp =/^[a-zA-Z\d]+(?:[\.\_]?)([a-zA-Z\d])+$/; 
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
                  break;
		case "PHONE": sRegExp =/^((\(\d{3}\)\s?)|(\d{3}\-))\d{3}\-\d{4}$/; //(123) 456-7892 or 123-456-7892
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
                  break;
    case "EMAIL": if(!IsValidEmail(oElement.value)) {
 		                alert(sMessage); if(oElement.type != "hidden") oElement.focus();
 		                return false;
		                }break;
    case "STRING"  : sRegExp =/^[a-zA-Z0-9\w\s]+/; 
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
    case "SELECT"  : if(IsEmpty(oElement.value)) {
											alert(sMessage);oElement.focus();
											return false;
											}
                    break;
		case "ZIPCODE" : sRegExp =/^\d{5}(-\d{4})?$/; //12345 or 12345-6789
 	                  if(oElement.value.match(sRegExp) == null) {
 		                 alert(sMessage);
 		                 if(oElement.type != "hidden") oElement.focus();
 		                 return false;
 		                 }
                    break;
		case "PASSWORD": sRegExp =/^[a-zA-Z0-9]\w*/; 
 	                 if(oElement.value.match(sRegExp) == null) {
 		                 alert(sMessage);
 		                 if(oElement.type != "hidden") oElement.focus();
 		                 return false;
 		                 }
 		               if(oElement.value.length < 6) { //# Must Have Atleast 6 character eg - dfg122
 		                alert("Password field is too short. Password must contain atleast 6 characters.");
 		                if(oElement.type != "hidden") oElement.focus();
 		                 return false;
 		               }
                   break;
		case "NOTBLANK": if(IsEmpty(oElement.value)) {
 		                  alert(sMessage);oElement.focus();
		                  return false;
		                  }break;
    case "OFFICEPHONE": sRegExp =/^[0-9]+$/; // Must be integer only.
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
 		             if(oElement.value.length != 16) { // Must be 11 digit only.
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		              }break;
    case "MOBILEPHONE": sRegExp =/^[0-9]+$/; //Must be integer only.
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
 		             if( oElement.value.length < 10 || oElement.value.length > 14) { // Must be 11 digit only.
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		              }break;
 		case "ZIP": sRegExp =/^[0-9]+$/; //Must be integer only.
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		               }
 		             if(oElement.value.length != 6) { // Must be 11 digit only.
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		              }break;  
 		              
    case "TIME": sRegExp =/^(0[0-9]|1[0-2])\:([0-5]\d{1})\s([A|P]M)/; //Must be in 00:00 AM/PM Format
 	               if(oElement.value.match(sRegExp) == null) {
 		               alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		              }break; 		
    case "DATE": sRegExp =/^(0[1-9]|[1-2][0-9]|3[0-1])\/(0[1-9]|1[0-2])\/(19|20)[0-9][0-9]/; //Must be in DD/MM/YYYY Format
 	               if(oElement.value.match(sRegExp) == null) {
 	                  alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		              }
 		              break;
 		case "YEAR": sRegExp =/^(19|20)\d\d/; //Must be in YYYY Format
 	               if(oElement.value.match(sRegExp) == null) {
 	                alert(sMessage);
 		               if(oElement.type != "hidden") oElement.focus();
 		               return false;
 		              }break;  
    /*		
		case "IMAGE_FILE": sRegExp =//; break;
		case "FILE_NAME" : sRegExp =//; break;
		case "FILE_PATH" : sRegExp =//; break;
    */
    }
  return true;
  }
/************************************************************************************************************************/
function SelectOneFromCheckBoxGroup(oElement, sNamePrefix, iElementCount) {
  for(var iIndex = 1; iIndex <= iElementCount; iIndex++) {
    var oItem = window.document.getElementById(sNamePrefix + iIndex);
    if(!IsEmpty(oItem)) {
      if(oItem.name != oElement.name) {
        oItem.checked = false;
      }
    }
  }
  return true;
}
/************************************************************************************************************************/
function CharacterCount(sTextArea, sTotalCharacter, iMaxLength) {
  var TotalCharacterInText = window.document.getElementById(sTextArea).value.length;
  if ( TotalCharacterInText >iMaxLength ) {
    window.document.getElementById(sTextArea).value = window.document.getElementById(sTextArea).value.substring(0,iMaxLength);
    TotalCharacterInText = iMaxLength;
    return false;
  }
window.document.getElementById(sTotalCharacter).value = iMaxLength-TotalCharacterInText;
return true;   
}
/************************************************************************************************************************/
function CheckMaximumLength(opTargetId, ipMaxLength, iAlert) {
  var iLength  = window.document.getElementById(opTargetId).value.length;
    if ( iLength > ipMaxLength ) {
    if(iAlert){alert("You have exceeded the character limit " + (ipMaxLength + 1) + " character(s).");}
     // Reached the Maximum length so trim the textarea
    window.document.getElementById(opTargetId).value = window.document.getElementById(opTargetId).value.substring(0,ipMaxLength);
  }
}
/************************************************************************************************************************/
/************************************************************************************************************************/
// [Begin JavaScript to Unselect the selected items in International List]
	function Unselect(opTargetId) {	  
	  var isSelected  = window.document.getElementById(opTargetId).options[window.document.getElementById(opTargetId).selectedIndex].value;
	  var isSelected1  = window.document.getElementById(opTargetId).options[window.document.getElementById(opTargetId).selectedIndex].index;
	  var sSubStringValue = isSelected.substring(isSelected.length-2, isSelected.length);
	  if(isSelected1 == 0) {	  
	    window.document.getElementById(opTargetId).selectedIndex=-1;	     
	  }	 
	  if (sSubStringValue == "--") {
	    window.document.getElementById(opTargetId).selectedIndex=-1;	    
	  }	  
	}
/************************************************************************************************************************/
  function getActiveText() {        
    var text = document.selection.createRange().text;
    document.getElementById("hidValue").value = text;
    document.selection.createRange().text = "";
    return true;     
  }
/************************************************************************************************************************/
function CheckSelected(opTargetId, opTargetId1, ipMax) {
    var isSelected  = window.document.getElementById(opTargetId).options[window.document.getElementById(opTargetId).selectedIndex].value;
	  var isSelected1  = window.document.getElementById(opTargetId).options[window.document.getElementById(opTargetId).selectedIndex].index;
	  var sSubStringValue = isSelected.substring(0, 2);
	  if(isSelected1 == 0) {	  
	    window.document.getElementById(opTargetId).selectedIndex=-1;	    
	  }	 
	  if (sSubStringValue == "--") {
	    window.document.getElementById(opTargetId).selectedIndex=-1;	    	    
	  }	     
    var iLen = window.document.getElementById(opTargetId).length; 
    var iCount=0;
    if(! IsEmpty(window.document.getElementById(opTargetId1))) {
      var iLen1 = window.document.getElementById(opTargetId1).length; 
      for (var i1 = 0; i1 < iLen1; i1++) {       
        if( window.document.getElementById(opTargetId1).options[i1].selected == true) {              
          iCount=iCount+1;         
        }
        if(iCount > ipMax) {
            window.document.getElementById(opTargetId1).options[i1].selected = false;
            alert("You have reached the maximum limit allowed.");
            return false;
         }              
       }
    }
   
    for (var i = 0; i < iLen; i++) {       
        if( window.document.getElementById(opTargetId).options[i].selected == true) {              
          iCount=iCount+1;         
        }
        if(iCount > ipMax) {
            window.document.getElementById(opTargetId).options[i].selected = false;
            alert("You have reached the maximum limit allowed.");
            return false;
         }              
       }
}

/************************************************************************************************************************/

/************************************************************************************************************************/
// [Begin JavaScript to validate Domain Name]
function checkDomain(opTargetControl) {
  var nname = window.document.getElementById(opTargetControl).value;
  var arr = new Array(
  '.com','.net','.org','.biz','.coop','.info','.museum','.name',
  '.pro','.edu','.gov','.int','.mil','.ac','.ad','.ae','.af','.ag',
  '.ai','.al','.am','.an','.ao','.aq','.ar','.as','.at','.au','.aw',
  '.az','.ba','.bb','.bd','.be','.bf','.bg','.bh','.bi','.bj','.bm',
  '.bn','.bo','.br','.bs','.bt','.bv','.bw','.by','.bz','.ca','.cc',
  '.cd','.cf','.cg','.ch','.ci','.ck','.cl','.cm','.cn','.co','.cr',
  '.cu','.cv','.cx','.cy','.cz','.de','.dj','.dk','.dm','.do','.dz',
  '.ec','.ee','.eg','.eh','.er','.es','.et','.fi','.fj','.fk','.fm',
  '.fo','.fr','.ga','.gd','.ge','.gf','.gg','.gh','.gi','.gl','.gm',
  '.gn','.gp','.gq','.gr','.gs','.gt','.gu','.gv','.gy','.hk','.hm',
  '.hn','.hr','.ht','.hu','.id','.ie','.il','.im','.in','.io','.iq',
  '.ir','.is','.it','.je','.jm','.jo','.jp','.ke','.kg','.kh','.ki',
  '.km','.kn','.kp','.kr','.kw','.ky','.kz','.la','.lb','.lc','.li',
  '.lk','.lr','.ls','.lt','.lu','.lv','.ly','.ma','.mc','.md','.mg',
  '.mh','.mk','.ml','.mm','.mn','.mo','.mp','.mq','.mr','.ms','.mt',
  '.mu','.mv','.mw','.mx','.my','.mz','.na','.nc','.ne','.nf','.ng',
  '.ni','.nl','.no','.np','.nr','.nu','.nz','.om','.pa','.pe','.pf',
  '.pg','.ph','.pk','.pl','.pm','.pn','.pr','.ps','.pt','.pw','.py',
  '.qa','.re','.ro','.rw','.ru','.sa','.sb','.sc','.sd','.se','.sg',
  '.sh','.si','.sj','.sk','.sl','.sm','.sn','.so','.sr','.st','.sv',
  '.sy','.sz','.tc','.td','.tf','.tg','.th','.tj','.tk','.tm','.tn',
  '.to','.tp','.tr','.tt','.tv','.tw','.tz','.ua','.ug','.uk','.um',
  '.us','.uy','.uz','.va','.vc','.ve','.vg','.vi','.vn','.vu','.ws',
  '.wf','.ye','.yt','.yu','.za','.zm','.zw');

var mai = nname;
var val = true;

var dot = mai.lastIndexOf(".");
var dname = mai.substring(0,dot);
var ext = mai.substring(dot,mai.length);
//alert(ext);
	
if(dot>2 && dot<57) {
	for(var i=0; i<arr.length; i++) {
	  if(ext == arr[i]) {
	 	val = true;
		break;
	  }	
	  else {
	 	val = false;
	  }
	}
	if(val == false) {
	  	 alert("Your domain extension "+ext+" is not correct");
	  	 // Wrong domain, so trim the textarea
       window.document.getElementById(opTargetControl).value = "";
		   return false;
	}
	else {
		for(var j=0; j<dname.length; j++) {
		  var dh = dname.charAt(j);
		  var hh = dh.charCodeAt(0);
		  if((hh > 47 && hh<59) || (hh > 64 && hh<91) || (hh > 96 && hh<123) || hh==45 || hh==46)
		  {
			 if((j==0 || j==dname.length-1) && hh == 45) {
		 	  	 alert("Domain name should not begin are end with '-'");
		 	  	 // Wrong domain, so trim the textarea
            window.document.getElementById(opTargetControl).value = "";
			      return false;
		 	 }
		  }
		else	{
		  	 alert("Your domain name should not have special characters");
		  	 // Wrong domain, so trim the textarea
        window.document.getElementById(opTargetControl).value = "";
			 return false;
		  }
		}
	}
}
else {
 alert("Your Domain name is too short/long");
 // Wrong domain, so trim the textarea
   window.document.getElementById(opTargetControl).value = "";
 return false;
}	

return true;
}
// [End JavaScript to validate Domain Name]
/************************************************************************************************************************/
function IsEmpty(oParam) {
	var sType = typeof(oParam);
	switch(sType) {
		case "string":
			if(oParam.length == 0)
				return true;
			break;
		case "object":
			if(oParam == null)
				return true;
			break;
		case "undefined":
			if(oParam == undefined)
				return true;
			break;
		}
	return false;
	}
/************************************************************************************************************************/
function IsFloat(sParam) {
 	if(isNaN(parseFloat(sParam)))
  	 return false;
  return true;
	}
/************************************************************************************************************************/
function Trim(sParam) {
	var iIndex = 0, sSpace = " ";
	var sReturn = sParam;
	for(iIndex = 0; iIndex < sReturn.length; iIndex++) {
		if(sReturn.charAt(iIndex) != sSpace)
			break;
		}
	sReturn = sReturn.substring(iIndex, sParam.length);
	for(iIndex = (sReturn.length - 1); iIndex >= 0; iIndex--) {
		if(sReturn.charAt(iIndex) != sSpace)
			break;
		}
	sReturn = sReturn.substring(0, iIndex + 1);
	return sReturn;
	}
/************************************************************************************************************************/
function IsValidEmail(sEmailId) {
	var intCounter = 0;
	for(var i = 1; i < sEmailId.length; i++) {
		if(((sEmailId.charAt(i-1) == ".") && (sEmailId.charAt(i) == ".")))
			return false;
		if(((sEmailId.charAt(i-1) == "@") && (sEmailId.charAt(i) == "@")))
			return false;
		}
	var splitted = sEmailId.match("^(.+)@(.+)$");
	if(splitted == null) 
		return false;
  if(splitted[1] != null ) {
  	var regexp_user=/^\"?[\w-_\.]*\"?$/;
    if(splitted[1].match(regexp_user) == null) 
			return false;
    }
  if(splitted[2] != null) {
  	var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
    if(splitted[2].match(regexp_domain) == null) {
	  	var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
	    if(splitted[2].match(regexp_ip) == null) return false;
      }
    return true;
    }
	return false;
	}
/************************************************************************************************************************/
function PopUp(iWidth, iHeight, sURL, sName, sProp) {
	var hwndChild = null;
	var intWidth  = iWidth;
	var intHeight = iHeight;
	var intPosX = ((window.screen.height - intWidth) / 2) + 50;
	var intPosY = ((window.screen.width - intHeight) / 2) - 50;
	var sProperty = "top=" + intPosX + ",left=" + intPosY + ",width=" + intWidth + ",height=" + intHeight;
	    sProperty = sProperty + ",location=0,menubar=0,titlebar=0,status=0,toolbar=0,scrollbars=1,resizable=1";
	if(!IsEmpty(sProp))
	  sProperty = sProp
	hwndChild = window.open(sURL,sName,sProperty,true);
	return hwndChild;
	}
/************************************************************************************************************************/
function ResetFormElement(oForm, sAExcept) {

	for(var iIndex = 0; iIndex < oForm.length; iIndex++) {
		var oElement = oForm.item(iIndex);
		
		var bElementFound = false;
		
		for( var iSubIndex = 0; iSubIndex < sAExcept.length; iSubIndex++) {
		  if(oElement.name == sAExcept[iSubIndex])
		    bElementFound = true;
		}
		
		if(!bElementFound) {
		  var sElementType = oForm.item(iIndex).type;
		  if(sElementType == "hidden") {
			  if(oElement.name.indexOf("__") == -1)
				  oElement.value = "";
		  }
		  else if(sElementType == "checkbox") {
			  oElement.checked = false;
		  }
		  else if(sElementType == "password") {
			  oElement.value = "";
		  }
		  else if(sElementType == "radio") {
			  oElement.checked = false;
		  }
		  else if(sElementType == "select-one") {
			  oElement.selectedIndex = 0;
		  }
		  else if(sElementType == "text") {
			  oElement.value = "";
		  }
		  else if(sElementType == "textarea") {
			  oElement.value = "";
		  }
		}
	}
	return true;
}
/************************************************************************************************************************/
//#. Begin visibility handling of layer.
function SetVisibility(oElement, sElementId) {
  var oLayer = window.document.getElementById(sElementId);
  if(!IsObject(oLayer)) {
    return;
    }
  if(oElement.checked) { //#. Enable visibility so that address information can be captured.
    if(oLayer.style) {
      oLayer.style.display = "block";
      oLayer.style['display'] = "block";
      }
    if(oLayer.visibility) {
      oLayer.visibility = 'visible';}
    }
  else { //#. Disable visibility.
    if(oLayer.style) {
      oLayer.style.display = "none";
      oLayer.style['display'] = "none";
      }
    if(oLayer.visibility) {
      oLayer.visibility = 'hidden';
      }
    }
  }
function IsObject(oElement) {
  return (oElement && typeof oElement == 'object');
  }

//#. End visibility handling of layer.
/************************************************************************************************************************/

