﻿
function addbasket_ajax(pid, qty, pid2) {
		
	if(!pid) return;
	if(!qty) return;
	if(isNaN(pid)) return;
	if(isNaN(qty)) return;
	if(!pid2) pid2 = "";
	
	if($.ajax({
		cache: false,
		type: "GET",
		url: "/shop/ajax/update_basket.asp",
		data: "updcode=A&productid=" + pid + "&productqty=" + qty + "&productid2=" + pid2,
		//dataType: "text",
		success: basketOK,
		error: basketError
		})) {
		
		return false;	//Prevent fallback navigation
	} else {
		return true;	//Allow fallback navigation for limited browsers
	}
}


function basketOK(data, textStatus) {

	var popmsg, confmsg, popmsg_err, confmsg_err
	
	var $data = $(data);
	var mb = $data.filter("#minibasket").html();
	var $popmsg = $data.filter("#popmsg");
	var $confmsg = $data.filter("#confmsg");
	
	if($popmsg) {
		popmsg = $popmsg.html();
		popmsg_err = $popmsg.attr("msgtype");
	}
	if($confmsg) {
		confmsg = $confmsg.html();
		confmsg_err = $confmsg.attr("msgtype");
	}
	
	if(mb) {
		$("#minibasket").html(mb);

		$("#mb-dcID").change(function() {
			$.ajax({
				cache: false,
				type: "POST",
				url: "/pages/shop/ajax/update_basket.asp",
				data: $(this.form).serialize(),
				success: basketOK
			});
		});
		
		$("#mb-dcShow").click(function() {
			$("#minibasket_country").removeClass("minibasket_hidden");
			return false;
		});

	}
	
	if(popmsg) show_popupmsg(popmsg, popmsg_err);
	if(confmsg) show_confmsg(confmsg, confmsg_err);
	
}

function basketError(XMLHttpRequest, textStatus, errorThrown) {

	show_confmsg("Error HTTP " + XMLHttpRequest.status + ". Item not added to basket!", true);

}


function show_popupmsg(msg, err) {

	if(msg) {
		$popmsg = $("#popup-message");
		var $win = $(window);
		
		$popmsg.removeClass();
		if(err) $popmsg.addClass("popup-error");
		
		$popmsg.html(msg);
		$popmsg.css({left: ($win.width()/2) - ($popmsg.width()/2), top: $win.scrollTop() + ($win.height()/2) - ($popmsg.height()/2)});
		$popmsg.show();
		
		if(!err) window.setTimeout(function(){ $("#popup-message").hide() }, 1500);
	}
}

function show_confmsg(msg, err) {

	//Temp call to popupmsg until confmsg graphics are ready
	return show_popupmsg(msg, err);
}
