//

 //Added by yossi 9/5/2007
 function TblHeight()
 {
    if(navigator.appName.toLowerCase()== "netscape") 
     {
     return "Height='4px' "
     }
     return "Height='0px'  "
 }
 
 
 
 function  IsNetscape(_val)
 {
    if(navigator.appName.toLowerCase()== "netscape") 
     {
        var StrVal;
        StrVal = _val;
        if(StrVal.toLowerCase()=="inline")
        {
            return  "table-row";
        }
     }
    
    return _val;
 }
 
 
 function TableClick(Status,_Tbl1,_Tbl2)
 {
   
    if(Status=="open")
    {
    document.getElementById(_Tbl1).style.display = "none";
    document.getElementById(_Tbl2).style.display = IsNetscape("inline");
    }
    else
    {
    document.getElementById(_Tbl1).style.display = IsNetscape("inline");
    document.getElementById(_Tbl2).style.display = "none";
    }

}


function validateElement(aElement, objError)
{
 var strAttr;
 
  
 strAttr = aElement.getAttribute("DISPLAY", 0);
 
 if(aElement.readOnly==true)
    return true;
 
 if(!strAttr || strAttr=="")
 {
	strAttr = "Field";
 }  

  if(aElement.type == "text" || aElement.type == "password" || aElement.type == "textarea")
  {
    if(aElement.value == '')
    {
      if (!aElement.getAttribute("MAND", 0))
      {
        objError.value = strAttr + " must be filled";  
        return false;
      }
      else
        return true;
    }
    else if(aElement.getAttribute("NUMBER",0) == "posFloat")
    {
     posFloatRegex = new RegExp("^([0-9]+([\.][0-9]*)?)$");
  	 result=posFloatRegex.test(aElement.value);
  	 if (!result)
      {
        objError.value = strAttr + " is invalid"; 
  	    return false;
      }
    }
    else if(aElement.getAttribute("NUMBER",0) == "integer")
    {
		IntegerRegex = new RegExp("^[0-9]*$");
  		result=IntegerRegex.test(aElement.value);
  		if (!result)
		{
			objError.value = strAttr + " must contain only numbers"; 
  			return false;
		}
    }
    
    if(aElement.getAttribute("NUMBER",0) == "price")
    {
      priceRegex = new RegExp("^([0-9]+([\.][0-9]{0,2})?)$");
  	  result=priceRegex.test(aElement.value);
  	  if (!result)
      {
        objError.value = strAttr + " is not valid"; 
  	    return false;
      }
    }
    else if(aElement.type == "password")
    {
      //var passRegex = new RegExp("^([a-zA-Z0-9_~!@#&%/\-\\\$\^\*\(\)\[\|])*$");
      var passRegex = /^([a-zA-Z0-9_~!@#&%\/\-\\\$\^\*\(\)\|\[])*$/;
      result = passRegex.test(aElement.value);
      if(!result)
      {
        objError.value = "Password field can only contain English letters, numbers and signs";
        return false;
      }
    }
    else if (aElement.name.toLowerCase().indexOf("email") != -1)
    {
       //emailRegex = new RegExp("^[a-z0-9]([a-z0-9_\-\.]*)@([a-z0-9_\-\.]*)(\.[a-z]{2,3}(\.[a-z]{2}){0,2})$", "i");
       emailRegex = /^[a-z0-9]([a-z0-9_\-\.]*)@([a-z0-9_\-\.]*)(\.[a-z]{2,3}(\.[a-z]{2}){0,2})$/i;
	  result = emailRegex.test(aElement.value);
      if (!result)
      {
        objError.value = strAttr + " is invalid"; 
  	    return false;
      }
    }
    else if (aElement.name.toLowerCase().indexOf("token") != -1)
    {
      textRegex2 = new RegExp("^([0-9\,])*$");
      result = textRegex2.test(aElement.value);
      if(!result)
      {
        objError.value = strAttr + " can only contain English letters, numbers, period and underscore"; 
        return false;
      }
    }
    else if (aElement.getAttribute("SPACE", 0) == "false")
    {
      wordTextRegex = new RegExp("^([a-zA-Z0-9_\.])*$");
      result = wordTextRegex.test(aElement.value);
      if(!result)
      {
        objError.value = strAttr + " can only contain English letters, numbers, period and underscore"; 
        return false;
      }
    }
    else if (aElement.getAttribute("CLIENTLOGIN", 0) == "1")
    {
     
      wordTextRegex = new RegExp("^([a-zA-Z0-9_@/\.\-])*$");
      result = wordTextRegex.test(aElement.value);
      if(!result)
      {
        objError.value = strAttr + " can only contain English letters, numbers and underscore";   
        return false;
      }
    }
    else if (aElement.getAttribute("LOGIN", 0) == "1")
    {
      wordTextRegex = new RegExp("^([a-zA-Z0-9_])*$");
      result = wordTextRegex.test(aElement.value);
      if(!result)
      {
        objError.value = strAttr + " can only contain English letters, numbers and underscore"; 
        return false;
      }
    }
    else if (aElement.getAttribute("ALPHA", 0) == "1")
    {
      wordTextRegex = new RegExp("^([a-zA-Z\ ])*$");
      result = wordTextRegex.test(aElement.value);
      if(!result)
      {
        objError.value = strAttr + " can only contain English letters"; 
        return false;
      }
    }
     else if (aElement.getAttribute("ALPHA", 0) == "2")
    {
      wordTextRegex = /^([a-zA-Z\ \.])*$/;
      result = wordTextRegex.test(aElement.value);
      if(!result)
      {
        objError.value = strAttr + " can only contain English letters, spaces and period"; 
        return false;
      }
    }
    else if (aElement.getAttribute("ALPHA", 0) == "3")
    {
      wordTextRegex = /^([-a-zA-Z0-9_\.\ \+\,\'\n\r\?\&\@\(\)])*$/;
      result = wordTextRegex.test(aElement.value);
      if(!result)
      {
        objError.value = strAttr + " can only contain English letters, numbers, period, underscore and spaces";  
        return false;
      }
    }
    else
    {
	  textRegex = new RegExp("^([-a-zA-Z0-9_\.\ \+\,])*$");
      result = textRegex.test(aElement.value);
      if(!result)
      {
        objError.value = strAttr + " can only contain English letters, numbers, period, underscore and spaces"; 
        return false;
      }
    }
  }
  else if (aElement.type == "select-one")
    if (aElement.value == "0" && !aElement.getAttribute("MAND", 0))
    {
      objError.value = "You must choose a " + strAttr.toLowerCase();
      return false;
    }

  return true;
}

function validateInput(aForm)
{
 var objError;
 
 if(aForm == null)
    return false;
  
  //hold the error element
  objError = aForm.elements["error"];
  
  for(i = 0;i < aForm.elements.length; ++i)
  {
   
    //if disabled, skip
    if(aForm.elements[i].disabled == true)
     continue;
     
    if(!validateElement(aForm.elements[i], objError))
      return false;
  }
    
  return true;
}

function ValidateStaffElement(objElement)
{
	if(objElement.value.length>50)
		return "Field is limited to 50 characters";
		
	textRegex = new RegExp("^([-a-zA-Z0-9_*\.\ \+\,\@\-])*$");
    result = textRegex.test(objElement.value);
    if(!result)
    {
      return "Field contains invalid characters";
    }
    return "";
}

function ShowErrorMessage(objName, txt)
{
 
  document.all.item(objName).style.visibility = "visible";
  document.all.item(objName).innerHTML = txt;
}

function ClearErrorMessage(objName)
{
  document.all.item(objName).style.visibility = "hidden";
  document.all.item(objName).innerHTML = "";
}

//set the browser's status line
 function setWindowStatus(val)
 {
	window.status = val;
	return true;
 }
