// Bookmark
function bookmark(anchor)
{
    if(window.external)
    {
        window.external.AddFavorite(anchor.getAttribute('href'), anchor.getAttribute('title'));
        return false;
    }
    return true;
}

function SetUniqueRadioButton(nameregex, current)
{
    re = new RegExp(nameregex);
    for(i = 0; i < document.forms[0].elements.length; i++)
    {
        elm = document.forms[0].elements[i]
        if (elm.type == 'radio')
        {
            if (re.test(elm.name))
            {
             elm.checked = false;
            }
        }
    }
    current.checked = true;
}

function DeleteBasketItem(item) {
	//Get the stock information for our URL
	var productDetailValSplitter 	= $(item).attr("rel");
	var productDetailVal 			= productDetailValSplitter.split("_");
	var selectedID					= $(item).attr("id");
	
	
	var detURL						= productDetailVal[1];
	var detSOItemID 				= productDetailVal[2];
	var detStockCode 				= productDetailVal[3];

	$("#notificationsLoader").html('<img src="' + detURL + 'Images/loader.gif">');

	$.ajax({  
		type: "GET",  
		url: detURL + "Default.aspx", 
		data: {Action: "DeleteCartItem", Ref: detSOItemID},  
		success: function(theResponse) {
			var newSOItemIDArray = theResponse.split("_");
			var newTotal = newSOItemIDArray[1];
			
			$("#" + selectedID).parent().hide("slow",  function() {$(item).parent().remove();});
			$("#notificationsLoader").empty();
			$("#basket_total_container").html(newTotal);
		
		}  
	});
	
}

function AddBasketItem() {
	//Check if the basket has been set, we can presume if this isn't then the user isn't logged in.
	var cartBasket 					= $(".mini_basket_heading");
	if (cartBasket.length > 0) {
	
		//Get the stock information for our URL from the div set in SI_Item
		var productDetailValSplitter 	= $("#divJSStockDetails").text();
		var productDetailVal 			= productDetailValSplitter.split("_");
		
		var detURL						= productDetailVal[1];
		var detStockCode       			= productDetailVal[2];
		var detParentCode       		= productDetailVal[3];
		var detQty       				= productDetailVal[4];
		var detPrice       				= productDetailVal[5];
		var detSOType       			= productDetailVal[6];
		var detTaxRate                  = productDetailVal[7];
		var detRefArray                 = productDetailVal[8]
		var detStockDesc       			= productDetailVal[9];
		//Show the loading symbol
		$("#notificationsLoader").html('<img src="' + detURL + 'Images/loader.gif">');
		
		//Make the calculations to get the current image and the location of the equivelent in the basket if there is one.
		var productX 		= $(".stock_image").offset().left;
		var productY 		= $(".stock_image").offset().top;
		
		var basketX 		= $("#basket_items_container").offset().left;
		var basketY 		= $("#basket_items_container").offset().top;
		
		if( $("#ListBasketItem_" + detStockCode).length > 0){
			var basketX 		= $("#ListBasketItem_" + detStockCode).offset().left;
			var basketY 		= $("#ListBasketItem_" + detStockCode).offset().top;			
		} else {
			var basketX 		= $("#basket_items_container").offset().left;
			var basketY 		= $("#basket_items_container").offset().top;
		}

		var gotoX 			= basketX - productX;
		var gotoY 			= basketY - productY;
		
		var newImageWidth 	= $(".stock_image").width() / 50;
		var newImageHeight	= $(".stock_image").height() / 50;
		
		//Make an AJAX call to send the item to the basket and then add the new line to the basket dynamically.
		$(".stock_image img:last")
		.clone()
		.prependTo(".stock_image:last")
		.css({'position' : 'absolute'})
		.animate({opacity: 0.4}, 100 )
		.animate({opacity: 0.0, marginLeft: gotoX, marginTop: gotoY, width: newImageWidth, height: newImageHeight}, 1200, function() {

			$.ajax({  
				type: "GET",  
				url: detURL + "Default.aspx",
				data: {Action: "AddItemAJAX", StockCode: detStockCode, ParentCode: detParentCode, Qty: detQty, Price: detPrice, SOType: detSOType, TaxRate: detTaxRate, RefArray: detRefArray, StockDesc: detStockDesc},
				success: function(theResponse) {								
					var newSOItemIDArray = theResponse.split("_");
					var newItemTotal = newSOItemIDArray[1];
					var newSOItemID = newSOItemIDArray[2];
					var newQty = newSOItemIDArray[3];
					var newTotal = newSOItemIDArray[4];
					var liLink = 
						'<li id="ListBasketItem_' + detStockCode + '">' +
							'<a id="lnkDeleteItemBasket_' + detStockCode + '" onClick="DeleteBasketItem(this)" title="DeleteBasketItem_' + newSOItemID + '" rel="_' + detURL + '_' + newSOItemID + '_' + detStockCode + '">' +
								'<img src="' + detURL + '/Images/delete.png" style="border-width: 0px;" />' +
							'</a> ' + 
							detStockDesc.substr(0, 12) + ' ... (' + newQty + ' items) - ' + newItemTotal + //Don't make this a link as they will be on this page anyway and we don't have ParseURL available to make it safe.
						'</li>';
					
					var count = 1;
					
					//If the item exists, append, if not, add a new one.
					if ($("#ListBasketItem_" + detStockCode).length > 0){
						$("#ListBasketItem_" + detStockCode).animate({ opacity: 0 }, 500);
						$("#ListBasketItem_" + detStockCode).before(liLink).remove();
						$("#ListBasketItem_" + detStockCode).animate({ opacity: 0 }, 500);
						$("#ListBasketItem_" + detStockCode).animate({ opacity: 1 }, 500);
						$("#notificationsLoader").empty();	
					} else {						
						$('#basket_items_ul').append(liLink); 
						$("#basket_items_container li:last").hide();			
						$("#basket_items_container li:last").show("slow");
						$("#notificationsLoader").empty();
					}
					$("#basket_total_container").html(newTotal);
				}	
			});	
		});
	}
};

//Slide to Basket
$(document).ready(function(){ 
	
	//The code to add an item has been ommited from this file as it is added via code after the user has selected an Order or Quotation.
	
	$("#basket_items_container li a").click(function() { 
		DeleteBasketItem(this);			
	});

});



