var empty = new Image(); 
empty.src = "empty.gif";
var haveerrors = 0;
var hasItems=false;

function validateForm(f) {
 haveerrors = 0;

 (f.fname.value.length < 1)? showImage("fnameerr", "empty.gif", true): showImage("fnameerr", "blank.gif", false);
 (f.lname.value.length < 1)? showImage("lnameerr", "empty.gif", true): showImage("lnameerr", "blank.gif", false);
 (f.cname.value.length < 1)? showImage("cnameerr", "empty.gif", true): showImage("cnameerr", "blank.gif", false);
 (f.street.value.length < 1)? showImage("streeterr", "empty.gif", true): showImage("streeterr", "blank.gif", false);
 (f.city.value.length < 1)? showImage("cityerr", "empty.gif", true): showImage("cityerr", "blank.gif", false);
 (f.country.value.length < 1)? showImage("countryerr", "empty.gif", true): showImage("countryerr", "blank.gif", false);
 (f.phone.value.length < 7)? showImage("phoneerr", "empty.gif", true): showImage("phoneerr", "blank.gif", false);
 (f.zip.value.length < 1)? showImage("ziperr", "empty.gif", true): showImage("ziperr", "blank.gif", false);
 (f.state.value.length < 1)? showImage("stateerr", "empty.gif", true): showImage("stateerr", "blank.gif", false);
 (f.email.value.search("@") == -1 || f.email.value.search("[.*]") == -1)? showImage("emailerr", "empty.gif", true): showImage("emailerr", "blank.gif", false);
 ( f.secemail.value.length >0 &&(f.secemail.value.search("@") == -1 || f.secemail.value.search("[.*]") == -1))? showImage("secemailerr", "empty.gif", true): showImage("secemailerr", "blank.gif", false);

 if(!isAdm){
  //(f.hiddentotal.value <= 0)? showImage("totalerr", "empty.gif", true): showImage("totalerr", "blank.gif", false);
  (!itemsSelected()) ? showImage("totalerr", "empty.gif", true): showImage("totalerr", "blank.gif", false);
 }else{
  (!isPinOk())? showImage("pinerr", "empty.gif", true): showImage("pinerr", "blank.gif", false);
 }

 haveerrors |= validateCustomForm(f); 

 haveerrors ?showImage("msgerr", "errmsg.gif", true):showImage("msgerr", "blank.gif", false);

 return (!haveerrors);
}

function showImage(imagename, imageurl, errors) {
 if(document[imagename])
    document[imagename].src = "images/"+imageurl;
 haveerrors |= errors;
}

function isPinOk(){
  var pin=document.getElementById("pin").value; 
  if(pin.length ==0)
    return true;
  if(pin.length < 4)
    return false;
  var validChrs = "0123456789";
  var isNumber=true;
  var chr;
  for(i = 0; i < pin.length && isNumber == true; i++){ 
      chr = pin.charAt(i); 
      if (validChrs.indexOf(chr) == -1) 
          isNumber = false;
  }
  return isNumber; 
}  

function choiceClicked(whichbox){
    with (whichbox.form){
        if (whichbox.checked == true) { 
            for (xx=0; xx < document.rform.elements.length; xx++){
                if(document.rform.elements[xx].type == 'checkbox' && document.rform.elements[xx].name.indexOf('C')>=0)
                    document.rform.elements[xx].checked = false;
            }
            whichbox.checked = true;                    
         }
         hiddentotal.value = doTotal(); 
         if (hiddentotal.value < 0)
            InitForm();
         return(hiddentotal.value);
    }
}

function doTotal(){
 var total=0; 
 var itms=0;
 var aCb;
 for (xx=0; xx < document.rform.elements.length; xx++){
    aCb=document.rform.elements[xx];
    if(aCb.type!='checkbox' || aCb.name.indexOf('C')<0)
        continue;
    if(aCb.checked == true){
        itms++;
        total+=eval(aCb.value);
    }
 }
 if(itms>0)
  hasItems=true;
 else
   hasItems=false;
 return total.toFixed(2);       
}	

function itemsSelected(){
    if(hasItems)
        return true;
    //check again, may be initial pg. load 
    var itmsFound=false;
    for (xx=0; xx < document.rform.elements.length; xx++){
        aCb=document.rform.elements[xx];
        if(aCb.type!='checkbox' || aCb.name.indexOf('C')<0)
            continue;
        itmsFound=true;    
        if(aCb.checked == true){
            hasItems=true;
            break;
        }
    }
    if(itmsFound)
        return hasItems;
    //no itms yet, may be a 'no itms' conf
    if(document.forms['rform'].elements['C0'])
        return true;
    return false;
}

function sendPromoCode(){
    var acode=document.getElementById("promocode").value; 
    if(acode.length ==0)
        return;
    document.getElementById("pcode").value=acode;
    document.promoform.submit();    
}