/* ******************** */
// document ready
$(function() { 
	/* ******************** */
	// associate cfajaxproxy
	var proxy = new dataproxy();
	/* ******************** */	
	// populate ocid from hidden form field
	var event_ocid = $("#event_ocid").val();
	/* ******************** */		
	// add contact info	
	contact_info = proxy.buildContactInfo(event_ocid);
	$('#attendee div').html(contact_info.toString());
	/* ******************** */	
	// add attendee row	(no longer a "row" per se, but a form for attendees)
	$('#attendee_add').click(function()
		{
		// convert form data to hidden fields for the cart total
		var form_attendee_firstname = $("input[@id=form_attendee_firstname]").val();
		var form_attendee_lasttname = $("input[@id=form_attendee_lastname]").val();
		var form_attendee_title = $("input[@id=form_attendee_title]").val();
		var form_attendee_email = $("input[@id=form_attendee_email]").val();
		var form_attendee_organization = $("input[@id=form_attendee_organization]").val();
		
		// determine number of attendees (just using the firstname field)
		var number_hidden_attendee = 0;
		$("input[@id=attendee_firstname]").each( function () {
			number_hidden_attendee = number_hidden_attendee + 1;							
		});

		if (number_hidden_attendee == 0)
			{		
			// convert form data options to hidden fields for cart total
				// event options are hidden by css
			var attendee_event_list = "";
			$("input[@class=form-input-checkbox]").each( function () {			
				if ( $(this).attr('checked') )
					{ 
					attendee_event_list = attendee_event_list + '<input type="checkbox" value="' + $(this).val() + '" class="input-checkbox" checked/>';
					}   
				else
					{ attendee_event_list = attendee_event_list + '<input type="checkbox" value="' + $(this).val() + '" class="input-checkbox" />'; }
			});
			// hidden fields		
			$("#attendee").before('<input type="hidden" id="attendee_firstname" name="attendee_firstname" value="' + form_attendee_firstname + '" /><input type="hidden" id="attendee_lastname" name="attendee_lastname" value="' + form_attendee_lasttname + '" /><input type="hidden" id="attendee_title" name="attendee_title" value="' + form_attendee_title + '" /><input type="hidden" id="attendee_email" name="attendee_email" value="' + form_attendee_email + '" /><input type="hidden" id="attendee_organization" name="attendee_organization" value="' + form_attendee_organization + '" />' + attendee_event_list);
			}			
			// only add hidden fields if an option is selected
		else
			{
			var attendee_option_selected = 0;
			$("input[@class=form-input-checkbox]").each( function () {			
			if ( $(this).attr('checked') )
				{ attendee_option_selected = 1; }   
			});
			
			if ( attendee_option_selected == 1 )
				{
				// convert form data options to hidden fields for cart total
					// event options are hidden by css
				var attendee_event_list = "";
				$("input[@class=form-input-checkbox]").each( function () {			
					if ( $(this).attr('checked') )
						{ 
						attendee_event_list = attendee_event_list + '<input type="checkbox" value="' + $(this).val() + '" class="input-checkbox" checked/>';
						}   
					else
						{ attendee_event_list = attendee_event_list + '<input type="checkbox" value="' + $(this).val() + '" class="input-checkbox" />'; }
				});
				// hidden fields		
				$("#attendee").before('<input type="hidden" id="attendee_firstname" name="attendee_firstname" value="' + form_attendee_firstname + '" /><input type="hidden" id="attendee_lastname" name="attendee_lastname" value="' + form_attendee_lasttname + '" /><input type="hidden" id="attendee_title" name="attendee_title" value="' + form_attendee_title + '" /><input type="hidden" id="attendee_email" name="attendee_email" value="' + form_attendee_email + '" /><input type="hidden" id="attendee_organization" name="attendee_organization" value="' + form_attendee_organization + '" />' + attendee_event_list);				
				}			
			}			

		// change form for attendees		
		attendee_row = proxy.buildAttendeeRow(event_ocid);
		$('#attendee div').html(attendee_row.toString());	
		get_total();
		// change contact info form
		return false;
		}
	);	
	/* ******************** */
	// continue button
	$('#continue_cart').click(function()
		{
		
		// get variables for registration
		var session_id = $("#session_id").val();
		var event_ocid = $("#event_ocid").val();		
		var event_sourcecode = $("#event_sourcecode").val();
		var attendee_firstname_list = get_attendee_firstname();
		var attendee_lastname_list = get_attendee_lastname();
		var attendee_title_list = get_attendee_title();
		var attendee_email_list = get_attendee_email();
		var attendee_organization_list = get_attendee_organization();		
		var attendee_options_list = get_attendee_option();
		// save registration
		save_registration = proxy.saveRegistration(session_id,event_ocid,attendee_firstname_list,attendee_lastname_list,attendee_title_list,attendee_email_list,attendee_organization_list,attendee_options_list,event_sourcecode);
		// send user to the shoppoing cart		
		cartLink = proxy.buildShoppingCartLink(event_ocid,attendee_options_list);
		if (cartLink.length)
			{ window.location = cartLink; }		
		return false;		
		}
	);	
	/* ******************** */	
	// disable cart button
	$('#continue_cart').attr("disabled",true);
	$('#continue_cart').attr("src","/images/btn-continue-cart-grey.jpg");	
});


/* ******************** */	
// get list of attendee first names
function get_attendee_firstname() {
	var attendee_firstname_list = "";
	$("input[@id=attendee_firstname]").each( function () {
		// must have a length
		if ( $(this).val()== "" )
			{ attendee_firstname_value = "[]"; }   
		else
			{ attendee_firstname_value = $(this).val(); }								
		attendee_firstname_list = attendee_firstname_list + attendee_firstname_value + "|";
	});
	// zero based, remove last character ("|");			
	if (attendee_firstname_list.length)
		{ attendee_firstname_list = attendee_firstname_list.slice(0,attendee_firstname_list.length-1); }
	return attendee_firstname_list;
}
/* ******************** */	
// get list of attendee last names
function get_attendee_lastname() {
	var attendee_lastname_list = "";
	$("input[@id=attendee_lastname]").each( function () {
		// must have a length
		if ( $(this).val()== "" )
			{ attendee_lastname_value = "[]"; }   
		else
			{ attendee_lastname_value = $(this).val(); }								
		attendee_lastname_list = attendee_lastname_list + attendee_lastname_value + "|";
	});
	// zero based, remove last character ("|");			
	if (attendee_lastname_list.length)
		{ attendee_lastname_list = attendee_lastname_list.slice(0,attendee_lastname_list.length-1); }
	return attendee_lastname_list;
}
/* ******************** */	
// get list of attendee titles
function get_attendee_title() {
	var attendee_title_list = "";
	$("input[@id=attendee_title]").each( function () {
		// must have a length
		if ( $(this).val()== "" )
			{ attendee_title_value = "[]"; }   
		else
			{ attendee_title_value = $(this).val(); }								
		attendee_title_list = attendee_title_list + attendee_title_value + "|";
	});
	// zero based, remove last character ("|");			
	if (attendee_title_list.length)
		{ attendee_title_list = attendee_title_list.slice(0,attendee_title_list.length-1); }
	return attendee_title_list;
}
/* ******************** */	
// get list of attendee emails
function get_attendee_email() {
	var attendee_email_list = "";
	$("input[@id=attendee_email]").each( function () {
		// must have a length
		if ( $(this).val()== "" )
			{ attendee_email_value = "[]"; }   
		else
			{ attendee_email_value = $(this).val(); }								
		attendee_email_list = attendee_email_list + attendee_email_value + "|";
	});
	// zero based, remove last character ("|");			
	if (attendee_email_list.length)
		{ attendee_email_list = attendee_email_list.slice(0,attendee_email_list.length-1); }
	return attendee_email_list;
}
/* ******************** */	
// get list of attendee emails
function get_attendee_organization() {
	var attendee_organization_list = "";
	$("input[@id=attendee_organization]").each( function () {
		// must have a length
		if ( $(this).val()== "" )
			{ attendee_organization_value = "[]"; }   
		else
			{ attendee_organization_value = $(this).val(); }								
		attendee_organization_list = attendee_organization_list + attendee_organization_value + "|";
	});
	// zero based, remove last character ("|");			
	if (attendee_organization_list.length)
		{ attendee_organization_list = attendee_organization_list.slice(0,attendee_organization_list.length-1); }
	return attendee_organization_list;
}
/* ******************** */	
// get list of attendee options
function get_attendee_option() {
	var attendee_option_list = "";
	$("input[@class=input-checkbox]").each( function () {
		if ( $(this).attr('checked') )
			{ 
			if ( $(this).val().length )
				{ attendee_option_value = $(this).val(); }
			else
				// option selected, but no track id
				{ attendee_option_value = 0; }
			}   
		else
			{ attendee_option_value = "[]"; }					
		attendee_option_list = attendee_option_list + attendee_option_value + "|";
	});
	// zero based, remove last character ("|");			
	if (attendee_option_list.length)
		{ attendee_option_list = attendee_option_list.slice(0,attendee_option_list.length-1); }
	return attendee_option_list;
}
/* ******************** */	
// function to gray out attendee information for tbd
function click_tbd() {

	if ($("input[@id=attendee_tbd]").attr("checked") == true)
		{
		// first name
		$("input[@id=form_attendee_firstname]").attr("value", "");
		$("input[@id=form_attendee_firstname]").attr("disabled", true);
		// last name
		$("input[@id=form_attendee_lastname]").attr("value", "");
		$("input[@id=form_attendee_lastname]").attr("disabled", true);
		// title
		$("input[@id=form_attendee_title]").attr("value", "");
		$("input[@id=form_attendee_title]").attr("disabled", true);
		// email
		$("input[@id=form_attendee_email]").attr("value", "");
		$("input[@id=form_attendee_email]").attr("disabled", true);
		// organization
		$("input[@id=form_attendee_organization]").attr("value", "");
		$("input[@id=form_attendee_organization]").attr("disabled", true);		
		}
	else
		{
		// first name
		$("input[@id=form_attendee_firstname]").attr("disabled", false);	
		// last name
		$("input[@id=form_attendee_lastname]").attr("disabled", false);
		// title	
		$("input[@id=form_attendee_title]").attr("disabled", false);
		// email
		$("input[@id=form_attendee_email]").attr("disabled", false);
		// organization
		$("input[@id=form_attendee_organization]").attr("disabled", false);		
		}			
}
/* ******************** */	
// get total for options
function get_total() {
	// populate ocid from hidden form field
	var event_ocid = $("#event_ocid").val();
	var attendee_firstname_list = get_attendee_firstname();
	var attendee_lastname_list = get_attendee_lastname();
	var attendee_title_list = get_attendee_title();
	var attendee_email_list = get_attendee_email();
	var attendee_organization_list = get_attendee_organization();		
	var attendee_options_list = get_attendee_option();
		// associate cfajaxproxy
	var total_proxy = new dataproxy();
			// build cart
	total_display = total_proxy.buildPrice(event_ocid,attendee_firstname_list,attendee_lastname_list,attendee_options_list);
	$('#cart-item').html(total_display.DISPLAY_ITEM);	
	// format total to currency
	var total_grand = ("$" + (total_display.TOTAL_GRAND).toFixed( 2 ))	
	$('#cart-total').html(total_grand);	
	
	// disable "continue" button depending on the quantity of items selected (need a price)
	if ( total_display.TOTAL_GRAND == 0 )
		{
		$('#continue_cart').attr("disabled",true);
		$('#continue_cart').attr("src","/images/btn-continue-cart-grey.jpg");
		}
	else
		{
		$("#continue_cart").attr("disabled",false);
		$('#continue_cart').attr("src","/images/btn-continue-cart.jpg");
		}
			// build attendee display list
	total_attendee_display = total_proxy.buildAttendeeListDisplay(attendee_firstname_list,attendee_lastname_list,attendee_title_list,attendee_email_list,attendee_organization_list,attendee_options_list);
	$('#attendee_display_list').html(total_attendee_display.toString());	
			
}
/* ******************** */	
// remove options from contact info
function click_remove_options() {
	$("#attendee p").css("display","none");
	$("#attendee ul").css("display","none");
	// remove any selected options
	$(".form-input-checkbox").each( function () {
		$(this).attr("checked",false);
	});
}
/* ******************** */	
// add options to contact info
function click_add_options() {
	$("#attendee p").css("display","block");
	$("#attendee ul").css("display","block");
	
	var number_contact_options = 0;
	$(".form-input-checkbox").each( function () {
		number_contact_options = number_contact_options + 1;
	});	
		
	if (number_contact_options == 1)
		{
		$(".form-input-checkbox").each( function () {
			$(this).attr("checked",true);
		});		
		}	
}



