//***************** GLOBAL SITE TOOLS ***************

function popupWin(name, url, width, height) {
	var new_win = window.open(url, name,'width=' + width + ',height=' + height + ',directories=no,toolbar=no,resizable=no,location=no,menubar=no,status=no,scrollbars=no');
}

function randomTopbarImage() {

	image_disp = new Array();
	image_disp = ['apple', 'eggs', 'tomato', 'pepper'];
	
	var arr_length = image_disp.length;
	var random_number = Math.floor(Math.random()*arr_length);
	
	var page_string = '<img src=\"images/topbar/' + image_disp[random_number] + '.jpg\">';
	
	alert(page_string);
	
}

// course dropdown menu on left include
function openCourseInfo() {
	var selected_course = document.course_finder.course_dropdown.value;
	if(selected_course != 99) {
		document.location.href = 'course_info.php?course_id=' + selected_course;
	}
}

function addToFavourites() {

	var link_title = 'The Cooking Experience';
	var link_url = 'http://www.cookingexperience.co.uk';
	
	if (window.sidebar) { 
		window.sidebar.addPanel(link_title, link_url,""); 
	} else if( document.all ) {
		window.external.AddFavorite( link_url, link_title);
	} else if( window.opera && window.print ) {
		return true;
	}
	
}

//*******************************************************

// ***** TOOL TO CHECK MAIL LIST SUBMIT CRITERIA ********

function checkEmailAddress() {

	var doc_field = document.nl_form.YMLP0;
	var valid_address = doc_field.value.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\..{2,2}))$)\b/gi);
	
	if (valid_address != null){
	   // run form submission
	   document.nl_form.submit();
	} else {
	   alert('Please enter a valid email address');
	}
	
}

//*******************************************************

// ***** TOOL TO CHECK CONTACT SUBMIT CRITERIA **********

function checkContactForm() {

	var cn = document.contact_form.cust_name.value;
	var ce = document.contact_form.cust_email.value;
	var ct = document.contact_form.cust_tel.value;
	
	//alert(cn + " " + ce + " " + ct);
	
	if(cn && ce && ct) {
		document.contact_form.submit();
	} else {
		var contact_array = new Array();
		
		if(!cn) {
			contact_array.push('Name');
		}
		if(!ce) {
			contact_array.push('Email Address');
		}
		if(!ct) {
			contact_array.push('Telephone Number');
		}
		
		alert('Please fill in the following required fields \n\n' + contact_array.toString());
	}
	
}

//*******************************************************

//******* PAGE ID GRABBING TOOL FOR CART, ETC ***********

// QueryString 
// Call function by x = querystring("variable") returns variable=x 
function QueryString(key) { 
	var value = null; 
	
	for (var i=0;i<QueryString.keys.length;i++) { 
		if (QueryString.keys[i]==key) { 
			
			value = QueryString.values[i]; 
			
			break;
			 
		} 
		
	} 
	return value; 
	
} 
	
QueryString.keys = new Array(); 
QueryString.values = new Array(); 
	
function QueryString_parse() { 
	
	var query = window.location.search.substring(1); 
	var pairs = query.split("&"); 
	
	for (var i=0;i<pairs.length;i++) { 
	
		var pos = pairs[i].indexOf('='); 
			
			if (pos >= 0) { 
	
				var argname = pairs[i].substring(0,pos); 
				var value = pairs[i].substring(pos+1); 
				QueryString.keys[QueryString.keys.length] = argname; 
				QueryString.values[QueryString.values.length] = value; 
			} 
	}
	 
} 

QueryString_parse(); 

function checkId() {
	var c_id = QueryString("course_id");
	return Number(c_id);
	
}

function checkVoucher() {
	var v_id = QueryString("is_voucher");

	return Boolean(v_id);
	
}

function checkDate() {
	var d_id = QueryString("is_date");

	return Boolean(d_id);
	
}

//*******************************************************

// ************** QUANTITY SELECTION TOOL ***************

function createQtyForm(fid) {
	document.write('<table width="100" cellpadding="0" cellspacing="0"><tr><td width="20"><a onClick="javascript:incQty(\'down\',\'' + fid + '\');"><img src="images/shop/btn_minus.gif" border="0"></a></td><td align="center"><input type="text" id="qty" name="qty" value="1" class="inputText" style="width: 50px; height: 20px;"></td><td width="20"><a onClick="javascript:incQty(\'up\',\'' + fid + '\');"><img src="images/shop/btn_plus.gif" border="0"></a></td></tr></table>');
}

function incQty(direction, fid) {
	
	var qty_str = document[fid].qty.value;
	
	var curr_qty = parseInt(qty_str);
	
	var new_qty = curr_qty;

	if(direction == 'down') {
		
		if(curr_qty != 1) {
			new_qty--;
			
		}
		
	} else if (direction == 'up') {

		if(curr_qty < 5) {
			new_qty++;
		}
		
	}
	
	document[fid].qty.value = new_qty;
	
}

//*******************************************************

// ************** COLOUR SELECTION TOOL *****************

var colour_array = new Array();

// loads colours according to whether the page needs them
// isDefault shows that colour as selected
function displayColour(item_id, colour, isDefault, price) {
	if(isDefault) {
		document[item_id].price.value = price;
		document.write('<a onmouseover="Tip(\'<span class=tipColour>' + colour + '</span> <span class=tipPrice>£' + price + '</span>\', BGCOLOR, \'#EEEEEE\', BORDERCOLOR, \'#333333\', DELAY, 0)" onmouseout="UnTip()" href="javascript:changeSelectedColour(\'' + item_id + '\',\'' + colour + '\',\'' + price + '\');" hidefocus><img src="images/shop/colours/' + colour + '_selected.gif" width="22" height="22" border="0" name="' + item_id + '_' + colour + '" /></a>&nbsp;');
		document[item_id].colour.value = colour;
	} else {
		document.write('<a onmouseover="Tip(\'<span class=tipColour>' + colour + '</span> <span class=tipPrice>£' + price + '</span>\', BGCOLOR, \'#EEEEEE\', BORDERCOLOR, \'#333333\', DELAY, 0)" onmouseout="UnTip();" href="javascript:changeSelectedColour(\'' + item_id + '\',\'' + colour + '\',\'' + price + '\');" hidefocus><img src="images/shop/colours/' + colour + '.gif" width="22" height="22" border="0" name="' + item_id + '_' + colour + '" /></a>&nbsp;');
	}
}

function changeSelectedColour(item_id, colour, item_price) {
	
	//alert('item id is ' + item_id + ' and colour is ' + colour + ' price is ' + item_price);
	
	var array_name = this[item_id + '_array'];
	
	for(var i=0;i<=array_name.length-1;i++) {
		
		var item_string = item_id + '_' + array_name[i];
		
		if(array_name[i] == colour) {
			document[item_string].src = '../../images/shop/colours/' + array_name[i] + '_selected.gif';
			document[item_id].colour.value = array_name[i];
			document[item_id].price.value = item_price;
		} else {
			document[item_string].src = '../../images/shop/colours/' + array_name[i] + '.gif';
		}
	}

}

//*******************************************************

// ************** SHOPPING CART TOOL ********************

function cartHandler() {
	
	var page = QueryString("page")
	
	if(page == "addcart") {
		addToCart();
	} else if (page == "viewcart") {
		viewCart();
	} else if (page == "checkout") {
		checkOut();
	}
	
}

function addToCart() {
	
	var prod = QueryString("product");
	var price = QueryString("price");
	var qty = QueryString("quantity");
	var msg = QueryString("message");
	
	var address = 'http://ww5.aitsafe.com/cf/add.cfm?userid=7385886&product=' + prod + '&price=' + price + '&qty=' + qty + '&message=' + msg;
	
	document.write('<iframe id="glu" name="cart_disp" src=" ' + address + '" width="574" height="800" frameborder="0" scrolling="auto" marginwidth="0" marginheight="0">Alternative text for browsers that do not understand IFrames.</iframe>');
	
}

function viewCart() {
	
	var address = 'http://ww5.aitsafe.com/cf/review.cfm?userid=7385886';
	
	document.write('<iframe id="glu" name="cart_disp" src=" ' + address + '" width="574" height="800" frameborder="0" scrolling="auto" marginwidth="0" marginheight="0">Alternative text for browsers that do not understand IFrames.</iframe>');
}

function checkOut() {
	
	var address = 'http://ww5.aitsafe.com/cf/pay.cfm?userid=7385886';
	
	document.write('<iframe id="glu" name="cart_disp" src=" ' + address + '" width="574" height="800" frameborder="0" scrolling="auto" marginwidth="0" marginheight="0">Alternative text for browsers that do not understand IFrames.</iframe>');
}

function populateVouchers() {
	
	var prod = QueryString("product");
	var price = QueryString("price");
	var qty = QueryString("quantity");
	var msg = QueryString("message");
	
	for(var i=1;i<=5;i++) {
		document.write('<p>Voucher ' + qty + '</p>');
	}
	
}

function cartTitle() {
	
	var page = QueryString("page")
	
	if(page == "addcart" || page == "viewcart") {
		document.write('<h1>Your Shopping Cart</h1>');
	} else if (page == "checkout") {
		document.write('<h1>Checkout</h1>');
	}
	
}

function checkFormValue(item_id) {
	if ((document[item_id].colour.value.length == 0) || (document[item_id].colour.value == null)) {
		return false;
	} else { 
		return true; 
	}
}

function addProduct(item_id, item_name, item_price) {

	// definate vars needed are id, name, description, quantity, price
	// optional vars include colour, size, etc...

	var item_qty = parseInt(document[item_id].qty.value);
	
	var item_cost = parseFloat(item_price);
	
	var show_colour = false;
	var item_colour = "";

	if(checkFormValue(item_id)) {
		show_colour = true;
		item_colour = document[item_id].colour.value;
		item_colour_p = document[item_id].price.value;
		item_colour_price = parseFloat(item_colour_p);
		
	}

	//if(show_colour) {
		//item_colour =  = document[item_id].colour.value;
	//}
	
	if(show_colour) {
		var submit_string = 'cart.php?page=addcart&product=' + item_id + ' (' + item_colour + ') ' + item_name +'&price=' + item_colour_price + '&quantity=' + item_qty + '&is_shop=true';
	} else {
		var submit_string = 'cart.php?page=addcart&product=' + item_id + ' ' + item_name + '&price=' + item_cost + '&quantity=' + item_qty + '&is_shop=true';
	}
	
	document.location.href = submit_string;
	
}

function addCourse(item_name, item_qty, item_price) {
	
	//alert(item_name + " " + item_qty + " " + item_price);

	// definate vars needed are id, name, description, quantity, price
	// optional vars include colour, size, etc...

	var item_cost = parseFloat(item_price);

	var submit_string = 'cart.php?page=addcart&product=' + item_name + '&price=' + item_cost + '&quantity=' + item_qty;
	
	//alert(submit_string);
	
	document.location.href = submit_string;
	
}

//*******************************************************

// *******  HIDDEN DIV TOOL FOR HELP ETC ****************

if (document.getElementById){ 
	document.write('<style type="text/css">\n')
	document.write('.hiddenText{display: none;}\n')
	document.write('</style>\n')
}

function SwitchItem(obj) {
	
	if(document.getElementById) {
		var el = document.getElementById(obj);
		var ar = document.getElementById("hiddendiv").getElementsByTagName("span"); 
		if(el.style.display != "block"){ 
			
			for (var i=0; i<ar.length; i++){
				if (ar[i].className=="hiddenText") 
				ar[i].style.display = "none";
			}
			
			el.style.display = "block";
		
		} else {
			el.style.display = "none";
		}
	}
	
}

//*******************************************************

//**** DIV SWITCH FOR LOADING COURSE INFO ON CALENDAR ***

function HideDIV(d) {
	document.getElementById(d).style.visibility = "hidden"; 
}

function DisplayDIV(d) { 
	document.getElementById(d).style.visibility = "visible"; 
}

function showCourse(show_course, page_id) {
	
	//alert('show course = ' + show_course + ' page id = ' + page_id);
	
	if(show_course) {
		//alert('show course' + document.getElementById("cInfo"));
		document.getElementById("cInfo").src = 'includes/courses/calendar_info.php?course_id=' + page_id;
		HideDIV('calendarDisplay');
		DisplayDIV('courseInfoDisplay');
	} else {
		//alert('hide course');
		document.getElementById("cInfo").src = 'includes/courses/course_loading.php';
		HideDIV('courseInfoDisplay');
		DisplayDIV('calendarDisplay');
	}
}

//*******************************************************

//**** JS FOR ADDING GIFT VOUCHER TO THE SHOPPING CART ***

function addVoucher(item_id, item_name, item_price) {

	// definate vars needed are id, name, description, quantity, price
	// optional vars include colour, size, etc...

	var item_qty = parseInt(document[item_id].qty.value);
	
	var item_cost = parseFloat(item_price);

	//if(checkFormValue(item_id)) {
		//show_colour = true;
		//item_colour = document[item_id].colour.value;
		//item_colour_p = document[item_id].price.value;
		//item_colour_price = parseFloat(item_colour_p);
		
	//}

	//if(show_colour) {
		//item_colour =  = document[item_id].colour.value;
	//}
	
	var submit_string = 'gift_vouchers_info.php?product=' + item_id + ' ' + item_name + '&price=' + item_cost + '&quantity=' + item_qty;
	
	document.location.href = submit_string;
	
}

function populateVouchers() {
	
	var qty = QueryString("quantity");
	
	for(var i=1;i<=qty;i++) {
		document.write('<p><b>Customer ' + i + ' name: <input type="text" name="n' + i + '" class="newsletterInput"> Check if customer has been before: <input type="checkbox" name="bb' + i + '" id="bb' + i + '" value="1"></b>');
	}
	
}

function voucherToCart() {
	
	var prod = QueryString("product");
	var price = QueryString("price");
	var qty = QueryString("quantity");
	var msg = QueryString("message");
	
	var empty_fields;
	
	for(var i=1;i<=qty;i++) {
		var c_name = document.cust_form['n' + i].value;
		var c_bb = document.cust_form['bb' + i].checked;
		
		if(c_bb) {
			var bb_text = 'has been before';
		} else {
			var bb_text = 'has not been before';
		}
		
		prod += '> Customer ' + i + ' name is ' + c_name + ' and ' + bb_text;
		
		//alert('> Customer ' + i + ' name is ' + c_name + ' and ' + bb_text);
		
	}
	
	var submit_string = 'cart.php?page=addcart&product=' + prod + '&price=' + price + '&quantity=' + qty;
	
	//alert('cart.php?page=addcart&product=' + prod + '&price=' + price + '&quantity=' + qty + '&is_shop=true');

	document.location.href = submit_string;
	
}

