var ticketTypeID			= [];
var ticketTypeName 			= [];
var ticketTypePrice 		= [];
var ticketTypeDescription 	= [];

var currentAmountOfTickets = 0;

var rowsCreated = 0;

$(document).ready(function() {
	
	if ($('#orderItemsForm').length > 0)
	{
		getDataFromDatabase();
		$('#newOrderTicket').change(function(){changeTicketType();});
		
		$('#submit_order').click(function() {
			$('#orderTicketTable > * > tr:gt(0) ').each(function(index, element) {
				$('#hidden_totals').append("<input type=\"hidden\" name=\"index_"+ index +"\" value=\""+ $(element).attr('id') +"\" />");
			});
		});
	}
	
});


function changeTicketType()	{
	$('#ticketTypeName').html(ticketTypeName[$('#newOrderTicket option:selected').val()]);
	$('#ticketTypeDescription').html(ticketTypeDescription[$('#newOrderTicket option:selected').val()]);
}

function getDataFromDatabase()
{
	
	jQuery.getJSON( "includes/ajax/ticketTypeData.php", function(ticketTypes) {
		$(ticketTypes).each(function(index, ticketType){
			ticketTypeID[ticketType.id] = ticketType.id;
			ticketTypeName[ticketType.id] = ticketType.name;
			ticketTypePrice[ticketType.id] = ticketType.price;
			ticketTypeDescription[ticketType.id] = ticketType.description;
		});
		changeTicketType();
	});	
}

function addTicketToOrder( form )
{
	rowsCreated++;
	currentAmountOfTickets++;

	var id 	= form.ticket.value;
	var name = ticketTypeName[ticketTypeID.indexOf(id)];
	var userID 	= form.userID.value;
	var userName = form.userID.options[form.userID.selectedIndex].innerHTML;
	//var price	= form.price.value;	// Removed, better to use data from the price array:
	var price = ticketTypePrice[ticketTypeID.indexOf(id)];

	//	L?gg till ny rad i Biljett-arrayerna:
	
	var tableRow = "<tr id=\"oderItem_"+ rowsCreated +"\">";
	tableRow +=	"		<td class=\"tdTicket\">"+name+"</td>";
	tableRow +=	"		<td class=\"tdUser\">"+userName+"</td>";
	tableRow +=	"		<td class=\"tdPrice\">"+price+"</td>";
	tableRow +=	"		<td class=\"tdDelete\"><span class=\"value orderTicketRowDelete\">X</span></td>";
	tableRow +=	"	</tr>";									
										
	$('#orderTicketTable').append(tableRow);
	removeTicketFromOrder();
	renderTotalPrice();


	// Adding the hidden input fields, so that we can access the data after the submit:

	
	var formRow = "<span class=\"orderItem\">";
	formRow +=	"		<input type=\"hidden\" name=\"oderItem_"+ rowsCreated +"_ticketTypeID\" class=\"id\" value=\""+ id +"\" />";
	formRow +=	"		<input type=\"hidden\" name=\"oderItem_"+ rowsCreated +"_userID\" value=\""+ userID +"\" />";
	formRow +=	"	</span>";
	
	$('#orderItems').append(formRow);
	renderTotalAmountOfTickets();		

	$('#total_amount_of_tickets').val(currentAmountOfTickets);
	
}


function removeTicketFromOrder() {
	$('td.tdDelete').each(function(index, element) {
		$(element).click(function() {
			$(".orderItem > [name = "+$(element).parent().attr('id')+"_ticketTypeID]").parent().remove();
			$(element).parent().remove();
			currentAmountOfTickets--;
			$('#total_amount_of_tickets').val(currentAmountOfTickets);
			renderTotalAmountOfTickets();
			renderTotalPrice();
		});
	});
}

function renderTotalPrice()
{
	var totalPrice = 0;
	$('td.tdPrice').each(function(index, element) {
		totalPrice += parseInt($(element).html());
	});
	
	$('#orderTotal').html(totalPrice);
	$('#ticketOrderTotalPrice').val(totalPrice);
	
}



function renderTotalAmountOfTickets()
{
	$('#totalAmountOfThigsBox > * > span').each(function(index, element) {
		$(element).html("0");
	})
	
	$('#orderItems > * > input.id').each(function(index, element) {
		$("#" + $(element).val() + "-biljett-antal > span").html(parseInt($("#" + $(element).val() + "-biljett-antal > span").html()) + 1 );
	});
	
	

}
