$(function() {	// DOM ready
	
	$('#donate_prompt').bind('change keyup',function() {
		$.get(
			'ajax/index.html'
			,{
				page:'shop'
				,option:'summary'
				,action:'donate_prompt'
				,item:$(this).val()
			}
			,function(data) {
				
				holder = $('#donate_prompt_specify_holder'); 

				if(!data.length) {
					holder.remove();
				}
				else if(holder.length) {
					holder.replaceWith(data).fadeIn();
				}
				else {
					$('#donate_prompt').parents('fieldset:first').append(data).fadeIn();
				}
			}
		);
	}).trigger('change');
	
	
	$('#giftaid_terms').hide();
	
	$('#uk_tax_payer').bind('change click keyup',function(e) {
		
		if($(this).attr('checked')) {
			$('#giftaid_terms').fadeIn('fast');
			$('#giftaid_terms input.required').attr('checked','checked');
			$('#giftaid_terms').find('input').trigger('change');
		}
		else {
			$('#giftaid_terms').fadeOut('fast');
			$('#your_giftaid').html('&pound;0');
		}
	}).trigger('change');
	
	giftaid_ticked = 0;
	giftaid_required = $('#giftaid_terms input.required'); 
	
	declaration_text = $('#declaration_status').html();
	
	$('#giftaid_terms input').bind('click change keyup',function(e) {
		
		if(!$('#uk_tax_payer').attr('checked')) {
			return false;
		}
		
		if($('#personal_money_no').attr('checked')) {
			$('#declaration_status').html('We cannot claim gift aid from this donation.<br />No gift aid declaration will be setup.');
		}
		else {
			$('#declaration_status').html(declaration_text);
		}
		
		if($("#giftaid_terms input.required:checked").length == giftaid_required.length) {
			$('#your_giftaid').html($('#giftaid_total').html());
		}		
		else {
			$('#your_giftaid').html('&pound;0');
		}
		
		
	});
	
	$('a.dd_guarantee').toggle(
		function(e) {
			$('#dd_guarantee').slideDown('fast');
			$(this).find('span').html('&uarr;');	
		}
		,function(e) {
			$('#dd_guarantee').slideUp('fast');
			$(this).find('span').html('&darr;');
		}
	);
	
	$('#cc_billing_address_id').bind('change',function() {
		
		$.get(
			'ajax/index.html'
			,{
				page:'shop',
				action:'session_address',
				address_id:$(this).val()
			}
			,function(data) {
				
//				$('#payment_capture').append('<input type="hidden" name="preference" value="fields" />')
				
				if($('#cc_address_holder').length) {
					$('#cc_address_holder').replaceWith(data);
				} else {
					$('#cc_billing_address_id').parents('div.r1').after(data);
				}
				
				$('#cc_billing_address_id').val('');
				
			}
		)
	});
	
	$('#giftaid_qualify').hide();
	
	
	$('#checkout_holder input').change(function() {
		$('#checkout_holder').data('state','changed');
	});
	
	$("a.cart_edit,a.cart_remove,#basket_upsell a,#basket_upsell input[type='submit']").click(function(e) {
		if($('#checkout_holder').data('state') == 'changed') {
			
			e.preventDefault();
			
			$('#save_dialog').dialog({
				resizable:false,
				height:50,
				width:300,
				modal:true,
				buttons: {
					'Yes':function() {
						$('#payment_capture').append('<input type="hidden" name="allow_continue" value="false" />');
						$('#cart_continue input').trigger('click');
					},
					'No':function() {
						$(this).dialog('close');
						
						if(e.target.tagName == 'A') {
							window.location.href = e.target.href;
						}
						if(e.target.tagName == 'INPUT') {
							$(e.target).parents('form:first').submit();
						}
					},
					'Cancel':function() {
						$(this).dialog('close');
					}
				},
				open:function() {
					$('.ui-widget-overlay').fadeTo(0,.5);
				}
			}).dialog('open')
		}
	})
	
	/* Donation validation */
	$('#one_off_donation form').submit(function(e) {
		amount_input = $('#donation_amount');
		
		if(amount_input.val() < 1) {
			e.preventDefault();			
			amount_input.addClass('error');
			$(this).prev('p.checkout_error').fadeIn();
		}
	});
});