/////////////////////////////
// UNIVERSAL SETUP SCRIPTS //
/////////////////////////////

function setup() {
	if (!document.getElementsByTagName) return;
	var anchors = document.getElementsByTagName("a");
	for (var i=0; i<anchors.length; i++) {
		var anchor = anchors[i];
		if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "external") anchor.target = "_blank";
	}
	
	if (document.getElementById('item1')) {
		document.getElementById('qty2').value = '0';
		document.getElementById('qty3').value = '0';
		document.getElementById('qty4').value = '0';
		document.getElementById('qty5').value = '0';
		update();
	}
	
	var els = document.getElementsByTagName('*');
	for (var i=0;i<els.length;i++) {
		if (els[i].className == 'hidden') { kill(els[i].id,0); }
		if (els[i].className == 'hidden2') { els[i].style.display = 'none'; }
	}
	
	if(document.getElementById('popup')) setTimeout("document.getElementById('popup').style.display='block'",3000);
}

///////////////////////////
// SLIDING MENUS SCRIPTS //
///////////////////////////

function toggleNav(id,duration,step_duration){
	var el = document.getElementById(id);
	if (!el || !el.style) return;
	if (duration === undefined) duration = 500;
	if (!step_duration) step_duration = 10;
	var steps = Math.max(Math.ceil(duration/step_duration),1);
	if (el.offsetWidth == 0) { //show it
		morph_width(el,0,el.naturalWidth,duration,steps,0);
	} else { //hide it
		// el.naturalHeight = el.naturalHeight || el.offsetHeight;
		// el.style.overflow = 'hidden';
		// morph_height(el,el.offsetHeight,0,duration,steps,0);
	}
}
function kill(id,duration,step_duration){
	var el = document.getElementById(id);
	if (!el || !el.style) return;
	if (duration === undefined) duration = 500;
	if (!step_duration) step_duration = 10;
	var steps = Math.max(Math.ceil(duration/step_duration),1);
	if (el.offsetWidth !== 0) {
		el.naturalWidth = el.naturalWidth || el.offsetWidth;
		el.style.overflow = 'hidden';
		morph_width(el,el.offsetWidth,0,duration,steps,0);
	}
}
function morph_width(el,from,to,duration,steps,step) {
	var x = step/steps;
	var y = Math.sin((x-0.5)*Math.PI);
	var z = (y+1)*0.5;
	var h = from + (to-from)*z;
	if (step == steps) h = to;
	el.style.width = h+'px';
	if (h == to) return;
	var t = duration/steps;
	if (el.style.width === '0px') el.style.marginTop = '-1px';
	setTimeout(function(){morph_width(el,from,to,duration,steps,step+1)},t);
}
function setup2(foo) {
	var els = document.getElementsByTagName('*');
	for (var i=0;i<els.length;i++) {
		if (els[i].className == 'hidden' && els[i].id !== foo) { kill(els[i].id,300); }
	}
}

//////////////////////////
// GIFT CARD ORDER FORM //
//////////////////////////

function update() {
var est = "Bistro on Main";
var orderURL = 'https://secure.integrityhospitalitygroup.com/giftcards/order-form.php';

var estquery = est.replace(/ /g,'%20');
var tot = 0;
var query = orderURL;
	if (parseFloat(document.getElementById('qty1').value) > 0) {
		tot += parseFloat(document.getElementById('amt1').value) * parseFloat(document.getElementById('qty1').value);
		document.getElementById('item1').value = estquery + '%20Gift%20Card%20-%20$' + document.getElementById('amt1').value;
	} else { document.getElementById('item1').value = ''; }
	if (parseFloat(document.getElementById('qty2').value) > 0) {
		tot += parseFloat(document.getElementById('amt2').value) * parseFloat(document.getElementById('qty2').value);
		document.getElementById('item2').value = estquery + '%20Gift%20Card%20-%20$' + document.getElementById('amt2').value;
	} else { document.getElementById('item2').value = ''; }
	if (parseFloat(document.getElementById('qty3').value) > 0) {
		tot += parseFloat(document.getElementById('amt3').value) * parseFloat(document.getElementById('qty3').value);
		document.getElementById('item3').value = estquery + '%20Gift%20Card%20-%20$' + document.getElementById('amt3').value;
	} else { document.getElementById('item3').value = ''; }
	if (parseFloat(document.getElementById('qty4').value) > 0) {
		tot += parseFloat(document.getElementById('amt4').value) * parseFloat(document.getElementById('qty4').value);
		document.getElementById('item4').value = estquery + '%20Gift%20Card%20-%20$' + document.getElementById('amt4').value;
	} else { document.getElementById('item4').value = ''; }
	if (parseFloat(document.getElementById('qty5').value) > 0) {
		tot += parseFloat(document.getElementById('amt5').value) * parseFloat(document.getElementById('qty5').value);
		document.getElementById('item5').value = estquery + '%20Gift%20Card%20-%20$' + document.getElementById('amt5').value;
	} else { document.getElementById('item5').value = ''; }
	document.getElementById('total').value = "$" + tot;
	
	if (document.getElementById('item1').value !== '') query += "?item1=" + document.getElementById('item1').value + '&qty1=' + document.getElementById('qty1').value;
	if (document.getElementById('item2').value !== '') query += "&item2=" + document.getElementById('item2').value + '&qty2=' + document.getElementById('qty2').value;
	if (document.getElementById('item3').value !== '') query += "&item3=" + document.getElementById('item3').value + '&qty3=' + document.getElementById('qty3').value;
	if (document.getElementById('item4').value !== '') query += "&item4=" + document.getElementById('item4').value + '&qty4=' + document.getElementById('qty4').value;
	if (document.getElementById('item5').value !== '') query += "&item5=" + document.getElementById('item5').value + '&qty5=' + document.getElementById('qty5').value;
	query += '&total=$' + tot + '&est=' + est;
	document.getElementById('go').href = query;
}

function plus1(foo) {
	if (parseFloat(foo) < 5) {
		document.getElementById('order'+foo).style.display = 'block';
		document.getElementById('qty'+foo).value = '1';
		foo = (parseFloat(foo)+1);
		document.getElementById('plus1').innerHTML = '<a href="#" onclick="plus1(\'' + foo + '\'); return false;" onmouseover="update();" onfocus="update();">Add Another Item</a>';
	} else {
		document.getElementById('order'+foo).style.display = 'block';
		document.getElementById('qty'+foo).value = '1';
		document.getElementById('plus1').innerHTML = '';
	}
	update();
}

////////////////////////////
// FORM ACTIVATION SCRIPT //
////////////////////////////

function activate(brillig) {
	document.getElementById('config').name = "config";
	document.getElementById('config').value = brillig;
}


//////////////////////////
// ACTIVATES PAGE SETUP //
//////////////////////////

window.onload = setup;