/*
	The photoPAPER
	
	Website:		thephotopaper.com
	File Name:		common.js
	Description:	Common Javascript functions
	
	Change Log:
		2009.11.24 Created this file.
		2009.12.26 Updated for The photoPAPER.
		2010.01.16 Added element show/hide function.
		2010.01.18 Added subscribe form validation. RWL.
		2010.02.19 Added height adjustment function for subscription page.
*/

var search_query = "Search by Name or Title";

function search_clear() {
	if (document.getElementById("query").value == search_query)
		document.getElementById("query").value = "";
}

function search_reset() {
	if (document.getElementById("query").value == "")
		document.getElementById("query").value = search_query;
}

function showMe(it, box) {
	var vis = (box.checked) ? "block" : "none";
	document.getElementById(it).style.display = vis;
} 

function validate_form(thisform) {
	with (thisform) {

		if (validate_required(del_firstname,"Firstname is required")==false)
  			{del_firstname.focus();return false;}
		if (validate_required(del_lastname,"Lastname is required")==false)
  			{del_lastname.focus();return false;}
		if (validate_required(del_city,"City is required")==false)
  			{del_city.focus();return false;}
		if (validate_required(del_postcode,"Zip / Postcode is required")==false)
  			{del_postcode.focus();return false;}			
		if (validate_required(del_country,"Country is required")==false)
  			{del_country.focus();return false;}
		if (validate_required(telephone,"Telephone is required")==false)
  			{telephone.focus();return false;}
		if (validate_required(email,"Email is required")==false)
  			{email.focus();return false;}
  		if (validate_email(email,"Not a valid e-mail address!")==false)
			{email.focus();return false;}			
		/*if (chargetotal.options[chargetotal.selectedIndex].value == "35" && del_country.options[del_country.selectedIndex].value != "United States of America" && del_country.options[del_country.selectedIndex].value != "Canada")
			{alert("Subscription charge is for USA or Canada delivery address"); return false;}
		if (chargetotal.options[chargetotal.selectedIndex].value != "35" && (del_country.options[del_country.selectedIndex].value == "United States of America" || del_country.options[del_country.selectedIndex].value == "Canada"))
			{alert("Subscription charge is not for USA or Canada delivery address"); return false;}*/

  	}
}

function validate_single_issue_form(thisform) {
	with (thisform) {

		if (validate_required(del_firstname,"Firstname is required")==false)
  			{del_firstname.focus();return false;}
		if (validate_required(del_lastname,"Lastname is required")==false)
  			{del_lastname.focus();return false;}
		if (validate_required(del_city,"City is required")==false)
  			{del_city.focus();return false;}
		if (validate_required(del_postcode,"Zip / Postcode is required")==false)
  			{del_postcode.focus();return false;}			
		if (validate_required(del_country,"Country is required")==false)
  			{del_country.focus();return false;}
		if (validate_required(telephone,"Telephone is required")==false)
  			{telephone.focus();return false;}
		if (validate_required(email,"Email is required")==false)
  			{email.focus();return false;}
  		if (validate_email(email,"Not a valid e-mail address!")==false)
			{email.focus();return false;}			
  	}
}


function updateChargetotal() {
	var unitprice =	document.getElementById("unitprice");
	var quantity = document.getElementById("quantity");
	var chargetotal = unitprice.value * quantity.options[quantity.selectedIndex].value;
	document.getElementById('totaldisplay').innerHTML = chargetotal.toFixed(2);
	document.getElementById('chargetotal').value = chargetotal;
}


function validate_email(field,alerttxt) {
	with (field) {
		apos=value.indexOf("@");
	  	dotpos=value.lastIndexOf(".");
	  	if (apos<1||dotpos-apos<2) {
	  		alert(alerttxt);return false;
	  	}
	  	else {
	  		return true;
		}
	}
}

function validate_required(field,alerttxt) {
	with (field){
		if (value==null||value=="") {
    		alert(alerttxt);return false;
    	}
  		else {
    		return true;
    	}
  	}
}

function fixHeight(it, height1, height2, box) {
	var height = (box.checked) ? height2 : height1;
	document.getElementById(it).style.height = height + "px";
}
