//Globals 
var eventreg_data = {}; 
var eventreg_price = {};	


$(document).ready(function() {

	
	$('.event_registration .eventreg_register_submit').click(function() { 
		var meta = $(this).metadata();
		var evid = meta.ev_id; 
		var evsel = '.event_registration_'+evid+' ';
		var uuid = $.uuid();

		var name = $(evsel+' input.eventreg_name').val(); 
		var type = $(evsel+' select.eventreg_memtype').val(); 
		var type_name = $(evsel+' select.eventreg_memtype option[value="'+type+'"]').text();
		
		if (!eventreg_data[evid]) {
			eventreg_data[evid] = {};
			eventreg_price[evid] = 0; 
		}
		
		eventreg_data[evid][uuid] = {};
		
		eventreg_data[evid][uuid]['name']=name.replace(/'/g,"\'");
		eventreg_data[evid][uuid]['type']=type;
		eventreg_data[evid][uuid]['type_name']=type_name;

//		var title = meta.title; 
		eventreg_data[evid][uuid]['title'] = meta.title.replace(/'/g,"\'");;
		
		//Validation
		if ( name == '') {
			window.alert('Please specify the attendee\'s name. ');
			return false;
		} else if (type==0 || type=='') { 
			window.alert('Please select the membership type. ');
			return false;
		}

		eventreg_price[evid] += parseInt(meta['price_' + type]);		
		
		//Attach the new member
		$(evsel + ' table.eventreg_registered').append('<tr class="'+uuid+'"><td width="40%">'+name+'</td><td width="60%">'+type_name+'</td><td><span class="ui-icon ui-icon-trash" style="cursor:pointer" onClick="eventreg_remove(\''+evid+'\',\''+uuid+'\', \''+meta['price_' + type]+'\');"></span></td></tr>'); 
		
		//Reset the inputs
		$(evsel+' input.eventreg_name').val('');
		$(evsel+' select.eventreg_memtype').val(0);
		
		
		//Update the total if we're paying
		if (prsa_registration_free[evid] != true)  { 
			$(evsel + ' span.eventreg_total').text( '$' + eventreg_price[evid] + '.00');
		} else { 
			$('.sub-total-title').remove();
		}
		
		//Zebra stripes
		$(evsel + ' table.eventreg_registered tr:odd > td').css('background-color','#fff');
		$(evsel + ' table.eventreg_registered tr:even > td').css('background-color','#eee');
		
		//Show the registered attendee's list if it's still hidden
		$(evsel+' div.eventreg_registered_attendees:hidden').slideDown();
		$(evsel+' div.eventreg_registered_attendees .eventreg_checkout:hidden').slideDown();
			
	});
		

	//Build the paypal cart & submit
	$('.eventreg_checkout').click(function() {
		var paypalcart = '';
		var meta = $(this).metadata();
		var evid = meta.ev_id; 
		var c = 0; 


	
		//Free registartion, no paypal redirect
		if (prsa_registration_free[evid] == true)  { 
			var reg = 'data=' + $.toJSON(eventreg_data);
			reg += '&action=save_free_registrants&ev_id=' + evid;
			$.post('events.php' , reg , function(data , status) {
				if (data.status == 'ok') { 
					var html = '<b>Registration successful</b>';
					$('form.eventreg_form_' + evid).parent().slideUp().html(html).slideDown();
					
				}
				
			} , 'json');
			return true;
		}
	
		$.each(eventreg_data[evid] , function(i,e) { 
			c++;
			var price = meta['price_' + e.type]; 
			var item_number = meta['pp_item_' + e.type];
			if (price > 0) { 
				paypalcart += '<input type="hidden" name="item_name_'+c+'" value="' + meta.title + ' - ' +  e.name + ' - ' + e.type_name +'"><input type="hidden" name="item_number_'+c+'" value="'+item_number+'"><input type="hidden" name="amount_'+c+'" value="' + price + '">';
			}
		});

		//window.alert(paypalcart);return false;
		$('form.eventreg_form_' + evid).append(paypalcart);
		$('form.eventreg_form_' + evid).trigger('submit');
		
		//window.alert(paypalcart);
	});

		
});  //End document.ready

	
function eventreg_remove(evid , uuid , price) {
	var evsel = '.event_registration_'+evid+' ';
	if (confirm( "Are you sure you want to delete " + eventreg_data[evid][uuid]['name'] + " ? ")) {

		//Remove hte row
		$(evsel + ' table.eventreg_registered tr.' + uuid).remove();

		delete(eventreg_data[evid][uuid]);
		
		//Decrease price
		eventreg_price[evid] -= parseInt(price);

		//Update the total
		$(evsel + ' span.eventreg_total').text( '$' + eventreg_price[evid] + '.00');
		
		if (eventreg_price[evid]==0) { 
			$(evsel + ' .eventreg_checkout').hide();
		}
		//Zebra stripes
		$(evsel + ' table.eventreg_registered tr:odd > td').css('background-color','#fff');
		$(evsel + ' table.eventreg_registered tr:even > td').css('background-color','#eee');

	

	} else { 
		return false;
	}
	return true;
}