$(document).ready(function() {
	$('#overlay_buynow').click(function(e) {
		$('#overlay_buynow').css('display', 'none');

		e.preventDefault();

		var opts = '';
		var optSels = $('select[name^="product_option"]');
		if (optSels) {
			$.each(optSels, function(idx, el) {
				opts += '&' + $(el).attr('name') + '='+$('#' + $(el).attr('id') + ' :selected').val();
			});
		}

		var pid = parseInt($('input[name="productid"]').val());
		var qty = parseInt($('#product_avail_input').val());
		var addUrl = 'cart.php?mode=add&productid='+pid+opts+"&amount="+qty;

		window.location.href=addUrl;
	});



	$(".prod_buy_control").click(function(e) {
		var sku = $(this).attr('rel');
		if (sku == undefined) {
			sku = e.target.id.split('_')[1];
		}


		var pid = parseInt($(this).attr('pid'));
		if (isNaN(pid)) {
			pid = e.target.pid;
		}


		var opts = '';
		var optSels = $('select[name^="product_option"]');
		if (optSels) {
			$.each(optSels, function(idx, el) {
				opts += '&' + $(el).attr('name') + '='+$('#' + $(el).attr('id') + ' :selected').val();
			});
		}

		/*
		var qty = parseInt($('input[name="productid"]').val());
		if (isNaN($('#product_avail_input').val())) {
			var qty = 1;
		} else {
			var qty = parseInt($('#product_avail_input').val());
		}
		*/
		
		var addUrl = '/cart.php?mode=add&productid='+pid+opts+"&amount=";
		$('#overlay_buynow').attr('href', addUrl);
		
		$('#overlay_buynow').click(function(e) {
			e.preventDefault();

			var addUrl = '/cart.php?mode=add&productid='+pid+opts+"&amount=";
			$(this).attr('href', addUrl);
			var qty = parseInt($('#overlay_quantity').val());
			
			if (isNaN(qty)) {
				xAlert('<h3>Quantity must be a number</h3>', 'Invalid Quantity');
			} else if (qty < 1) {
				xAlert('<h3>Quantity must be 1 or more</h3>', 'Invalid Quantity');
			} else {
				$(this).attr('href', $(this).attr('href')+qty);
				window.location.href=$(this).attr('href');
			}
		});

		/*
		var qty = 1;
		var addUrl = '/cart.php?mode=add&productid='+pid+'&amount='+qty;
		//alert(addUrl);
		$('#overlay_buynow').attr('href', addUrl);
		*/
		
		//$("#buy_now_dialog").css('display', 'block').css('width', '740px !important');
		e.preventDefault();
		var dlg = $('#basic-modal-content').modal({overlayClose: true});
		dlg.update(380, 740);
		//$('#buy_now_dialog').css('width', '740px !important');

		//This is show loader image but not sure we want it though
		//$("#online_dealer_list").parent().css('display', 'block');
		//$("#online_dealer_list").html(ajax_load);
		//console.log('sku: ', sku);
		//console.log('addUrl: ', addUrl);
		
		$.getJSON("product_avail.php", { sku: sku }, function(json) {
			if (!isNaN(json.qty) && parseInt(json.qty) > 0) {
				$('#overlay_buynow').css('display', 'block');
				$('#overlay_buynow').css('display', 'block');
			} else {
				$('#buy_now_message_box').append('<p>Currently Out of Stock</p>');
			}
		});






		
		
		
		
		
		var sku = $(this).attr('rel');
			
		var opts = '';
		var optSels = $('select[name^="product_option"]');
		if (optSels) {
			$.each(optSels, function(idx, el) {
				opts += '&' + $(el).attr('name') + '='+$('#' + $(el).attr('id') + ' :selected').val();
			});
		}

		if (sku == undefined) {
			sku = e.target.id.split('_')[1];
		}




		var pid = parseInt($(this).attr('pid'));
		if (isNaN(pid)) {
			pid = e.target.pid;
		}


		var opts = '';
		var optSels = $('select[name^="product_option"]');
		if (optSels) {
			$.each(optSels, function(idx, el) {
				opts += '&' + $(el).attr('name') + '='+$('#' + $(el).attr('id') + ' :selected').val();
			});
		}

		var qty = parseInt($('input[name="productid"]').val());
		if (isNaN($('#product_avail_input').val())) {
			var qty = 1;
		} else {
			var qty = parseInt($('#product_avail_input').val());
		}
		
		
		var addUrl = 'cart.php?mode=add&productid='+pid+opts+"&amount="+qty;
		$('#overlay_buynow').attr('href', addUrl);


		/*
		var qty = 1;
		var addUrl = '/cart.php?mode=add&productid='+pid+'&amount='+qty;
		//alert(addUrl);
		$('#overlay_buynow').attr('href', addUrl);
		*/
			
			
			

		$("#buy_now_dialog").css('display', 'block');
		e.preventDefault();
		var dlg = $('#basic-modal-content').modal({overlayClose: true});

		//This is show loader image but not sure we want it though
		//$("#online_dealer_list").parent().css('display', 'block');
		//$("#online_dealer_list").html(ajax_load);

		$.getJSON("dealer_locator.php?", { mode: 'locate_by_sku', sku: sku }, function(json) {
			$("#online_dealer_list").empty();

			if (json.length) {
				var link = $("");
				var odl = $("#online_dealer_list");
				odl.parent().css('display', 'block');

				for (var idx=0; idx<json.length; idx++) {
					//odl.html(odl.html() + "<a style='color: #000000;' target='_blank' href='" + json[idx].buy_url + "'><img src='/skin/summit/images/dealers/" + json[idx].dealer_name.toLowerCase() + ".jpg' /></a><br /><br />");
					//odl.html(odl.html() + "<a style='color: #000000;' target='_blank' href='" + json[idx].buy_url + "'>" + json[idx].dealer_name + "</a><br /><br />");
					//odl.html(odl.html() + "<a style='color: #000000;' href='" + json[idx].buy_url + "'>" + json[idx].dealer_name + "</a><br /><br />");
					link = $("<a />");
					link.attr('href', json[idx].buy_url);
					link.attr('target', '_blank');
					link.attr('title', json[idx].dealer_name);
					if(json[idx].dealer_logo) {
						link.append('<img src="/skin/summit/images/dealers/online/' + json[idx].dealer_logo + '">');
					}
					else {
						link.text(json[idx].dealer_name);
					}
					link.click(function(e) {
						var prod_name = $("#pdp_title h1").text().replace(/ /g, "-");
						if(!prod_name) {
							prod_name = $("#pdp_header h1").text().replace(/ /g, "-");
						}
						//var dealer_name = $(this).text().replace(/ /g, "-");
						var dealer_name = $(this).attr('title');
						if(!dealer_name) {
							dealer_name = "Local_Dealer";
						}
						_gaq.push(['_trackEvent', 'Products', 'Online Dealer', dealer_name]);
						_gaq.push(['_trackPageview', '/outbound/Retailer/' + prod_name + '-' + dealer_name]);
					});

					link.appendTo(odl);
					$("<br />").appendTo(odl);
					$("<br />").appendTo(odl);
				}

			} else {
				var odl = $("#online_dealer_list");

				odl.html('No online dealers <br />presently carry this product.<br /><br />Visit our dealer locator to find<br /> a Sage dealer near you.<br /><br /><h4><a href="/dealer_locator.php" style="color: #000000;">Locate a Dealer</a><h4>');



				/*
				odl.parent().css('display', 'none');
				$('#simplemodal-container').css('width', '520px');
				*/
				//$('#buy_now_dialog').css('width', '350px');
				//dlg.update(400, 370);
			}
		});

		return false;
	});



	/* Compare Add/Delete */
	// http://rioproducts.dev.summitprojects.com/comparison.php?mode=get_products&productids[1861]=Y&productids[1864]=Y
	// var productids = [];
	function initCompareProducts(ids) {
		if (!$.isArray(ids)) {
			productids = ids.split(',');
		} else {
			productids = ids;
		}
	}


	function removeValueFromArray(a, v) {
		var ret = [];
		for(var cv=0; cv<a.length; cv++) {
			if (a[cv] != v) {
				ret.push(a[cv]);
			}
		}

		return ret;
	}


	$(".comparebutton").click(function(e) {
		e.preventDefault();

		if ($(this).hasClass('addcompare')) {
			var cmd = 'add';
		} else {
			var cmd = 'delete';
		}

		var el = $(this);
		var cId = $(this).attr('rel');

		$.ajax({
			url: "/comparison_list.php?mode="+cmd+"&productid="+$(this).attr('rel'),
			success: function() {
				if (cmd == "add") {
					el.removeClass('addcompare');
					el.addClass('delcompare');
					var inc = 1;
					productids.push(cId);

				} else {
					el.removeClass('delcompare');
					el.addClass('addcompare');
					var inc = -1;
					productids = removeValueFromArray(productids, cId);
				}

				var replacement = el.text() == "Compare +" ? "Compare -" : "Compare +";
				el.fadeOut(function(){ el.text(replacement).fadeIn() });

				var cc = $('#comparecounter');
				var cn = parseInt(cc.text()) + inc;
				cc.fadeOut(function(){ cc.text(cn).fadeIn() });

				var cl = $('#comparelink');
				if (cn <= 0) {
					cl.removeAttr('href');
					cl.css('cursor', 'default');

					var clh = $('#compareText');
					clh.addClass('comparelink_off');
					clh.removeClass('comparelink_on');
				} else {
					var pStr = "";
					for (var cp=0; cp<productids.length; cp++) {
						pStr += 'productids['+productids[cp]+']=Y&';
					}
					pStr += 'mode=get_products';

					cl.attr('href', 'comparison.php?'+pStr);
					cl.css('cursor', 'pointer');

					var clh = $('#compareText');
					clh.addClass('comparelink_on');
					clh.removeClass('comparelink_off');
				}
			}
		});
	});


});

