$(document).ready(function(){

	/* Add To Cart functionality */
    $("#add_to_cart_button").click(function(){
            if( $("#itemid").val()==''){
                alert("No Product ID Set");
                return false;
            }else{
				var product_id = $("#itemid").val();
				var form_html = '<form id="PRODUCT" name="productForm" action="https://www.kintera.org/site/apps/ka/ec/addtobasket.asp?c=hnKMIQNjEiG&amp;b=5408731" method="post">';
				form_html += '<input id="ProductID" type="hidden" value="'+product_id+'" name="ProductID" />';
				form_html += '<input id="StoreID" type="hidden" name="StoreID" />';
				form_html += '<input id="quantityInput" type="hidden" value="1" name="quantityInput" />';
				form_html += '</form>';
				$("body").append(form_html);
                document.productForm.submit();
            }
    });


});

/* New CheckQuantity function, to fix disappearing donation value */
function checkQuantity2(ptrQty,ptrAmt,iqty,maxqty,orgqty) {
	calc_prod_totals();
	if(ptrQty.value != ""){
		if(!numericCheck(ptrQty.value,0,'nomsg')){
			alert("Please enter a valid quantity");
			ptrQty.value = orgqty;
			ptrQty.focus();
			return false;
		}
		else if(ptrQty.value*iqty > maxqty){
			alert("We're sorry, this number exceeds the maximum purchase amount for this product.\nPlease enter a number less than or equal to "+(maxqty/iqty));
			ptrQty.value = orgqty;
			ptrQty.focus();
			return false; 
		}
		else {
			if(typeof(ptrAmt)!="undefined"){
				//ptrAmt.value=0*ptrQty.value;
			}
			return true; 
		}
	}
}

var prods = new Array;
function calc_prod_totals(){
	prods = [];
	$(".prod_name").each(function(){
		var pcount = $(this).parent().prev().children('input').val();
		prods.push($(this).text().toLowerCase().replace(/ /g,'_')+'|'+pcount);
	});
	$.cookie('prod_count', prods.length, { expires: 30,path:'/' });
}

function update_prod_ids(){
	var UPD = false;
	var pids = new Array;
	if($.cookie('prodids')){
		var prodids = $.cookie('prodids').split(',');
		for(i=0;i<prodids.length;i++){
			var pidinfo = prodids[i].split('|');
			var pid = pidinfo[0];
			var pidcount = pidinfo[1];
			if($.cookie('atc_id')==pid){
				UPD = true;
				pidcount = parseInt(pidcount)+1;
			}
			pids.push(pid+'|'+pidcount);
		}
		if(UPD==false){
			pids.push($.cookie('atc_id')+'|1');
		}
	}else{
		var prodids = new Array;
		pids.push($.cookie('atc_id')+'|1');
	}
    $.cookie('atc_id',null, {path:'/'});
	$.cookie('prodids', pids.join(','), { expires: 30,path:'/' });
}


function update_state_province(val){
	var provinces = {"British Columbia (BC)":"British Columbia (BC)","Alberta (AB)":"Alberta (AB)","Manitoba (MB)":"Manitoba (MB)","New Brunswick (NB)":"New Brunswick (NB)","Newfoundland (NF)":"Newfoundland (NF)","Northwest Territories (NT)":"Northwest Territories (NT)","Nova Scotia (NS)":"Nova Scotia (NS)","Nunavut (NU)":"Nunavut (NU)","Ontario (ON)":"Ontario (ON)","Prince Edward Island (PE)":"Prince Edward Island (PE)","Quebec (PQ)":"Quebec (PQ)","Saskatchewan (SK)":"Saskatchewan (SK)","Yukon Territory (YT)":"Yukon Territory (YT)"}
	var states = {"Alabama":"Alabama","Alaska":"Alaska","American Samoa":"American Samoa","Arizona":"Arizona","Arkansas":"Arkansas","California":"California","Colorado":"Colorado","Connecticut":"Connecticut","Delaware":"Delaware","Distric of Columbia":"Distric of Columbia","Florida":"Florida","Georgia":"Georgia","Guam":"Guam","Hawaii":"Hawaii","Idaho":"Idaho","Illinois":"Illinois","Indiana":"Indiana","Iowa":"Iowa","Kansas":"Kansas","Kentucky":"Kentucky","Louisiana":"Louisiana","Maine":"Maine","Maryland":"Maryland","Massachusetts":"Massachusetts","Michigan":"Michigan","Minnesota":"Minnesota","Mississippi":"Mississippi","Missouri":"Missouri","Montana":"Montana","Nebraska":"Nebraska","Nevada":"Nevada","New Hampshire":"New Hampshire","New Jersey":"New Jersey","New mexico":"New mexico","New York":"New York","North Carolina":"North Carolina","North Dakota":"North Dakota","Ohio":"Ohio","Oklahoma":"Oklahoma","Oregon":"Oregon","Pennsylvania":"Pennsylvania","Rhode Island":"Rhode Island","South Carolina":"South Carolina","South Dakota":"South Dakota","Tennessee":"Tennessee","Texas":"Texas","Utah":"Utah","Vermont":"Vermont","Virginia":"Virginia","Washington":"Washington","West Virginia":"West Virginia","Wisconsin":"Wisconsin","Wyoming":"Wyoming"}
	var non = {"Not in Canada/USA":"Not in Canada/USA"}
	$("select[name='Field399575']").removeOption(/./);

	if(val=="CA"){
		$("select[name='Field399575']").addOption(provinces,false);
	}else if(val=="US"){
		$("select[name='Field399575']").addOption(states,false);
	}else{
		$("select[name='Field399575']").addOption(non,true);
	}
}

/* Make sure cart looks good */
var CART_UPDATED = false;
function update_cart__basket(){
  $.cookie('prod_info', null);
  $.cookie('prod_count', null);
  $.cookie('prod_totals', null);

  //update_prod_ids();

  if( $("#TableInner td").eq(0).text()=="Your shopping cart is empty."){
	$(".pagetitle,#leftCol").hide();
	$("#gc_wrapper").after('<br/><br/><div id="steps"><ul><li class="active">View Cart</li><li>Checkout</li><li>Confirmation</li><li>Card Selection</li><li>Thank You</li></ul></div>');
	$("#gc_wrapper_interior table").eq(0).wrap('<div style="background-color: #D7ECF7;padding:10px;"><strong>There are currently no products in your cart.</strong><br/><br/>Please visit the <a href="/site/lookup.asp?c=hnKMIQNjEiG&b=5408741">Gift Gallery</a> to continue shopping.</div>');
	$("#gc_wrapper_interior table").eq(0).hide();
  }else{
	  if(CART_UPDATED==false){
		$("#gc_wrapper_interior table").eq(0).attr("id","OuterTable");
		$("#OuterTable").css('width','100%');


		$("#OuterTable tr:lt(4), .pagetitle, #leftCol").hide();
		$("#Table2").attr('width','100%');
		$("#Table2 tr:lt(2)").hide();
		$("#TableCartInner").attr('cellspacing',0);

		$("#TableCartInner tr").eq(0).addClass('heading').removeClass('CTsubtitle');
		$("#TableCartInner tr").eq(0).after('<tr class="spacing"><td colspan="6"></td></tr>');

		/* Redraw Sphere table into format we want */
		$("#TableCartInner tr").not('.spacing,.CTsubtitle,.heading').each(function(){
			//$(this).children('td').eq(0).hide();

			var confirm_checkbox = $(this).children('td').eq(0).html();
			var product_name = $(this).children('td').eq(1).text()
			var qty_cell = $(this).children('td').eq(3).html();
			var price_cell = $(this).children('td').eq(5).html().replace('CAN','');
			var total_cell = $(this).children('td').eq(6).html().replace('CAN','');
			$(this).children('td').eq(0).html(qty_cell).width('75');
			$(this).children('td').eq(1).html('<span class="prod_name">'+product_name+'</span>').width('600').attr('valign','middle').css( {'text-transform':'uppercase'});
			$(this).children('td').eq(2).html(price_cell).width('100').attr('valign','middle');
			$(this).children('td').eq(3).html(total_cell).attr('valign','middle');
			$(this).children('td').eq(4).html('<img src="/atf/cf/{4E1142E1-31C3-42A8-9ACA-ECAAEB4CBF3E}/remove_button.gif" border="0" class="remove_btn"/>'+confirm_checkbox);
			$(this).children('td').eq(4).find("input[type='checkbox']").hide();
			$(this).children('td:gt(4)').remove();
		});

		var donate_html = $("#Table6").find('input').parent().html().replace('CAN','');
		$("#TableCartInner").append('<tr><td colspan="3" align="right"><span style="color:#0066cc;text-transform:uppercase;font-style:italic;font-weight:bold;">*Special Donation - Consider Sending a Small Gift Today!</span></td><td class="extra_donation_cell">'+donate_html+'</td><td></td></tr>');
		$("#TableCartInner").append('<tr><td colspan="4"></td><td><img src="/atf/cf/{4E1142E1-31C3-42A8-9ACA-ECAAEB4CBF3E}/update_quantities_button.gif" id="uqty"/></td></tr>');

		$("#Table6").remove();
		$(".extra_donation_cell").children('input').attr('size','5');

		$("#TableCartInner tr.heading").children('td').eq(0).text("QTY");
		$("#TableCartInner tr.heading").children('td').eq(1).html("ITEM");
		$("#TableCartInner tr.heading").children('td').eq(2).text("PRICE");
		$("#TableCartInner tr.heading").children('td').eq(3).text("SUBTOTAL");
		$("#TableCartInner tr.heading").children('td').eq(4).text("");
		$("#TableCartInner tr.heading").children('td:gt(4)').remove();

		$("#TableCartInner tr.CTsubtitle").hide();
		
		$("#TableCartInner").append('<tr><td align="right" colspan="5" style="padding:40px 15px 15px 15px;"><img src="/atf/cf/{4E1142E1-31C3-42A8-9ACA-ECAAEB4CBF3E}/cart_banner2.jpg"/></td></tr>');
		$("#TableCartInner").append('<tr><td align="left" colspan="5" style="padding: 5px 0 10px 15px;font-size:10px;">Change the number of gifts in your cart by typing in the amount and selecting Update Quantities.<br/>To return to the Gift Gallery, select Continue Shopping.</td></tr>');

		$("#gc_wrapper").after('<br/><br/><div id="steps"><ul><li class="active">View Cart</li><li>Checkout</li><li>Confirmation</li><li>Card Selection</li><li>Thank You</li></ul></div>');
		$("#steps").after('<div style="float:right;" id="cart_buttons"><a href="/site/lookup.asp?c=hnKMIQNjEiG&b=5408741"><img src="/atf/cf/{4E1142E1-31C3-42A8-9ACA-ECAAEB4CBF3E}/continue_shopping.gif" style="margin-right:30px;" border="0" id="csbutton"/></a><img src="/atf/cf/{4E1142E1-31C3-42A8-9ACA-ECAAEB4CBF3E}/checkout.gif" border="0" id="checkoutbutton"/></div>');

		$("#SearchForm").remove();

		calc_prod_totals();

		$("#checkoutbutton").click(function(){
			calc_prod_totals();
			$.cookie('prod_info', prods.join(','), { expires: 30,path:'/' });
			$("#Submit2").click();
		});

		$("#uqty").click(function(){
			$("input[name='Submit1']").click();
		});
		$(".remove_btn").click(function(){
			var this_qty_input = $(this).parent().parent().find("input").eq(0);
			$(this_qty_input).val("0");
			document.CART.Recalculate.value='Update'
			$("#CART").submit();
		});

		$("#Table4").hide();

		CART_UPDATED = true;
		checkQuantity = checkQuantity2;
	  }

  }
}

function update_cart__checkout(){
    $.cookie('d_info', null);
	$.cookie('ecard',null);
	$.cookie('pcard',null);
	//$("#gc_wrapper").attr("id","gc_wrapper_checkout");
	$(".pagetitle,#leftCol").hide();
	$("#gc_wrapper_interior table").eq(0).width('100%');
	$("#gc_wrapper").after('<br/><br/><div id="steps"><ul><li><a href="/site/lookup.asp?c=hnKMIQNjEiG&b=5410725">View Cart</a></li><li class="active">Checkout</li><li>Confirmation</li><li>Card Selection</li><li>Thank You</li></ul></div>');

	$("#TableCartOuter").width('100%'); /*.wrap('<div id="gc_wrapper"></div>');*/
	$("#TableCartOuter tr").eq(0).remove();
	$("#TableCartInner").attr({'cellspacing':'0','cellpadding':'5'});
	$("#TableCartInner tr").eq(0).remove();
	$("#TableCartInner tr").eq(0).before('<tr class="heading"><td style="padding-left:10px;">QTY</td><td>ITEM</td><td>PRICE</td><td>SUBTOTAL</td></tr>');
	//alert( $("#TableCartInner tr.CTodd, #TableCartInner tr.CTeven").size() );
	$("#TableCartInner tr.CTodd, #TableCartInner tr.CTeven").each(function(){
		var pname = $("td",this).eq(0).text();
		var pdesc = $("td",this).eq(1).text();
		var pqty = $("td",this).eq(2).text();
		var pprice = $("td",this).eq(3).text().replace('CAN','');
		var psub = $("td",this).eq(4).text().replace('CAN','');
		$("#TableCartInner tr").eq(1).before('<tr><td style="padding-left:10px;">'+pqty+'</td><td>'+pname+'</td><td>'+pprice+'</td><td>'+psub+'</td></tr>');
		$(this).remove();
	});

	var c = 0;
	$("#TableCartInner tr.CTsubtitle td.CTtablein").each(function(){
		if( $(this).attr("colspan")=="4"){
			$(this).next().prepend( $(this).html() );
			$(this).remove();
		}
		if( $(this).attr("colspan")=="1" ){
			$(this).attr({'align':'right','colspan':'4'});
		}
	});

	$("select[name='country']").change(function(){
		update_state_province($(this).val());
	});

	$("input[name='Field4960330']").parent().parent().parent().before('<tr><td colspan="2"><br/>With every gift you order from the Wish List, you can send a special card to give to the recipient, so they know a gift has been made on their behalf. You can choose to receive a printed card in the mail that you can give directly, or send an eCard.</td></tr>');
	/* Remove "add more items" row */
	$("form[name='SUPPORTER']").parent().parent().prev().remove();
	/* Remove "compelte the following below...." row */
	$("form[name='SUPPORTER']").parent().parent().prev().remove();

	/* Change Billing Address heading */
	$("#TableDescription").width('100%');
	$("form[name='SUPPORTER']").wrap('<div style="background-color: #D7ECF7;padding:10px;"></div>');
	$("#TableInner tr.CTsubtitle td").html("<h3>Billing Information</h3>");

	$("#gc_wrapper").css('padding-top','0');
	//$("#gc_wrapper").attr("id","gc_wrapper_checkout");
	
	$("input[name='Field4960330']").eq(0).val('eCards');
	$("input[name='Field4960330']").eq(1).val('Printed Cards');
	$("#SubmitButton").click(function(){
		$.cookie('card_type', $("input[name='Field4960330']:checked").val(),{ expires: 30,path:'/' });
		$.cookie('d_info', $("input[name='first_name']").val()+'|'+$("input[name='last_name']").val()+'|'+$("input[name='email_address']").val()+'|'+$("select[name='Field399575']").val(), { expires: 30,path:'/' });
	});


}


function update_cart__ccinfo(){
	$(".pagetitle,#leftCol").hide();
	$("#gc_wrapper_interior table").eq(0).width('100%');
	$("#gc_wrapper").css('padding-top','0');
	$("#gc_wrapper").after('<br/><br/><div id="steps"><ul><li><a href="/site/lookup.asp?c=hnKMIQNjEiG&b=5410725">View Cart</a></li><li class="active">Checkout</li><li>Confirmation</li><li>Card Selection</li><li>Thank You</li></ul></div>');
	if($.cookie('card_type')!="eCards"){
		$("#steps li:gt(2)").remove();
	}
	$("#Table1").attr({'cellspacing':'0','cellpadding':'0'});
	$("#TableCartOuter").parent().parent().next().attr("id","CCTable");
	$("#TableCartOuter tr").eq(0).remove();
	$("#TableCartInner").attr({'cellspacing':'0','cellpadding':'5'});
	$("#TableCartInner tr").eq(0).remove();
	$("#TableCartInner tr").eq(0).before('<tr class="heading"><td>QTY</td><td>ITEM</td><td>PRICE</td><td>SUBTOTAL</td></tr>');
	$("#TableCartInner tr.CTodd, #TableCartInner tr.CTeven").each(function(){
		var pname = $("td",this).eq(0).text();
		var pdesc = $("td",this).eq(1).text();
		var pqty = $("td",this).eq(2).text();
		var pprice = $("td",this).eq(3).text().replace('CAN','');
		var psub = $("td",this).eq(4).text().replace('CAN','');
		$("#TableCartInner tr").eq(1).before('<tr><td>'+pqty+'</td><td>'+pname+'</td><td>'+pprice+'</td><td>'+psub+'</td></tr>');
		$(this).remove();
	});
	$("#TableCartInner tr.CTsubtitle td.CTtablein").each(function(){
		if( $(this).attr("colspan")==4){
			$(this).attr("colspan","3");
		}
	});

	$("#CCTable td.CTsubtitle").html("<h3>Billing Information</h3>");
	$("#CCTable tr.CTodd").hide();
	$("#TableInner tr.CTsubtitle td").html("<h3>Billing Information</h3>");
	$("#TableCartInner").after('<div style="height:5px;background-color:#007AC3;width:100%;"></div>');
	$("form[name='creditInfoForm']").parent().attr('align','');
	$("#CCTable, form[name='creditInfoForm']").width('100%').wrap('<div style="background-color: #D7ECF7;"></div>');
//	$("#gc_wrapper").attr("id","gc_wrapper_checkout");
	$("#TableCartOuter").width('100%');
}

function update_cart__confirm(){
	$(".pagetitle,#leftCol").hide();
	$("#gc_wrapper").prepend('<h1 class="pagetitle">THANK YOU</h1><p>Thank you for your gift from <em>Wish List: Hope Renewed</em>. Your generosity brings us all a step closer to a world without cancer.</p>');
	$("#gc_wrapper").after('<br/><br/><div id="steps"><ul><li><a href="/site/lookup.asp?c=hnKMIQNjEiG&b=5410725">View Cart</a></li><li><a href="/site/lookup.asp?c=hnKMIQNjEiG&b=5410727">Checkout</a></li><li class="active">Confirmation</li><li>Card Selection</li><li>Thank You</li></ul></div>');
	$("#gc_wrapper_interior table").eq(0).wrap('<div style="background-color: #D7ECF7;padding-bottom:10px;" id="gcwit"></div>');
	if($.cookie('card_type')!="eCards"){
		$("#steps li:gt(2)").remove();
	}
	$("").prepend('<div style="color: #fff" id="order_info"></div>');
	$("#order_info").prepend('<h3>Confirmation</h3><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin convallis tempor dui, a luctus dolor tristique vitae. Sed nisi purus, ornare posuere placerat condimentum, vehicula ac lorem.</p>');

	$("font:contains('This is a system-generated email - please contact the non-profit organization directly.')").remove();
	$("#TableOrder").next().next().attr("id","summary_table").find('table').eq(0).find('td').eq(0).css({'line-height':'16px','padding-left':'5px'});
	$("#summary_table").next().hide();
	$("#summary_table").parent().parent().next().hide();
	$("#summary_table").parent().parent().next().next().find('td').css('padding-left','5px');

	if($.cookie('card_type')=="Printed Cards"){
		$("#gcwit").append('<div style="padding-left:8px;margin-bottom:10px;">You will receive your paper card(s) in the mail.</div>');
	}
	if($.cookie('card_type')=="eCards"){
		$("#gcwit").append('<input style="margin-left:8px;" type="button" value="Create your eCard(s)" onclick="window.location=\'http://www.kintera.org/site/lookup.asp?c=hnKMIQNjEiG&b=5492993\';"/>');
	}
}

function update_cart__category(){
	$(".pagetitle,#leftCol").hide();
	$("#gc_wrapper").after('<br/><br/><div id="steps"><ul><li class="active">View Cart</li><li>Checkout</li><li>Verification</li><li>Card Selection</li><li>Thank You</li></ul></div>');
	$("#gc_wrapper_interior table").eq(0).wrap('<div style="background-color: #D7ECF7;padding:10px;"><strong>There are currently no products in your cart.</strong><br/><br/>Please visit the <a href="/site/lookup.asp?c=hnKMIQNjEiG&b=5408741">Gift Gallery</a> to continue shopping.</div>');
	$("#gc_wrapper_interior table").eq(0).hide();
}

var currentUrl = window.location.href;
if (currentUrl.indexOf('basket.asp?', currentUrl)>0){
	update_cart__basket();
}else if(currentUrl.indexOf('supporter.asp?',currentUrl)>0){
	update_cart__checkout();
}else if(currentUrl.indexOf('AdditionalInfoEC.asp?',currentUrl)>0){
	$("#Form1").attr("action","AdditionalInfoAdd.asp?c=hnKMIQNjEiG&b=5408731").submit();
}else if(currentUrl.indexOf('CreditCardInfoEC.asp?',currentUrl)>0){
	update_cart__ccinfo();
}else if(currentUrl.indexOf('orderok.asp?',currentUrl)>0){
	update_cart__confirm();
}else if(currentUrl.indexOf('category.asp?',currentUrl)>0){
	update_cart__category();
}
