//for dollar functions
//checks if in digits and if not takes out invalid char
//then tells them what's wrong
function checkDollar(thevar){
   var tmpa;
   var len, digits="0123456789,.";
   
   strtmp = "";
   tmpa = document.getElementById(thevar).value;

   //checks if the quantity is a number
   //replaces it if not
   if (tmpa=="" || tmpa==null) { strtmp="0.00" ;};
   len=tmpa.length;
   for(i=0; i<len; i++)
      {
	  if (digits.indexOf(tmpa.charAt(i))<0)
         {
	     alert("Please enter a positive number.");
	     }
	  else
	    {
	     strtmp=strtmp + tmpa.charAt(i);
        }
	  }
   document.getElementById(thevar).value=strtmp;
}

function zeroDollar(thevar){
   var tmpa;
   strtmp = "";
   tmpa = document.getElementById(thevar).value;
	
   if (tmpa=="" || tmpa==null || tmpa==".") { 
	   strtmp="0.00" ;
	   document.getElementById(thevar).value=strtmp;
	};
}

//for # functions
//checks if in digits and if not takes out invalid char
//then tells them what's wrong
function checkNumber(thevar){
   var tmpa;
   var len, digits="0123456789";
   
   strtmp = "";
   tmpa = document.getElementById(thevar).value;

   //checks if the quantity is a number
   //replaces it if not
   len=tmpa.length;
   for(i=0; i<len; i++)
      {
	  if (digits.indexOf(tmpa.charAt(i))<0)
         {
	     alert("Please enter a positive number.");
	     }
	  else
	    {
	     strtmp=strtmp + tmpa.charAt(i);
        }
	  }
   document.getElementById(thevar).value=strtmp;
}


//for # functions
//checks if in digits and if not takes out invalid char
//also checks if a number is between a min and max
//then tells them what's wrong
function checkBetweenNumber(thevar,maxNo,minNo){
   var tmpa;
   var len, digits="0123456789";
   maxNo=maxNo*1; //force to #
   minNo=minNo*1; //force to #
   
   strtmp = "";
   tmpa = document.getElementById(thevar).value;

   //checks if the quantity is a number
   //replaces it if not
   len=tmpa.length;
   for(i=0; i<len; i++)
      {
	  if (digits.indexOf(tmpa.charAt(i))<0)
         {
	     alert("Please enter a positive number.");
	     }
	  else
	    {
	     if (((strtmp + tmpa.charAt(i))*1>=minNo) && ((strtmp + tmpa.charAt(i))*1<=maxNo))
		    {
	        strtmp=strtmp + tmpa.charAt(i);
			}
		else
		    {
			//alert("Please make sure the number you entered is between " + minNo + " and " + maxNo + ".");
			}
        }
	  }
   document.getElementById(thevar).value=strtmp;
}


//generic form validation
//finds empty values and requests them to be filled in
function chk(formName){
	    var divthingy;
	    var x=document.getElementById(formName);
		var err = "";

		for (var i=0;i<x.length;i++)
		   {
		  if (x.elements[i].value==""){
			  if(x.elements[i].className=="skip"){
				  //do nothing
			  }
			  else
			     {
		         err = err + x.elements[i].alt + "<br>";
			     x.elements[i].className="formerr";
			     }
		       }
		  else
		    {
			x.elements[i].className="";
			}
		}
			
		if (err==""){
			document.getElementById("errmess").innerHTML=""; 
			document.getElementById("errmess").style.visibility='hidden';
			return true;
		} else {
			//alert('Please fill in:\n' + err);
			document.getElementById("errmess").className="boxerr";
			document.getElementById("errmess").innerHTML="<p align=\"center\" style=\"margin-top:10px;\"><font class=\"fonterr\"><strong>Please fill in:</strong><br>" + err + "</font></p><p align='center'><strong><em>CLOSE</em></strong></p>"; 
			document.getElementById("errmess").style.visibility='visible';
			return false;
		}
	}
	

//generic form validation 2.0
//finds empty values and requests them to be filled in
function chk2(formName){
   var divthingy;
   var thisform=document.getElementById(formName);
   var lbl;
   var thislabel = "";
   var err = ""

   for (var i=0;i<thisform.length;i++)
      {
	   thislabel = thisform.elements[i].title;
      if (thisform.elements[i].value=="")
		   {
         if(thislabel=="skip")
			   {
            //do nothing
            }
         else
            {
            lbl = document.getElementById(thislabel);
            err = 1;
            lbl.className="lblerr";
            }
         }
      else
         {
         if(thislabel=="skip")
			   {
            //do nothing
            }
         else
            {
			   lbl = document.getElementById(thislabel);
			   lbl.className="";
            }
			}
      }
			
		if (err==""){
			document.getElementById("errmess").innerHTML=""; 
			document.getElementById("errmess").style.visibility='hidden';
			return true;
		} else {
			document.getElementById("errmess").className="boxerr";
			document.getElementById("errmess").innerHTML="<p align=\"center\" style=\"margin-top:10px;\"><strong>Please fix the item(s) in red.</strong></p>"; 
			document.getElementById("errmess").style.visibility='visible';
			return false;
		}
	}


//uom form validation for add
//ensures that if set sale dates, also have a sale price
function uomChk(){
	    var salefrom = new Date(document.insertUOMForm.txtsalefrom.value);
	    var saleto = new Date(document.insertUOMForm.txtsaleto.value);
		var saleprice = document.insertUOMForm.txtsale.value * 1;
	    var err = "", err1 = "", err2 = "", err3 = "", err4 = "";
		err1 = uomDates('txtsalefrom', 'txtsaleto', 'txtsale');
		if ( err1=="" ){
		    err2 = uomSaleTo('txtsalefrom', 'txtsaleto', 'txtsale');
			};
		if ( err1=="" && err2=="" ){
		    err3 = uomSaleFrom('txtsalefrom', 'txtsaleto', 'txtsale');
		    };
		err4 = uomSaleDates('txtsalefrom', 'txtsaleto', 'txtsale');
		err = err + err1 + err2 + err3 + err4;

		if (err==""){
			document.getElementById("errmess").innerHTML=""; 
			return true;
		} else {
			//alert('Please fill in:\n' + err);
			document.getElementById("errmess").className="boxerr";
			document.getElementById("errmess").innerHTML="<p align=\"center\"><font class=\"fonterr\">Please fix:<br>" + err + "</font></p>"; 
			return false;
		};
	}


//uom form validation for edit
//ensures that if set sale dates, also have a sale price
function uomChk2(loopi){
	var err = "", err1 = "", err2 = "", err3 = "", err4 = "";
	for (var i=0;i<loopi;i++)
		{
		err1 = uomDates('txtfrom_'+i,'txtto_'+i, 'txtsale_'+i);
		if ( err1=="" ){
		    err2 = uomSaleTo('txtfrom_'+i,'txtto_'+i, 'txtsale_'+i);
		    };
		if ( err1=="" && err2=="" ){
		    err3 = uomSaleFrom('txtfrom_'+i,'txtto_'+i, 'txtsale_'+i);
		    };
		err4 = uomSaleDates('txtfrom_'+i,'txtto_'+i, 'txtsale_'+i);
		err = err + err1 + err2 + err3 + err4;
		}
	
		if (err==""){
			document.getElementById("errmess").innerHTML=""; 
			return true;
		} else {
			//alert('Please fill in:\n' + err);
			document.getElementById("errmess").className="boxerr";
			document.getElementById("errmess").innerHTML="<p align=\"center\"><font class=\"fonterr\">Please fix:<br>" + err + "</font></p>"; 
			return false;
		};
	}
	
//uom form validation
function uomDates(fromvar, tovar, salevar){
	var salefrom = new Date(document.getElementById(fromvar).value);
	var saleto = new Date(document.getElementById(tovar).value);
	var saleprice = document.getElementById(salevar).value * 1;
	var err="";
	if (saleprice>0.00){
		//require dates be set
		document.getElementById(salevar).className="";
		if ( isNaN(salefrom) ) {
			err=err+document.getElementById(fromvar).alt+"<br>";
			document.getElementById(fromvar).className="formerr";
			}
		else
		   {document.getElementById(fromvar).className="";};
		if ( isNaN(saleto) ) {
			err=err+document.getElementById(tovar).alt+"<br>";
			document.getElementById(tovar).className="formerr";
			}
		else
		   {document.getElementById(tovar).className="";};
		};
	return err;
	}
	
//uom form validation
function uomSaleTo(fromvar, tovar, salevar){
	var salefrom = new Date(document.getElementById(fromvar).value);
	var saleto = new Date(document.getElementById(tovar).value);
	var saleprice = document.getElementById(salevar).value * 1;
	var err="";
    if ( !isNaN(salefrom) ) {
			//require other values to be set
			err=""
		    document.getElementById(fromvar).className="";
			if ( saleprice==0.00 ) {
				err=err+document.getElementById(salevar).alt+"<br>";
				document.getElementById(salevar).className="formerr";
				}
		    else
		       {document.getElementById(salevar).className="";};
			if ( isNaN(saleto) ) {
				err=err+document.getElementById(tovar).alt+"<br>";
				document.getElementById(tovar).className="formerr";
				}
		    else
		       {document.getElementById(tovar).className="";};
		};
	return err;
	}
	
//uom form validation
function uomSaleFrom(fromvar, tovar, salevar){
	var salefrom = new Date(document.getElementById(fromvar).value);
	var saleto = new Date(document.getElementById(tovar).value);
	var saleprice = document.getElementById(salevar).value * 1;
	var err="";
    if ( !isNaN(saleto) ) {
			//require other values to be set
			err=""
		    document.getElementById(tovar).className="";
			if ( saleprice==0.00 ) {
				err=err+document.getElementById(salevar).alt+"<br>";
				document.getElementById(salevar).className="formerr";
				}
		    else
		       {document.getElementById(salevar).className="";};
			if ( isNaN(salefrom) ) {
				err=err+document.getElementById(fromvar).alt+"<br>";
				document.getElementById(fromvar).className="formerr";
				}
		    else
		       {document.getElementById(fromvar).className="";};
		};
	return err;
	}
	
//uom form validation
function uomSaleDates(fromvar, tovar, salevar){
	var salefrom = new Date(document.getElementById(fromvar).value);
	var saleto = new Date(document.getElementById(tovar).value);
	var saleprice = document.getElementById(salevar).value * 1;
	var err="";
		if ( !isNaN(salefrom) && !isNaN(saleto) ) {
			//require dates be from<to
			if (salefrom.getMonth()>saleto.getMonth() || salefrom.getDate()>saleto.getDate() || salefrom.getYear()>saleto.getYear()){
			   err=err+"From date must come before the to date.";
			   document.getElementById(tovar).className="formerr";
			   document.getElementById(fromvar).className="formerr";
			};
		};
	return err;
	}

//clears all sale info
function endSale(fromvar, tovar, salevar){
	    document.getElementById(fromvar).value="";
	    document.getElementById(tovar).value="";
	    document.getElementById(salevar).value="0.00";
	}
