$(document).ready(function(){
	
	$.getJSON("/ajax/preloadImages.php",function(data) {
		$.each(data,function(key,value) {
			var i = new Image();
			i.src = '/images/buttons/' + value;
		});
	});
	
	var DocumentHeight = $(document).height();
	
	$("<div id='modalLayer'></div>").css({"height":DocumentHeight+"px","opacity":0.7}).insertAfter("#outerwrapper").hide();
	
	var contentNarrowDivHeight = $("#content_narrow").outerHeight();
	var subcontentHeight = $("#subcontent_narrow").height();
	if (contentNarrowDivHeight != null) {
		if (subcontentHeight < contentNarrowDivHeight) {
			$("#subcontent_narrow").css({height:contentNarrowDivHeight})
		}
		else {
			$("#content_narrow").css({height:subcontentHeight})
		}
		
	}
	
});

/* store categories on products page */
$(function() {
    $("dl.storeCatListing dt").hover(function() {
         swapImage($(this));
    },function() {
         swapImage($(this));
    });
});

function swapImage(obj)
{
  var originalImage = obj.find("a img").attr("src");    
  obj.find("a img").attr("src", obj.next().find("img").attr("src"));
  obj.next().find("img").attr("src", originalImage );            
}
/*********************************/

$(function() {
	var url = window.location.href;
	var hashes = url.split('/');
	hashes = hashes.reverse();
	var reversePath = hashes[0].split(".html");
	reversePath = reversePath[0];
	var classNameNav = "";
	switch (reversePath) {
		case 'contract_management':
		classNameNav = 'contract';
		$("#servicesNav li a."+classNameNav).css({background:"url(../images/buttons/contract_mgmt_hover.jpg)"});
		break;
		case 'purchasing_solutions':
		classNameNav = 'purchasing';
		$("#servicesNav li a."+classNameNav).css({background:"url(../images/buttons/purchasing_solutions_hover.jpg)"});
		break;
		case 'marketing_promotions':
		classNameNav = 'marketing';
		$("#servicesNav li a."+classNameNav).css({background:"url(../images/buttons/marketing_hover.jpg)"});
		break;
		case 'training_compliance':
		classNameNav = 'training';
		$("#servicesNav li a."+classNameNav).css({background:"url(../images/buttons/training_hover.jpg)"});
		break;
		
		case 'hotels':
		classNameNav = 'hotels';
		$("#servicesNav li a."+classNameNav).css({background:"url(../images/buttons/hotels_hover.jpg)"});
		break;
		case 'pubs_bars':
		classNameNav = 'pubs_bars';
		$("#servicesNav li a."+classNameNav).css({background:"url(../images/buttons/pubs_bars_hover.jpg)"});
		break;
		case 'restaurants':
		classNameNav = 'restaurants';
		$("#servicesNav li a."+classNameNav).css({background:"url(../images/buttons/restaurants_hover.jpg)"});
		break;
		case 'clubs':
		classNameNav = 'clubs';
		$("#servicesNav li a."+classNameNav).css({background:"url(../images/buttons/clubs_hover.jpg)"});
		break;
	}
	
});


$(function() {
$('#imageGallery').cycle({
    fx:    'fade', 
    speed:3000,
    timeout: 3000
 });
});

$(function() {
$("#regLeft a").click(function() {
	var target = $(this).attr("href");
	var x = $(this).attr("class");
	var y = $(this).attr("id");
	$("#mapArea").load("/ajax/mapDetails.php",{target:target,x:x,y:y});
	return false;
});
});

$(function() {
	 $("#JMyCarousel").jMyCarousel({  
		  visible: '1002px',
		  auto:true,
		  speed:2500,
		  eltByElt: true
	 }); 
});

$(function(){
$("a#newsletterSignUp").myModal({
		popupHeight:300,
   		initialMessage:'Sign Up To Our Newsletter!',
    	closeLink: 'Close',
    	closeMessage: 'Goodbye!!',
    	sentMessage:'Thanks For Signing Up',
    	opacity: 0.7,
    	ajaxFormUrl:'/ajax/form_newsletter.php',
    	ajaxValidationUrl:'/ajax/form_validation.php'
});

$("a#leaveFeedback").myModal({
		popupHeight:400,
   		initialMessage:'RING BACK SERVICE',
    	closeLink: 'Close',
    	closeMessage: 'Goodbye!',
    	sentMessage:'Thanks For Getting In Touch',
    	opacity: 0.7,
    	ajaxFormUrl:'/ajax/form_feedback.php',
    	ajaxValidationUrl:'/ajax/form_validation.php'
});
});

$(function(){
	$("form#addToCart").ajaxForm({
		
  
        dataType: 'json',
    	url: '/ajax/add_to_cart.php',
        success:addToCart  
        
	});
});
 
function addToCart(data)
{
	if (data.type == "cart")
	{
		$("#cartContainer").load("/ajax/cart_data.php",function(){
			showMessage('<p>Your product has been added to your cart</p>',1);
		});
	}
	else if (data.type == "favourites")
	{
		$("#favsContainer").load("/ajax/favs_data.php",function(){
			showMessage('<p>Your product has been added to your favourites list</p>',1);
		});
	}
	else {
		var message = '<p class="emphasis">There are errors with the submission of your request</p>';
		for (var key in data) 
		{
			if (key == 'repeat')
			{
				message = "<p>"+data[key]+"</p>";
			}
			else
			{
				message = message + "<p>"+data[key]+"</p>";
			}
		}
		showMessage(message,0);
	}
}


function showMessage(message,success)
{
	if (success == 0)
	{
		timedelay = 3000;
	}
	else
	{
		timedelay = 1500;
	}
	
	var Message = $("<div class='message'>"+message+"</div>");
	Message.insertAfter("#wrapper").hide();
	
	$("#modalLayer").bgiframe().show();
	Message.center().
	hide().
	fadeIn("slow").
	animate({opacity: 0.0}, timedelay,function(){
		($(this).remove());
		($("#modalLayer").fadeOut("slow"));
	});
	
}

$(document).ready(function(){
	  $("#content-slider").slider({
	   
	  	animate: true,
	    change: handleSliderChange,
	    slide: handleSliderSlide
	  });
	});

	function handleSliderChange(e, ui)
	{
	  var maxScroll = $("#content-scroll").prop("scrollWidth") - $("#content-scroll").width();
	  $("#content-scroll").animate({scrollLeft: ui.value * (maxScroll / 100) }, 1000);
	}

	function handleSliderSlide(e, ui)
	{
	  var maxScroll = $("#content-scroll").prop("scrollWidth") - $("#content-scroll").width();
	  $("#content-scroll").prop({scrollLeft: ui.value * (maxScroll / 100) });
	}

$(document).ready(function(){
	$("input.btn").hover(function(){
		$(this).addClass("hover");
	},
	function() {
		$(this).removeClass("hover");	
	});
});

$(document).ready(function(){
	$("input.btn").focus(function(){
		$(this).addClass("hover");
	});
});




$(document).ready(function() { 
    $('ul.sf-menu').superfish({ 
    
    delay:       500,                            // one second delay on mouseout 
    animation:   {opacity:'show',height:'show'},  // fade-in and slide-down animation 
    speed:       'fast',                          // faster animation speed 
    autoArrows:  false,                      // disable generation of arrow mark-up 
    dropShadows: false   // disable drop shadows 
}); 
}); 

$(document).ready(function(){
	$("form:not(.search) input:not(:submit),textarea ").focus(function(){
		$(this).addClass("inputFocus");
	}).
	blur(function(){
		$(this).removeClass("inputFocus");
	}).
	keyup(function(){
		$(this).removeClass("inputFocus");
	});
});

$(document).ready(function(){
	var Errors = $(".errors");
	Errors.hide();
	Errors.slideDown("slow");
});

$(document).ready(function() 
{$(".trigger").tooltip({ 
    position:'center right',
    offset: [0,100], 
    effect: 'fade',
    opacity: 0.9, 
    tip: '.tooltip' 
});
});

/*----------------------------------------------------------
for product listings 
------------------------------------------------------------*/

var fnGetPrice = function(o_select){ 
        $(o_select).parents('div').find('select').each(function()
        {
            if (this.value.length == 0){return false;}
        });
        	
        var v_url = '/ajax/getOptionPrices.php'; 
        var rowID = $(o_select).parents('tr').attr('id');
        rowID = rowID.replace(/item_/,"");
    	var v_qrystr = 'type=listing&'+'p_id=' + rowID +'&';
    	    
        $(o_select).parents('tr').find('select.do').each(function()
        {
			v_qrystr = v_qrystr  + $(this).attr('name') + '=' + $(this).val() + '&';
		});

		$.ajax({
  			type: "GET", 
  	 		url: v_url,
  			data: v_qrystr,
 	  		success: function(msg)
 	  		{
    			$("td.price_"+rowID).html(msg);
   
 	  		}
		});		
}
$(document).ready(function(){
	 $('tr.productListing').each(function(v_index){                           
		$(this).find('select.do').change(function(){
			fnGetPrice(this);
		});    
	 });
});
/*----------------------------------------------------------
for product detail page
------------------------------------------------------------*/
var fdGetPrice = function(o_select){ 
	$(o_select).parents('div').find('select').each(function()
     {
        if (this.value.length == 0){return false;}
     });
     var v_url = '/ajax/getOptionPrices.php';   
   	var rowID = $(o_select).parents('.productWrapper').attr('id');   
     rowID = rowID.replace(/item_/,"");
    var v_qrystr = 'type=detail&'+'p_id=' + rowID +'&';
     $(o_select).parents('.productWrapper').find('select.do').each(function()
    
        {
			v_qrystr = v_qrystr  + $(this).attr('name') + '=' + $(this).val() + '&';
		});
		
	
     $.ajax({
  			type: "GET", 
  	 		url: v_url,
  			data: v_qrystr,
 	  		success: function(msg)
 	  		{
    			$("div.price_"+rowID).html(msg);
 	  		}
	});		
}

$(document).ready(function(){
	 $('.productWrapper').each(function(v_index){                           
		$(this).find('select.do').change(function(){
			fdGetPrice(this);
		});    
	 });
});


/*----------------------------------------------------------*/

$(document).ready(function(){
	$("fieldset").each(function(){
		var heading = $("legend",this).remove().text();
		$("<h3></h3>").text(heading).prependTo(this);
	});
});

/*----------------------------------------------------------*/


$(document).ready(function() {
   	$('#sameAsBilling').click(function() {
    if ($("#sameAsBilling").is(":checked")) 
    {
   		$(".billingtext").text("Deselect");
    	$('#shipping_fields input').each(function(i) { 
   		$(this).val( $('#billing_fields input').eq(i).val() );
    	});
 		var bcounty = $("select#billing_county").val();
    	$("select#shipping_county").val(bcounty);                    
    } 
    else 
    {
  	 
  	 	$(".billingtext").text("Same as billing");
    	$('#shipping_fields input').each(function(i) { 
     	$(this).val(""); 
    	});
    	$("select#shipping_county").val("");
    }
    });
});


$(document).ready(function() {
	$("select.deliveryCost").change(function() {
		if ((this).value == '')
		{
			$('.revisedTotals').load('/ajax/getDeliveryCost.php',{'value':(this).value},function() {
				$("td.delCost").text("");
			});
		}
		else
		{
			$('.revisedTotals').load('/ajax/getDeliveryCost.php',{'value':(this).value});
		}
	});
});

$(document).ready(function() {
	$("table.orderItems, table.addressBook, table.cart").each(function() {
		$("tr:last",this).css({"border":"none"});
	});
});

/*
$(document).ready(function(){
	var required = $("<p class='req'><span class=\"req\">*</span> required</p>");
	required.insertAfter($("form :submit"));
	$("form.createOrder p.req, , form.addressBook p.req, form.search p.req, form.cart p.req, form.detailPage p.req, form.itemListing p.req").remove();
});
*/

$(document).ready(function(){
	$("#billing_fields label").each(function(){
		var Original = $(this).text();
		var New = Original.replace(/Billing/,"");
		var Match = /[*]/.test(New);
		if (Match)
		{
			New = New.replace(/[*]/,"");
			$(this).text(New);
			$(this).append("<span class=\"req\">*</span>");
		}
		else 
		{
			$(this).text(New);
		}
	
	});
});

$(document).ready(function(){
	$("#shipping_fields label").each(function(){
		var Original = $(this).text();
		var New = Original.replace(/Shipping/,"");
		var Match = /[*]/.test(New);
		if (Match)
		{
			New = New.replace(/[*]/,"");
			$(this).text(New);
			$(this).append("<span class=\"req\">*</span>");
		}
		else
		{
			$(this).text(New);
		}
	});
});

$(document).ready(function(){
	function throwalert(message)
	{
		var Message = $("<div class='inlinemessage'>"+message+"</div>");
		Message.insertAfter("#wrapper").hide();			
		$("#modalLayer").bgiframe().show();
		Message.center().
		hide().
		fadeIn("slow").
		animate({opacity: 0.0}, 1500,function(){
			($(this).remove());
			($("#modalLayer").fadeOut("slow"));
		});	
		
	}
	
	$("form.createOrder :submit").click(function() {
		if ($("select.deliveryCost").val() == '')
		{
			throwalert("Can you enter your delivery method please");
			return false;
		}
		if ($("select.paymentMethod").val() == '')
		{
			throwalert("Can you enter your payment method please");
			return false;
		}
		if ($("select#termsAndConditions").val() == '')
		{
			throwalert("Please let us know if you accept our terms and conditions");
			return false;
		}
		
		
		
		return true;
	});
});

// this for terms and conditions, delivery etc

$(function(){
	$(".showContent").colorbox({
		opacity:0.7,
		width:"800px", 
		height:"70%"});
});

// this for viewing orders and print address

$(function(){
	$(".printSummary").colorbox({
		opacity:0.7,
		width:"820px", 
		height:"160%"});
});

/*
$(function(){
	$("a.print").live("click",function (){
		$(".orderSummary").print();
		return false;
	});
});
*/

$(document).ready(function(){
	$("table.information tr:last td").css({"padding":"10px 0 10px 0"})
});

$(document).ready(edit_order_init);

function edit_order_init()
{
	$("a.editOrder").click(edit_order);
}
function edit_order()
{
	var id  = getUrlVars(this.href)["id"];
	$.getJSON('/ajax/editOrder.php?ajax=true&id='+id,returntocart);
	return false;
}
function returntocart()
{
	location.href="/cart.html";
}



$(document).ready(delete_order_init);
function delete_order_init()
{
	$("a.deleteOrder").click(delete_order);
}
function delete_order()
{
	var id  = getUrlVars(this.href)["id"];
	var user_id = getUrlVars(this.href)["user_id"];		
	this.id = 'delete_link_'+id;
	$.getJSON('/ajax/deleteOrder.php?ajax=true&id='+id+'&user_id='+user_id,remove_row);
	return false;
}
function remove_row(data)
{	
	if(data.empty == "1")
	{
		$("table").remove()
		$("p.ordersmessage").text("You have yet to place any orders with us");
	}
	else
	{
		$("#delete_link_"+data.id)
		.closest("tr")
		.remove()
		//$("table").css({"border-bottom":"1px solid #bd0b0f"});
		$("table").addClass("border-bottom");
	}
}


$(document).ready(delete_address_init);
function delete_address_init()
{
	$("a.deleteAddress").click(delete_address);
}
function delete_address()
{
	var id = getUrlVars(this.href)["delete"];
	var user_id = getUrlVars(this.href)["user_id"];		
	this.id = 'delete_link_'+id;
		$.getJSON('/ajax/deleteAddress.php?ajax=true&id='+id+'&user_id='+user_id,remove_address);
	return false;
}
function remove_address(data)
{
	if (data.empty == "0")
	{
		var form = $("form.addressBook");
		$("table").remove()
		$("input.selectAsMainAddress").remove()
		$("<p>You have no delivery addresses set up - please add one now</p>").prependTo(form);
	}
	if (data.empty == "1")
	{
		$("#delete_link_"+data.id)
		.closest("tr")
		.remove()
		$("table tr:last").addClass("border-bottom");
		
		if (data.priority == "1")
		{
		 if ($("form.addressBook input").not(":checked")) 
		 {
		 	$("form.addressBook input:first").attr("checked","checked");
		 }
		}
	}
}

$(document).ready(function(){
	$(".videolink").colorbox({iframe:true, innerWidth:480, innerHeight:385});
});

function getUrlVars(url)
{
 
	var vars = [], hash;
    var hashes = url.slice(url.indexOf('?') + 1).split('&');
    
    for(var i = 0; i < hashes.length; i++)
    {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
    return vars;
}
/*
$(document).ready(function() {
	$("a.clearSearchFilters").click(function(){	$(".searchContainer").load("/ajax/clearSearchFilters.php",function(){
			$(this).fadeIn("slow");
		});
		return false;
	});
});
*/

$(function(){
	var searchForm = $("form.search input:not(:submit)")

	var searchValue = searchForm.val();

	searchForm.focus(function(){
	if ($(this).val() == searchValue)
	{
		searchForm.val("");
	}
	});
});

$(document).ready(function(){
	$(".giftMessage").hide();
	$("a.showGiftMessage").click(function(){
		var target = $(this);
		target.next("div").slideDown("slow");
		return false;
		});
		
		$("a.cancelGiftMessage").click(function(){
			var targetCancel = $(this);
			targetCancel.parents(".giftMessage").slideUp("slow");
			return false;
		});
		
	});
	
$(document).ready(function(){
	$("a[rel='imageGallery']").colorbox({
		opacity:0.7
	});
});

$(function(){
$(".success").hide().slideDown("slow").delay(5000).fadeOut("slow",function(){location.href="contact"});
});

$(document).ready(function() {
  $('#loading').ajaxStart(function() {
    $(this).show();
  }).ajaxStop(function() {
    $(this).hide();
  });
});


    
