function showHideEle(ele,link) {
	var element=document.getElementById(ele);
	var link=document.getElementById("link"+ele);
	if(element.style.display!="block") {
		element.style.display="block";
		link.innerHTML="hide";
	} else {
		element.style.display="none";
		link.innerHTML="view";
	}
}

function showHideMenu(ele) {
	var element=document.getElementById(ele);
	if(element.style.display!="block") {
		element.style.display="block";
	} else {
		element.style.display="none";
	}
}

function showMenu(ele) {
	var element=document.getElementById(ele);
	element.style.display="block";
}

function hideMenu(ele) {
	var element=document.getElementById(ele);
	element.style.display="none";
}

// VH 09 09/24/08 Add 2 new functions for visible/hidden objects.
function showMenuVisible(ele) {
	var element=document.getElementById(ele);
	element.style.visibility="visible";
}

function hideMenuVisible(ele) {
	var element=document.getElementById(ele);
	element.style.visibility="hidden";
}

function checkfields(form,question,special,smallorder) {

//BKH 9.03 04/02/10 12 Check for Minimum Order Qty
	for(i=0; i<smallorder.length; i++) {
		var thisitem=document.getElementById("sft"+i).value;
		var mobj=document.getElementById("q"+i);
		var quant= parseFloat(mobj.value);
//		alert("Minimum qty = "+smallorder[i]+" AND QTY = "+quant);
	
		if(smallorder[i]!=0 && smallorder[i]>quant ){
			alert("The minimum order qty for " + thisitem +" is "+smallorder[i]);
			mobj.focus();
			mobj.select();
			return false;
		}
	}
	
	var checked=1;
	if(special!=0) {
		if(checkspecial(special)) var checked=1;
		else var checked=0;
	}
	if(checked!=0) {
		if(confirm("Are you sure you want to "+question+"?")) return true;
	}
	return false;
}

<!-- 17 BKH Ask for Delete when Update recurring orders template-->
function checkfields1(question,ncount) {

	var mok = false;

	for(i=0; i<ncount; i++) {
		var mdel=document.getElementById("del"+i);
		if(mdel.checked){
			mok = true;
		}
	}
<!-- 06 BKH Ask for Delete when Update Quick orders template too-->
	if(mok){
		if(!confirm("Are you sure you want to "+question+"?")) return false;
	}

	if(!confirm("Are you sure you want to Save all changes?")) return false;
	return true;
}

// BKH 03 07/14/09 Print Open Invoices.
function printInvoice(id) {
	window.open("/new/printInvoice.php?id="+id,"print","width=550,height=500,resizable=1,toolbar=1,location=0,status=0,menubar=0");
}

// VH 06 10/10/08 Changes for Internet Explorer.
function printWindow(id) {
	window.open("/new/printOrder.php?id="+id,"print","width=550,height=500,resizable=1,toolbar=1,location=0,status=0,menubar=0");
}

function printReport(id) {
	window.open("/new/printReport.php?id="+id,"print","width=550,height=500,resizable=1,toolbar=1,location=0,status=0,menubar=0");
}

// VH 04 11/25/08 New window for Change Columns.
function changeColumns() {
	window.open("/new/pages/bakery/changeColumns.php","","width=550,height=400,resizable=0,toolbar=0,location=0,status=0,menubar=0");
}
//NS 9.06 05/16/11 03 Show Budgeted/Standard and Projected Costs.
  function viewcost() {
	window.open("/new/pages/bakery/viewcost.php","","width=400,height=200,resizable=0,top=300,left=640,toolbar=0,location=0,status=0,menubar=0,titlebar='Cost Information'");
  }

function validate(fields) {
	for(i=0; i<fields.length; i++) {
		field=fields[i];
		var ele=document.getElementById(field);
		if(field=="email") {
			var email=ele.value;
			if(email.indexOf(".")<=2 || email.indexOf("@")<=1 || email.indexOf(".")==email.length-1) {
				alert("Please enter a valid email address and try again.");
				return false;
			}
		}
// BKH 01/11/10 07 Check for Second Email address from Zbake. 
		if(field=="soemail") {
			var email=ele.value;
			if(email.indexOf(".")<=2 || email.indexOf("@")<=1 || email.indexOf(".")==email.length-1) {
				alert("Please enter a valid email address and try again.");
				return false;
			}
		}
		
		if(ele.value.length<=1) break;
		if(i==fields.length-1) return true;
	}
	alert("Please fill out all required fields and try again.");
	return false;
}

function printarr(arr) {
	var vals="Array(";
	for(i=0; i<arr.length; i++) {
		vals+=arr[i];
		if(i!=arr.length-1) vals+=", ";
	}
	vals+=")";
	alert(vals);
}
//AE 9.02 01/15/10 01 Do not validate the password when from edit
    function ValidateAll(from) {
      Message = "";
      Message1 = "The following error(s) occurred:";
// BKH 9.08 11/24/11 15 Validate Shipto information too-->
      if (from = 'S'){
     	Message = Message + CheckEmail();
    	Message = Message + CompPassword();
  	    Message = Message + CompEmail();		  
	  } else {
		Message = Message + CheckCompany();
//AE 9.02 01/15/10 01 Do not validate the password when from edit
    	if (from != 'E'){
     	   Message = Message + CheckPassword();
     	}
     	Message = Message + CheckEmail();
    	Message = Message + CheckSoEmail();
    	Message = Message + CompPassword();
  	    Message = Message + CompEmail();
      }

      if (Message == "") {
        return true
        }
     else {

       alert(Message1 + "\n" + Message);
       return false
       }
    }

    function CheckCompany() {
      company = document.frmOne.company.value

      if (company == "") {
        Message = "Company name is required." + "\n"
        }
      else {
        Message = ""
       }
      return Message
      }


    function CheckPassword() {
      password = document.frmOne.txtpassword.value

      if (password == "") {
        Message = "Password is required." + "\n"
        }
      else {
        Message = ""
       }
      return Message
      }


    function CheckEmail() {
      email = document.frmOne.email.value
      AtPos = email.indexOf("@")
      StopPos = email.lastIndexOf(".")
      Message = ""

      if (email == "") {
        Message = "Email address is required" + "\n"
        return Message
       }

      if (AtPos == -1 || StopPos == -1) {
        Message = "Not a valid email address" + "\n"
        return Message
      }

     if (StopPos < AtPos) {
       Message = "Not a valid email address" + "\n"
       return Message
      }

     if (StopPos - AtPos == 1) {
       Message = "Not a valid email address" + "\n"
       return Message
     }

    return Message
   }
//AE 9.02 01/15/10 24 Validate second e-mail
    function CheckSoEmail() {
      soemail = document.frmOne.soemail.value
      AtPos = soemail.indexOf("@")
      StopPos = soemail.lastIndexOf(".")
      Message = ""

      if (soemail != ""){

        if (AtPos == -1 || StopPos == -1) {
          Message = "Not a valid Second email address" + "\n"
          return Message
        }

        if (StopPos < AtPos) {
          Message = "Not a valid Second email address" + "\n"
          return Message
         }

        if (StopPos - AtPos == 1) {
          Message = "Not a valid Second email address" + "\n"
          return Message
        }
      }

    return Message
   }

    function CompPassword() {
      password = document.frmOne.txtpassword.value
      cnfpassword = document.frmOne.cnfpassword.value

      if (password != cnfpassword) {
        Message = "Your password and confirmation password do not match." + "\n"
        }
      else {
        Message = ""
       }
      return Message
      }

    function CompEmail() {
      email = document.frmOne.email.value
      remail = document.frmOne.remail.value

      if (email!= remail) {
        Message = "Your email and confirmation email do not match." + "\n"
        }
      else {
        Message = ""
       }
      return Message
      }
      
  function addShipTo() {
    var ans=confirm("Would you like to add a ship-to?");
		if(ans) window.open('?p=manageShipto','_self');
	}

 //AE 9.01 08/25/09 09 For changing a background in the handheld menu.
 function onTxt(txt) {
    var element=document.getElementById(txt);
	element.style.background="#C00400";
  }

  function outTxt(txt) {
    var element=document.getElementById(txt);
	element.style.background="#FFFDDF";
  }

// VH 9.04 05/21/10 03 Redirect program.
	function redirect(question, location) {
		if(confirm(question)) window.open('?p=' + location,'_self');
	}

// NS 9.05 01/25/11 33 Add, edit customers.
 function getcommvalue(txt,ele) {
    var element=document.getElementById(ele);
	
	if (txt.selectedIndex==0) {
	  element.value=0.000;	
	} else {
	  var element1=document.getElementById(txt.selectedIndex);
	  element.value=element1.value;
	}
  }
 function validnumeric(txt,nm) {
    var val=txt.value;
    if (isNaN(val)) {
	  txt.value=0;	
	} else {
	  if (val<0) {
	    txt.value=val*-1;	  
	  }
	}
  }  
 function showhidemore(txt) {
    var element=document.getElementById('morediv');
    var element1=document.getElementById('more');	
	
    if(txt.innerHTML == "Show More Info") {
	  element.style.display="block";
	  txt.innerHTML = "Hide More Info";
	} else {
	  element.style.display="none";	
	  txt.innerHTML = "Show More Info";	 
	}
	element1.value= element.style.display;	
  }

<!--VH 9.07 05/20/11 40 Support for item UPC code.-->
function checkupc(ele,oldvalue,i) {
	var elecode=document.getElementById("upccode"+i);
	var elenumber=document.getElementById("upcnumber"+i);

	if(elecode.value!=0){
		for(j=1; j<11; j++) {
			if(elecode!=document.getElementById("upccode"+j) && elecode.value==document.getElementById("upccode"+j).value) {
				alert("Duplicate UPC code.  Please reenter...");

				if(ele==elecode) {
					elecode.value=oldvalue?oldvalue:0;

					if(elecode.value==0) {
						elenumber.value="";
					}
				}
				return false;	
			}
		}    
	}

	if(elenumber.value.indexOf("$")>=0) {
		if(elecode.value!=0) {
			alert("Illegal character entry '$' in UPC number. Please reenter...");

			if(ele==elenumber) {
				elenumber.value=oldvalue?oldvalue:"";
			}
			return false;
		}
	}

	if(elecode.value==0) {
		elenumber.value="";
	}

	ele.focus(); 
	ele.select();
	return;
}    

// version 9.08 11/24/11
