window.addEvent('load',function(){
	var order = new OrderObject;
	order.openOrder();
	var items = $('menuDescriptions').getElements('.item');
	items.each(function(itemm,i){
		new Element('p',{
			'class':'subhead_ital',
			'styles':{
				'color':'#f00',
				'margin':'0 0 0.5em 0'
			}
		})
		.set('text','- Click to Order -')
		.inject(itemm.getElement('.price'),'after');
	});
	items.addEvents({
		'mouseenter':function(){
			this.setStyle('cursor','pointer');
		},
		'click':function(){
			order.addToOrder(this.getElement('h4').get('text'),this.getElement('p.price').get('text'));
		}
	});
	var item = '';
	backOrder.each(function(value,i){
		if(value){
			order.addToOrder(value[0],value[1]);
			$('quantity' + i).value = value[2];
			$('quantity' + i).fireEvent('change');
		}
	});
});
function OrderObject(){
/***********  Public  ****************/
	this.addToOrder = function(itemName, price){
		new Fx.Scroll($(document.body)).toTop();
		var realPrice = price.substring(1,price.length);
		realPrice = Math.round(realPrice * 100)/100;
		var wrap = new Element('div',{
			'class':'itemWrapper',
			'styles':{
				'width':'710px',
				'clear':'both',
				'text-align':'left',
				'font-size':'2em',
				'padding':'10px 0 0 10px',
				'background-color':nextColor[(numItems%2)]
			}
		}).set('text',itemName);
		var quantity = new Element('input',{
			'type':'textbox',
			'size':'2',
			'id':'quantity' + numItems
		});
		var price_text = new Element('div',{
			'id':'quantity_price' + numItems,
			'class':'quantity_price',
			'styles':{
				'float':'right',
				'text-align':'left'
			}
		}).set('text',' @ ' + price)
		var hidden_sub = new Element('input',{
			'type':'hidden',
			'id':'hidden_sub' + numItems,
			'name':'hidden_sub' + numItems
		});
		var hidden_price = new Element('input',{
			'type':'hidden',
			'id':'hidden_price' + numItems,
			'name':'hidden_price' + numItems
		});
		var hidden_quantity = new Element('input',{
			'type':'hidden',
			'id':'hidden_quantity' + numItems,
			'name':'hidden_quantity' + numItems
		});
		var hidden_item = new Element('input',{
			'type':'hidden',
			'id':'hidden_item' + numItems,
			'name':'hidden_item' + numItems
		});
		hidden_price.value = realPrice;
		quantity.value = 1;
		hidden_quantity.value = 1;
		hidden_sub.value = realPrice;
		hidden_item.value = itemName;
		quantity.addEvent('change',function(){
			var id = this.getProperty('id');
			var num = id.substring(id.length - 1,id.length);
			num = num * 1;
			if(isNaN(this.value)){
				this.value = $('hidden_quantity'+num).value;
				return;
			}
			if(this.value == 0){
				this.getParent().getParent().destroy();
				updateFooter();
				return;
			}
			$('hidden_quantity'+num).value = this.value;
			$('hidden_sub'+num).value = this.value * $('hidden_price' + num).value;
			updateFooter();
		});
		quantity.inject(price_text, 'top');
		price_text.inject(wrap);
		hidden_sub.inject(wrap);
		hidden_price.inject(wrap);
		hidden_item.inject(wrap);
		hidden_quantity.inject(wrap);
		wrap.inject($('hiddenOrderForm'));
		updateFooter();
		showOrder();
		numItems++;
	};
	this.openOrder = function(){
		screen.inject($('injectable'))
		orderBox.inject($('injectable'));
		var orderSubmit = new Element('input',{
			'type':'submit',
			'value':'Proceed to next Step'
		});
		var continueOrder = new Element('input',{
			'type':'submit',
			'value':'Continue Ordering'
		});
		orderSubmit.inject($('hiddenOrderForm'));
		continueOrder.inject($('orderFooter'));
		continueOrder.addEvent('click',function(){
			hideOrder();
			return false;
		});
	};
/***********  Private  ****************/
	var numItems = 0;
	var nextColor = ['#ccc','#aaa'];
	var orderBox = new Element('div',{
		'id':'orderForm',
		'styles':{
			'opacity':'0',
			'display':'none',
			'height':'500px',
			'width':'720px',
			'position':'absolute',
				'top':(window.getHeight() - 500) / 2,
				'left':(window.getWidth() - 720) /2,
			'background-color':'#fff',
			'border':'2px solid #000'
		}
	});
	orderBox.innerHTML ='<div id="header" style="width:100%;float:left;font-family:Georgia;"><h2 style="float:left;font-size:2.5em;">Order Form</h2></div></div><form id="hiddenOrderForm" name="hiddenOrderForm" action="' + template_dir + '/submitOrder.php" method="post"></form><div id="orderFooter" style="font-size:2.1em;font-family:Georgia, Serif; text-align:center;"><p></p><div><p>Did you remember desert and drinks?</p></div></div>';
	var screen = new Element('div',{
		'id':'screen',
		'styles':{
			'background-color':'#000',
			'opacity':'0',
			'display':'none',
			'position':'absolute',
				'top':'0',
				'left':'0',
			'width':window.getWidth(),
			'height':window.getHeight()
		}
	});
	var screenFX = new Fx.Tween(screen,'opacity');
	var orderFX = new Fx.Tween(orderBox,'opacity');
	var showOrder = function(){
		screen.setStyle('display','block');
		orderBox.setStyle('display','block');
		screen.setStyle('opacity','0.65');
		orderBox.setStyle('opacity','1');
		//screenFX.start(0.85);
		//orderFX.start(1);
	};
	var hideOrder = function(){
		screen.setStyle('display','none');
		orderBox.setStyle('display','none');
		screen.setStyle('opacity','0');
		orderBox.setStyle('opacity','0');
	};
	var updateFooter = function(){
		var total = 0;
		orderBox.getElements('.itemWrapper').each(function(item,i){
			var tmp = item.getElement('input[id^=hidden_sub]').value * 1;
			total += tmp;
		});
		total = Math.round(total*100);
		total = total + '';
		var dollars = total.substring(0,total.length - 2);
		var cents = total.substring(total.length - 2,total.length);
		$('orderFooter').getElement('p').set('text','');
		$('orderFooter').getElement('p').set('text','Order Subtotal: $' + dollars + '.' + cents);
	};
	screen.addEvent('click',function(){
		hideOrder();
	});
};
