var isNav;
var isIE;

var submitcount=0;
function checkSubmit() {
	if (submitcount == 0) {
		submitcount++;
      	document.forms['big'].submit();
    }
}

function fixjsvarname(name)
{
	name=name.replace('-', '_M_');
	name=name.replace(' ', '_S_');
	name=name.replace('+', '_P_');
	return name;
}

function setit(theid,elemname,currentobj) {
	var curr = currentobj.value;
	var myarray = curr.split("|");
	if(myarray.length==2)
		var mystr = myarray[0];
	else
		var mystr = curr;
	mystr=fixjsvarname(mystr);
	eval('opts=options_'+mystr+theid);
	var elem = elemname+theid;
	removeOptions(elem);
	for (var i=0; i < opts.length;i++){
		insertOption(elem,opts[i]);
	}
}

function insertOption(elem,val){
	var e = document.getElementById(elem);
	var o = document.createElement('option');
	o.text = val.replace('_',' ');
	o.value = val;
	try {
      e.add(o, null);
    }
    catch(ex) {
      e.add(o, e.selectedIndex);
    }
}

function removeOption(elem,val)
{
  var e = document.getElementById(elem);
  var i;
  for (i = e.length - 1; i>=0; i--) {
    if (e.options[i].value=val) {
      e.remove(i);
    }
  }
}

function removeOptions(elem)
{
  var e = document.getElementById(elem);
  var i;
  for (i = e.length - 1; i>=0; i--) {
    e.remove(i);
  }
}

function wordCounter(fld, countfield, maxlimit) {
	wordcounter=0;
	var field = document.getElementById(fld);
	for (x=0;x<field.value.length;x++) {
		if (field.value.charAt(x) == " " && field.value.charAt(x-1) != " ")  { wordcounter++}
      	if (wordcounter > 250) {
      		field.value = field.value.substring(0, x);
      	} else {
      		document.getElementById(countfield).innerHTML = maxlimit-wordcounter+' words left';
      	}
	}	
}

function textCounter(fld, countfield, maxlimit) {
	var field = document.getElementById(fld);
	if (field.value.length > maxlimit) {
		field.value = field.value.substring(0, maxlimit);
	} else {
		document.getElementById(countfield).innerHTML=maxlimit-field.value.length+' words left';
	}
}

function charLimit(element,maxlen){
	if(element.value.length>=maxlen)
		 element.value = element.value.substring(0,element.value.length-1);
	document.getElementById(element.id.replace('message_','target_')).innerHTML = (maxlen - element.value.length)+" characters remaining";
	element.onkeyup = element.onfocus = element.onblur = function(){
		document.getElementById(this.id.replace('message_','target_')).innerHTML = (maxlen - this.value.length)+" characters remaining";
	}
}

if (navigator.appName == "Netscape") {
    isNav = 0;
    document.captureEvents(Event.KEYPRESS);
} else if (navigator.appName == "Microsoft Internet Explorer") {
    isIE = 1;
} else {
    isIE = 1;
}

function show_email(theval,num) {
	if(theval=='email')
		document.getElementById('delivery_email_'+num).style.display='block';
	else
		document.getElementById('delivery_email_'+num).style.display='none';
		document.getElementById('email_'+num).value='';
}

function checkKey(e) {
    var keyChar;

    if (isNav == 0)
    {
        if(e.which < 48 || e.which > 57) e.returnValue = false;
    } else {
        if(e.keyCode < 48 || e.keyCode > 57) e.returnValue = false;
    }
}

function swapimage(img_name)
{
     obj = document.getElementById(img_name);
     old_src = obj.src;
     new_src = obj.name;

     obj.src = new_src;
     obj.name = old_src;
}

function print_corder(pid){
    window.open("index.php?op=print_old&cartid="+pid,"","resizeable=no,width=10,height=10,status=no");
}

function showit(id)
{
    var div = document.getElementById(id);
    if(div != null) {
       if(div.style.display == "block") {
             // div.style.display =  "none";
              els = div.getElementsByTagName("input");
              for(var i = 0; i < els.length; i++)
              {
                     if(els[i].type == "checkbox")
                     {
                           els[i].checked=false;
                     }
              }
       } else {
           //   div.style.display = "block";
       }
    }
}

function showIt(el) {
    if (document.getElementById(el)) {
	document.getElementById(el).style.display='';
    }
}

function hideIt(el) {
    if (document.getElementById(el)) {
	document.getElementById(el).style.display='none';
    }
}
	

function show_it(what) {
    if(document.getElementById(what) != null) {
        element = document.getElementById(what).style;
        element.display = "block";
    }
}

function hide_it(what) {
    if(document.getElementById(what) != null) {
        document.getElementById(what).style.display='none';
    }
}

function toggleList(e){
    if(document.getElementById(e) != null) {
        element = document.getElementById(e).style;
        element.display = (element.display == 'none') ? "block" : "none";
    }
}

function clear_billing_info() {
	var form = document.forms['big'];
	form.b_prefix.value='';
    form.b_fname.value='';
    form.b_lname.value='';

    form.b_phone_area.value='';
    form.b_phone_one.value='';
    form.b_phone_two.value='';
    form.b_phone_ext.value='';

	form.b_alt_phone_area.value='';
	form.b_alt_phone_one.value='';
	form.b_alt_phone_two.value='';
	form.b_alt_phone_ext.value='';

	form.b_fax.value='';
	form.b_address_1.value='';
	form.b_address_2.value='';
	form.b_city.value='';
	form.b_state.value='';
	form.b_zip.value='';
	//form.b_province.value='';
	//form.b_country.value='';
}

function clear_ph_billing_info() {
	var form = document.forms['big'];
	form.b_prefix.value='';
    form.b_fname.value='';
    form.b_lname.value='';

    form.b_phone_area.value='';
    form.b_phone_one.value='';
    form.b_phone_two.value='';
    form.b_phone_ext.value='';

	form.b_alt_phone_area.value='';
	form.b_alt_phone_one.value='';
	form.b_alt_phone_two.value='';
	form.b_alt_phone_ext.value='';

    form.b_fax_area.value='';
    form.b_fax_one.value='';
    form.b_fax_two.value='';

	form.b_address_1.value='';
	form.b_address_2.value='';
	form.b_city.value='';
	form.b_state.value='';
	form.b_zip.value='';
	//form.b_province.value='';
	//form.b_country.value='';
}

function uncheck_cats(el) {
    if(el.checked) {
        var name = (el.name == "allcats") ? "searchcats[]" : "allcats";
        var els = document.getElementsByName(name);

        for(var i = 0; i < els.length; i++) {
            els[i].checked = false;
        }
    }
}

function openimages(pid){
    window.open("cpopup.php?op=images&ID="+pid,"","resizeable=no,scrollbars=no,width=450,height=480,status=no");
}

function opendebug(){
    window.open("cpopup.php?op=debug","","resizeable=no,scrollbars=no,width=400,height=430,status=no");
}

function new_address(){
    window.open("cpopup.php?op=pnewaddress","","resizeable=no,scrollbars=no,width=480,height=500,status=no");
}

function check_first_form(){
    var thisform = document.first;
    var form_ok = false;
    if (thisform.prefix.value ==""){
         alert("Please select a prefix.");
         thisform.prefix.focus();
    } else if (thisform.fname.value ==""){
         alert("The First Name Field Cannot be blank");
         thisform.fname.focus();
    } else if (thisform.lname.value ==""){
         alert("The Last Name Field Cannot be blank");
         thisform.lname.focus();
    } else if (thisform.email.value ==""){
         alert("The Email Field Cannot be blank");
         thisform.email.focus();
    } else if (thisform.password.value ==""){
         alert("The Password Cannot be blank");
         thisform.password.focus();
    } else if (thisform.password1.value ==""){
         alert("The Password Cannot be blank");
         thisform.password1.focus();
    } else if ( !ValidEmail(thisform.email.value) ) {
        alert("Please enter a valid email address");
        thisform.email.focus();
    } else {
         form_ok = true;
    }
    return form_ok;
}
function checkterms() {
	var thisform = document.forms['big'];
	var form_ok = false;
	var chk = document.getElementById('terms').checked;
	if(chk == true) {
		form_ok = true;
	} else {
		alert("Please agree to our terms and conditions.");
        thisform.terms.focus();
	}
	return form_ok;
}
function terms(terms) {
	var thisform = document.forms['big'];
	var form_ok = false;
	var chk = terms.checked;
	if(chk == true) {
		form_ok = true;
	} else {
		alert("Please agree to our terms and conditions.");
        thisform.terms.focus();
	}
	return form_ok;
}

function check_big_form(checkby){
    var thisform = document.forms['big'];
    var form_ok = false;
    var ship_eq_bill = checkby.checked;

	if(ship_eq_bill == true) {
		// only check shipping and email
		if(check_ship_form()==true && check_email_form()==true) {
			form_ok = true;
		}
	} else {
		if(check_ship_form()==true && check_bill_form()==true && check_email_form()==true) {
			form_ok = true;
		}
	}
    return form_ok;
}

function check_email_form(){
    var thisform = document.forms['big'];
    var form_ok = false;

    if (thisform.email.value ==""){
         alert("The Email Field Cannot be blank");
         thisform.email.focus();
    } else if ( !ValidEmail(thisform.email.value) ) {
        alert("Please enter a valid email address");
        thisform.email.focus();
    } else {
         form_ok = true;
    }
    return form_ok;
}


function check_bill_form(){
    var thisform = document.forms['big'];
    var form_ok = false;

	if (thisform.b_fname.value ==""){
		alert("Billing: The First Name Field Cannot be blank");
	    thisform.b_fname.focus();
	} else if (thisform.b_lname.value ==""){
	         alert("Billing: The Last Name Field Cannot be blank");
	         thisform.b_lname.focus();
	} else if (thisform.b_phone_area.value=="" || thisform.b_phone_one.value=="" || thisform.b_phone_two.value==""){
	         alert("Billing: Phone Number is required and Cannot be blank");
	         thisform.b_phone_area.focus();
	} else if (thisform.b_address_1.value ==""){
	         alert("Billing: The Address Field Cannot be blank");
	         thisform.b_address_1.focus();
	} else if (thisform.b_city.value ==""){
	         alert("Billing: The City Field Cannot be blank");
	         thisform.b_city.focus();
	} else if (thisform.b_state.value ==""){
	         alert("Billing: The State Field Cannot be blank");
	         thisform.b_state.focus();
	} else if (thisform.b_zip.value ==""){
	    alert("Billing: The Zip Code Field Cannot be blank");
	    thisform.b_zip.focus();
	    /*
	} else if (thisform.b_zip.value !=""){
		if (thisform.b_zip.length!=5 && thisform.b_zip.length!=10) {
			alert("Please enter your 5 digit or 5 digit+4 zip code.");
			thisform.b_zip.focus();
		}

		for (var i=0; i < thisform.b_zip.length; i++) {
			temp = "" + thisform.b_zip.substring(i, i+1);
				
			if (temp == "-") 
				hyphencount++;
					
			if (valid.indexOf(temp) == "-1") {
				alert("Invalid characters in your billing zip code. Please try again.");
				thisform.zip.focus();
			}
				
			if ((hyphencount > 1) || ((thisform.b_zip.length==10) && ""+thisform.b_zip.charAt(5)!="-")) {
				alert("Hyphen should be used with a properly formatted 5 digit+four zip code, like '12345-6789'.   Please try again.");
				thisform.zip.focus();
			}
		}
		*/
	} else {
    	form_ok = true;
    }
    return form_ok;
}

function check_ship_form(){
    var thisform = document.forms['big'];
    var form_ok = false;

    if (thisform.prefix.value ==""){
         alert("Please select a title.");
         thisform.prefix.focus();
    } else if (thisform.fname.value ==""){
         alert("The First Name Field Cannot be blank");
         thisform.fname.focus();
    } else if (thisform.lname.value ==""){
         alert("The Last Name Field Cannot be blank");
         thisform.lname.focus();
    } else if (thisform.phone_area.value=="" || thisform.phone_one.value=="" || thisform.phone_two.value==""){
         alert("Phone Number is required and Cannot be blank");
         thisform.phone_area.focus();
    } else if (thisform.address_1.value ==""){
         alert("The Address Field Cannot be blank");
         thisform.address_1.focus();
    } else if (thisform.city.value ==""){
         alert("The City Field Cannot be blank");
         thisform.city.focus();
    } else if (thisform.state.value ==""){
         alert("The State Field Cannot be blank");
         thisform.state.focus();
    } else if (thisform.zip.value ==""){
         alert("The Zip Code Field Cannot be blank");
         thisform.zip.focus();
         /*
    } else if (thisform.zip.value !=""){
		if (thisform.zip.length!=5 && thisform.zip.length!=10) {
			alert("Please enter your 5 digit or 5 digit+4 zip code.");
			thisform.zip.focus();
		}
		for (var i=0; i < thisform.zip.length; i++) {
			temp = "" + thisform.zip.substring(i, i+1);
			if (temp == "-") 
				hyphencount++;
			if (valid.indexOf(temp) == "-1") {
				alert("Invalid characters in your shipping zip code. Please try again.");
				thisform.zip.focus();
			}
			if ((hyphencount > 1) || ((thisform.zip.length==10) && ""+thisform.zip.charAt(5)!="-")) {
				alert("Hyphen should be used with a properly formatted 5 digit+four zip code, like '12345-6789'.   Please try again.");
				thisform.zip.focus();
		   }
		}
		*/
    } else {
         form_ok = true;
    }
    return form_ok;
}

function check_shipping_form(){
	var valid = "0123456789-";
	var hyphencount = 0;
    var thisform = document.shipping;
    var form_ok = false;
    if (thisform.prefix.value ==""){
         alert("Please select a title.");
         thisform.prefix.focus();
    } else if (thisform.fname.value ==""){
         alert("The First Name Field Cannot be blank");
         thisform.fname.focus();
    } else if (thisform.lname.value ==""){
         alert("The Last Name Field Cannot be blank");
         thisform.lname.focus();
    } else if (thisform.phone_area.value=="" || thisform.phone_one.value=="" || thisform.phone_two.value==""){
         alert("Phone Number is required and Cannot be blank");
         thisform.phone_area.focus();
    } else if (thisform.address_1.value ==""){
         alert("The Address Field Cannot be blank");
         thisform.address_1.focus();
    } else if (thisform.city.value ==""){
         alert("The City Field Cannot be blank");
         thisform.city.focus();
    } else if (thisform.state.value ==""){
         alert("The State Field Cannot be blank");
         thisform.state.focus();
    } else if (thisform.zip.value ==""){
         alert("The Zip Code Field Cannot be blank");
         thisform.zip.focus();
    } else {
         form_ok = true;
    }
    return form_ok;
}



function validatezip(field) {
	var valid = "0123456789-";
	var hyphencount = 0;

	if (field.length!=5 && field.length!=10) {
		alert("Please enter your 5 digit or 5 digit+4 zip code.");
		return false;
	}
	for (var i=0; i < field.length; i++) {
		temp = "" + field.substring(i, i+1);
		if (temp == "-") 
			hyphencount++;
		if (valid.indexOf(temp) == "-1") {
			alert("Invalid characters in your zip code.  Please try again.");
			return false;
		}
		if ((hyphencount > 1) || ((field.length==10) && ""+field.charAt(5)!="-")) {
			alert("Hyphen should be used with a properly formatted 5 digit+four zip code, like '12345-6789'.   Please try again.");
			return false;
	   }
	}
	return true;
}

function insert_billing_info(form, el) {
    if (el.checked) {
    	form.b_prefix.value=form.prefix.value;
        form.b_fname.value=form.fname.value;
        form.b_lname.value=form.lname.value;

        form.b_phone_area.value=form.phone_area.value;
        form.b_phone_one.value=form.phone_one.value;
        form.b_phone_two.value=form.phone_two.value;
        form.b_phone_ext.value=form.phone_ext.value;

        form.b_alt_phone_area.value=form.alt_phone_area.value;
        form.b_alt_phone_one.value=form.alt_phone_one.value;
        form.b_alt_phone_two.value=form.alt_phone_two.value;
        form.b_alt_phone_ext.value=form.alt_phone_ext.value;

        form.b_fax.value=form.fax.value;
        form.b_address_1.value=form.address_1.value;
        form.b_address_2.value=form.address_2.value;
        form.b_city.value=form.city.value;
        form.b_state.value=form.state.value;
        form.b_zip.value=form.zip.value;
        //form.b_province.value=form.province.value;
        //form.b_country.value=form.country.value;
    } else {
        form.b_prefix.value='';
        form.b_fname.value='';
        form.b_lname.value='';

        form.b_phone_area.value='';
        form.b_phone_one.value='';
        form.b_phone_two.value='';
        form.b_phone_ext.value='';

        form.b_alt_phone_area.value='';
        form.b_alt_phone_one.value='';
        form.b_alt_phone_two.value='';
        form.b_alt_phone_ext.value='';

        form.b_fax.value='';
        form.b_address_1.value='';
        form.b_address_2.value='';
        form.b_city.value='';
        form.b_state.value='';
        form.b_zip.value='';
        //form.b_province.value='';
        //form.b_country.value='';
    }
}

function insert_ph_billing_info(form, el) {
    if (el.checked) {
    	form.b_prefix.value=form.prefix.value;
        form.b_fname.value=form.fname.value;
        form.b_lname.value=form.lname.value;

        form.b_phone_area.value=form.phone_area.value;
        form.b_phone_one.value=form.phone_one.value;
        form.b_phone_two.value=form.phone_two.value;
        form.b_phone_ext.value=form.phone_ext.value;

        form.b_alt_phone_area.value=form.alt_phone_area.value;
        form.b_alt_phone_one.value=form.alt_phone_one.value;
        form.b_alt_phone_two.value=form.alt_phone_two.value;
        form.b_alt_phone_ext.value=form.alt_phone_ext.value;

        form.b_fax_phone_area.value=form.alt_fax_area.value;
        form.b_fax_phone_one.value=form.alt_fax_one.value;
        form.b_fax_phone_two.value=form.alt_fax_two.value;
        
        form.b_address_1.value=form.address_1.value;
        form.b_address_2.value=form.address_2.value;
        form.b_city.value=form.city.value;
        form.b_state.value=form.state.value;
        form.b_zip.value=form.zip.value;
        //form.b_province.value=form.province.value;
        //form.b_country.value=form.country.value;
    } else {
        form.b_prefix.value='';
        form.b_fname.value='';
        form.b_lname.value='';

        form.b_phone_area.value='';
        form.b_phone_one.value='';
        form.b_phone_two.value='';
        form.b_phone_ext.value='';

        form.b_alt_phone_area.value='';
        form.b_alt_phone_one.value='';
        form.b_alt_phone_two.value='';
        form.b_alt_phone_ext.value='';

        form.b_fax_area.value='';
        form.b_fax_one.value='';
        form.b_fax_two.value='';

        form.b_address_1.value='';
        form.b_address_2.value='';
        form.b_city.value='';
        form.b_state.value='';
        form.b_zip.value='';
        //form.b_province.value='';
        //form.b_country.value='';
    }
}


function OpenWindowCenter( targetUrl, wdwName, wdwWidth, wdwHeight, wdwFeatures ) {
    var wdwTop = ( screen.height / 2 ) - ( wdwHeight / 2 );
    var wdwLeft = ( screen.width / 2 ) - ( wdwWidth / 2 );
    var winFeatures = wdwFeatures + ",left=" + wdwLeft + ",top=" + wdwTop;
    newWindow = window.open( targetUrl, wdwName, winFeatures );
}

function showPic (whichpic) {
 if (document.getElementById) {
  document.getElementById('placeholder').src = whichpic.href;
  if (whichpic.title) {
   document.getElementById('desc').childNodes[0].nodeValue = whichpic.title;
  } else {
   document.getElementById('desc').childNodes[0].nodeValue = whichpic.childNodes[0].nodeValue;
  }
  return false;
 } else {
  return true;
 }
}

function ValidEmail(strValue){
    var valid = true;
    var regExp = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
    var regExp2 = /(\s+)|(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/;

    if ( (strValue.search(regExp)) == -1 || strValue.search(regExp2) != -1)
            valid = false;

    return valid;
}

function Validate(frm){
        var returnValue = false;

        if( frm.user.value.replace(/(^\s+)|(\s+$)/g, '').length < 2 ){
                alert("Please enter your User Name.");
                frm.user.focus();
        }  else if( frm.pass.value.replace(/(^\s+)|(\s+$)/g, '').length < 2 ){
                alert("Please enter a your Password.");
                frm.pass.focus();
        } else {
                returnValue = true;
        }
        return returnValue;
}
