<!--##########################################
<!------------ LIGHT BOX-------------->

$(document).ready(function(){
		$(".lightbox").lightbox();
	});

<!--##########################################
<!------------ PRODUCT SLIDES-------------->

function mycarousel_initCallback(carousel)
{
    // Disable autoscrolling if the user clicks the prev or next button.
    carousel.buttonNext.bind('click', function() {
        carousel.startAuto(0);
    });

    carousel.buttonPrev.bind('click', function() {
        carousel.startAuto(0);
    });

    // Pause autoscrolling if the user moves with the cursor over the clip.
    carousel.clip.hover(function() {
        carousel.stopAuto();
    }, function() {
        carousel.startAuto();
    });
};

jQuery(document).ready(function() 
{
    jQuery('#prodSlide').jcarousel({
        auto: 3,
        wrap: 'last',
        initCallback: mycarousel_initCallback
    });
}
);
jQuery(document).ready(function() 
{
    jQuery('#basketSlide').jcarousel({
        auto: 3,
        wrap: 'last',
        initCallback: mycarousel_initCallback
    });
}
);
jQuery(document).ready(function() 
{
    jQuery('#newprodSlide').jcarousel({
        auto: 1,
        wrap: 'last',
        initCallback: mycarousel_initCallback
    });
}
);

<!--##########################################
<!------------ TOOL TIP-------------->
$(document).ready(function() {
	$(".tooltips").hover(
		function() { $(this).contents("#tooltip").fadeIn("fast"); },
		function() { $(this).contents("#tooltip").fadeOut("fast"); }
	);

	$(".tooltips").mousemove(function(e) {
		var offsetX = 10;
		var offsetY = -5;
		$(this).contents("#tooltip").css({  top: offsetX, left: offsetY });
	});
	
	<!--Do this when in the Shopping cart page-->
	var sPath = window.location.pathname;
	var sPage = sPath.substring(sPath.lastIndexOf('/') + 1);
	if(sPage == 'shopping_cart.php')
	{
	document.forms['productForm0'].elements['txtquickcode'].focus();		
	}
});


<!--####################################################################-->
<!--####################################################################-->
<!------------ MISC FUNCTION -------------->
<!--####################################################################-->
<!--####################################################################-->
function enableExpiryDate() {
	if(document.getElementById('txtSetExpiryDate').checked){
		document.getElementById('txtExpiryDate').disabled='';
	} else {
		document.getElementById('txtExpiryDate').disabled='true';
	}
}

function formget(f, url, divResult) 
{
	//alert(f);
	var poststr = getFormValues(f);
	//alert(poststr);
	postData(url, poststr, divResult);
}

function postshipping(form, divResult)
{
	//var total = form.shippingoption.value + form.subtotal.value;
	
	//alert(form.elements["shippingoption"].value);
	//form.elements["subtotal"].value = parseInt(form.elements["shippingoption"].value) + parseInt(form.elements["subtotal"].value);
	var shipoption = form.elements["shippingoption"].value.split(":");
	var shiprate = parseFloat(shipoption[1]);
	var total = parseFloat(shipoption[1]) + parseFloat(form.elements["subtotal"].value);
	
	document.getElementById(divResult).innerHTML = shiprate.toFixed(2);
	document.getElementById('totalDiv').innerHTML = total.toFixed(2);
}



function textCount(field,cntfield,maxlimit,label) 
{
if (field.value.length > maxlimit) // if too long...trim it!
field.value = field.value.substring(0, maxlimit);

// otherwise, update 'characters left' counter
else
cntfield.value =  maxlimit - field.value.length;
}



function quantityAdd(formfield,freestock,resultdiv) 
{
	//alert(formfield.value);
	if(freestock > formfield.value)
	{
		formfield.value = parseInt(formfield.value) + 1;
	}
	else
	{
		formfield.value = parseInt(freestock);
	
		$(document).ready(function() 
		{
		$("#jquerypopSmall"+resultdiv).delay(20).fadeIn("medium"); 
	    $("#jquerypopSmall"+resultdiv).delay(2000).fadeOut("fast");
		});
	}
}

function quantityRemove(formfield,freestock,resultdiv) 
{
	if(formfield.value <= 1)
	{
		formfield.value = 1;
	}
	else
	{
		formfield.value = parseInt(formfield.value) - 1;
	}
	
}

function quantityValidate(formfield,freestock,resultdiv) 
{
	//alert(resultdiv);
	//alert(regIsDigit(formfield.value) == true)
	//alert(formfield.value);
	
	if(formfield.value == '')
	{
		//alert(formfield.value);
	}
	else if(regIsDigit(formfield.value) == false)
	{
		//alert(formfield.value);
			formfield.value=1;
	}
	else
	{
		if(formfield.value < 0)
		{
			formfield.value = 1;
		}
		
		if(parseInt(freestock.value) <= parseInt(formfield.value))
		{
			formfield.value = parseInt(freestock.value);
			$(document).ready(function() 
			{
			$("#jquerypopSmall"+resultdiv).delay(20).fadeIn("medium"); 
			$("#jquerypopSmall"+resultdiv).delay(2000).fadeOut("fast");
			});
		}
	}
	
}


function quantityValidate2(formfield) 
{
	if(formfield.value <= 1)
	{
		formfield.value = 1;
	}
	
	if (formfield.value.substring(0,1) =="0") 
	{
	formfield.value = formfield.value.substring(1)
	}
}


function regIsDigit(fData)  
{  
	var reg = new RegExp("^[0-9]+$");
	return (reg.test(fData));  
} 


// Used in all pages to submit a form and optionally set a hidden 
// form varaible called 'navigate' to direct navgiation
function submitForm(formName, navigateValue) {
	if (navigateValue != null && navigateValue != "") {
		document.forms[formName].navigate.value = navigateValue;
	}
    document.forms[formName].submit();
}

<!--####################################################################-->

<!--##########################################
<!------------PAGE IMAGE UPLOAD-------------->

function $m(theVar){
	return document.getElementById(theVar)
}
function remove(theVar){
	var theParent = theVar.parentNode;
	theParent.removeChild(theVar);
}
function addEvent(obj, evType, fn){
	if(obj.addEventListener)
	    obj.addEventListener(evType, fn, true)
	if(obj.attachEvent)
	    obj.attachEvent("on"+evType, fn)
}
function removeEvent(obj, type, fn){
	if(obj.detachEvent){
		obj.detachEvent('on'+type, fn);
	}else{
		obj.removeEventListener(type, fn, false);
	}
}
function isWebKit(){
	return RegExp(" AppleWebKit/").test(navigator.userAgent);
}

//var id_element = "upload_area";
var html_show_loading = "<p>File Uploading Please Wait...</br> <img src='/images/ajax-loader.gif' width='24' height='24' border='0' /></p>";
var html_error_http = "<img src='/images/error.gif' width='16' height='16' border='0' /> Error in Upload";


function ajaxUpload(form,url_action,id_element){
	//alert(id_element);	
	var detectWebKit = isWebKit();
	form = typeof(form)=="string"?$m(form):form;
	var erro="";
	if(form==null || typeof(form)=="undefined"){
		erro += "The form of 1st parameter does not exists.\n";
	}else if(form.nodeName.toLowerCase()!="form"){
		erro += "The form of 1st parameter its not a form.\n";
	}
	if(erro.length>0){
		alert("Error in call ajaxUpload:\n" + erro);
		return;
	}	
	var iframe = document.createElement("iframe");
	iframe.setAttribute("id","ajax-temp");
	iframe.setAttribute("name","ajax-temp");
	iframe.setAttribute("width","0");
	iframe.setAttribute("height","0");
	iframe.setAttribute("border","0");
	iframe.setAttribute("style","width: 0; height: 0; border: none;");
	form.parentNode.appendChild(iframe);
	window.frames['ajax-temp'].name="ajax-temp";
	var doUpload = function(){
		removeEvent($m('ajax-temp'),"load", doUpload);
		var cross = "javascript: ";
		cross += "window.parent.$m('"+id_element+"').innerHTML = document.body.innerHTML; void(0);";
		$m(id_element).innerHTML = html_error_http;
		$m('ajax-temp').src = cross;
		if(detectWebKit){
        	remove($m('ajax-temp'));
        }else{
        	setTimeout(function(){ remove($m('ajax-temp'))}, 250);
        }
    }
	addEvent($m('ajax-temp'),"load", doUpload);
	form.setAttribute("target","ajax-temp");
	form.setAttribute("action",url_action);
	form.setAttribute("method","post");
	form.setAttribute("enctype","multipart/form-data");
	form.setAttribute("encoding","multipart/form-data");
	if(html_show_loading.length > 0){
		$m(id_element).innerHTML = html_show_loading;
	}
	//alert(id_element)
	form.submit();
	form.removeAttribute("target","ajax-temp");
	form.removeAttribute("action",url_action);
	form.removeAttribute("enctype","multipart/form-data");
	form.removeAttribute("encoding","multipart/form-data");
}

<!------------PAGE IMAGE UPLOAD END-------------->
<!--##########################################


<!--##########################################
<!------------TOGGLE MESSAGE CARD FIELD-------------->
function toggle_messagecard_box(value, displaydiv, txtmessagecard)
{
	if(value == '0:0')
	{		
	var box = document.getElementById(displaydiv);
	box.style.display = 'none';	
	document.getElementById(txtmessagecard).value = '';
	}
	else
	{
	var box = document.getElementById(displaydiv);
	box.style.display = 'block';	
	}
}

<!--##########################################

function imagedownload(form,value,url)
{
	form.setAttribute("action",url);
	
	var newinput = document.createElement("input");
		newinput.setAttribute("id","downloadid");
		newinput.setAttribute("name","downloadid");
		newinput.setAttribute("type","hidden");
		newinput.setAttribute("value",value);
		form.appendChild(newinput);	

	form.submit();
	form.removeAttribute("action",url);
	form.removeChild(newinput);
}

<!--##########################################
<!------------TOGGLE BILLING ADDRESS FIELDS-------------->
function toggleBillingInfo(trgForm,formAddressConfirm)
{
	//alert(formAddressConfirm.txtCounty.value);
    if (trgForm.chDeliverySame.checked == true)
    {
        formAddressConfirm.dtxtfirstname.value = formAddressConfirm.txtfirstname.value;
		formAddressConfirm.dtxtlastname.value = formAddressConfirm.txtlastname.value;
		formAddressConfirm.dtxtaddress1.value = formAddressConfirm.txtaddress1.value;
		formAddressConfirm.dtxtaddress2.value = formAddressConfirm.txtaddress2.value;
		formAddressConfirm.dtxttown.value = formAddressConfirm.txttown.value;
		formAddressConfirm.dtxtPostcode.value = formAddressConfirm.txtPostcode.value;
		formAddressConfirm.dtxtCounty.value = formAddressConfirm.txtCounty.value;
		formAddressConfirm.dtxtCountrycode.value = formAddressConfirm.txtCountrycode.value;
		formAddressConfirm.dtxtPhone.value = formAddressConfirm.txtPhone.value;
    }
	if (trgForm.chDeliverySame.checked == false)
    {
        trgForm.dtxtfirstname.value = '';
		trgForm.dtxtlastname.value = '';
		trgForm.dtxtaddress1.value = '';
		trgForm.dtxtaddress2.value = '';
		trgForm.dtxttown.value = '';
		trgForm.dtxtPostcode.value = '';
		trgForm.dtxtCounty.value = '';
		trgForm.dtxtCountrycode.value = '';
		trgForm.dtxtPhone.value = '';
    }
}

<!--##########################################
<!------------TOGGLE FORM-------------->
function toggle_form_field(type)
{
	if(type == 'soletrade_partnership')
	{
		var box = document.getElementById('soletrade_partnership');
		box.style.display = 'block';	
		var box = document.getElementById('limited');
		box.style.display = 'none';	
	}
	else if(type == 'limited')
	{
		var box = document.getElementById('soletrade_partnership');
		box.style.display = 'none';	
		var box = document.getElementById('limited');
		box.style.display = 'block';
	}
	if(type == 'heardotherways')
	{
		var box = document.getElementById('heardotherways');
		box.style.display = 'block';	
	}
}

function toggle_form(type)
{
	if(type == 'trade')
	{
		var box = document.getElementById('tradeform');
		box.style.display = 'block';
		var box = document.getElementById('retailform');
		box.style.display = 'none';	
	}
	else if(type == 'retail')
	{
		var box = document.getElementById('tradeform');
		box.style.display = 'none';
		var box = document.getElementById('retailform');
		box.style.display = 'block';	
	}	
}



<!--##########################################
<!------------ FORM VALIDATE-------------->
function form_validation(form)
{
	var error = 0;
	var textboxStyle = '#FFAEB0';
		
	//alert(form.txtCompanyName.value);
	if((form.txtEmail.value == '') ||  (form.txtEmail.value != form.txtConfirmEmail.value))
	{
		error = 1;
		document.getElementById('txtEmail').style.background = textboxStyle;		
		document.getElementById('txtConfirmEmail').style.background = textboxStyle;	
	}
	else
	{
		document.getElementById('txtEmail').style.background = '';
		document.getElementById('txtConfirmEmail').style.background = '';
	}
	
	if((form.txtPassword.value == '') ||  (form.txtPassword.value != form.txtConfirmPassword.value))
	{
		error = 1;
		document.getElementById('txtPassword').style.background = textboxStyle;
		document.getElementById('txtConfirmPassword').style.background = textboxStyle;
	}
	else
	{
		document.getElementById('txtPassword').style.background = '';
		document.getElementById('txtConfirmPassword').style.background = '';
	}
	
	if((form.txtFname.value == ''))
	{
		error = 1;
		document.getElementById('txtFname').style.background = textboxStyle;
	}
	else
	{
		document.getElementById('txtFname').style.background = '';
	}
	
	if((form.txtLastname.value == ''))
	{
		error = 1;
		document.getElementById('txtLastname').style.background = textboxStyle;
	}
	else
	{
		document.getElementById('txtLastname').style.background = '';
	}
	
	
	if((form.captchacode.value == ''))
	{
		error = 1;
		document.getElementById('captchacode').style.background = textboxStyle;
	}
	else
	{
		document.getElementById('captchacode').style.background = '';
	}
	
	/*if(form.txtaddressfirstname.value == '')
	{
		error = 1;
		document.getElementById('txtaddressfirstname').style.background = textboxStyle;
	}
	else
	{
		document.getElementById('txtaddressfirstname').style.background = '';
	}*/
	
	/*if(form.txtaddresslastname.value == '')
	{
		error = 1;
		document.getElementById('txtaddresslastname').style.background = textboxStyle;
	}
	else
	{
		document.getElementById('txtaddresslastname').style.background = '';
	}*/
	
	if(form.txtNumber.value == '')
	{
		error = 1;
		document.getElementById('txtNumber').style.background = textboxStyle;
	}
	else
	{
		document.getElementById('txtNumber').style.background = '';
	}
	
	if(form.txtaddress1.value == '')
	{
		error = 1;
		document.getElementById('txtaddress1').style.background = textboxStyle;
	}
	else
	{
		document.getElementById('txtaddress1').style.background = '';
	}
	
	if(form.txtPostcode.value == '')
	{
		error = 1;
		document.getElementById('txtPostcode').style.background = textboxStyle;
	}
	else
	{
		document.getElementById('txtPostcode').style.background = '';
	}
	
	if(form.txtCountrycode.value == '')
	{
		error = 1;
		document.getElementById('txtCountrycode').style.background = textboxStyle;
	}
	else
	{
		document.getElementById('txtCountrycode').style.background = '';
	}
	
	if(form.txtcustomerType.value == 'T')
	{
		if(form.txtCompanyName.value == '')
		{
			error = 1;
			document.getElementById('txtCompanyName').style.background = textboxStyle;
		}
		else
		{
			document.getElementById('txtCompanyName').style.background = '';
		}
		
		if(form.txtTradingas.value == '')
		{
			error = 1;
			document.getElementById('txtTradingas').style.background = textboxStyle;
		}
		else
		{
			document.getElementById('txtTradingas').style.background = '';
		}
		
		if(form.txtYearsTrading.value == '')
		{
			error = 1;
			document.getElementById('txtYearsTrading').style.background = textboxStyle;
		}
		else
		{
			document.getElementById('txtYearsTrading').style.background = '';
		}
		
					if(form.txtBusinessBase.value == '')
		{
			error = 1;
			document.getElementById('txtBusinessBase').style.background = textboxStyle;
		}
		else
		{
			document.getElementById('txtBusinessBase').style.background = '';
		}
	
		if(form.txtBuyersName.value == '')
		{
			error = 1;
			document.getElementById('txtBuyersName').style.background = textboxStyle;
		}
		else
		{
			document.getElementById('txtBuyersName').style.background = '';
		}
	
		if((form.checkBusinessType[0].checked == false) && (form.checkBusinessType[1].checked == false) && (form.checkBusinessType[2].checked == false))
		{
			error = 1;
			document.getElementById('validatecheckBusinessType').style.background = textboxStyle;
		}
		else
		{
			document.getElementById('validatecheckBusinessType').style.background = '';
		}
		
		
		if(((form.checkBusinessType[0].checked == true) && (form.txtHomeRegAddress.value == '')) || ((form.checkBusinessType[1].checked == true) && (form.txtHomeRegAddress.value == '')))
		{
			error = 1;
			document.getElementById('txtHomeRegAddress').style.background = textboxStyle;
		}
		else
		{
			document.getElementById('txtHomeRegAddress').style.background = '';
		}
		
		
		if((form.checkBusinessType[2].checked == true) && (form.txtCompanyRegNo.value == ''))
		{
			error = 1;
			document.getElementById('txtCompanyRegNo').style.background = textboxStyle;
		}
		else
		{
			document.getElementById('txtCompanyRegNo').style.background = '';
		}
	}
		
	if(error == 0)
	{
		form.submit();		
	}

}

<!--##########################################
<!------------DISABLE/ENABLE THE BUTTON-------------->
function checkTerms()
{ 
if(document.customerform1.checkterms.checked==false)
{
document.customerform1.checkoutconfirm.disabled=true;
document.customerform1.checkoutconfirm.setAttribute("class","formButtonShortDisable");
}
else
{
document.customerform1.checkoutconfirm.disabled=false;
document.customerform1.checkoutconfirm.setAttribute("class","formButtonNavigate");
}
}

<!--##########################################
<!------------FORM SUBMISSION-------------->


function lookup(inputString,inputsessionKey) 
{
if(inputString.length == 0) 
{
	// Hide the suggestion box.
	$('#suggestions').fadeOut();
} 
else 
{
	// "/wandering/quick_lookup.php"
	$.post("/quick_lookup.php", {queryString: ""+inputString+"",sessionKey:""+inputsessionKey+""}, function(data){
		if(data.length >0) {
			$('#suggestions').fadeIn();
			$('#autoSuggestionsList').html(data);
		}
	});
}
} // lookup

function quickfill(prodCode,maxStock) 
{
	//alert(thisValue.length);
$('#txtquickcode').val(prodCode);
$('#txtmaxStock').val(maxStock);

setTimeout("$('#suggestions').fadeOut();", 200);
}



<!--##########################################
<!------------AJAX FORM SUBMISSION-------------->
function AJAX()
{
	var xmlHttp;
	try
	{
		xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
		return xmlHttp;
	}
	catch (e)
	{
		try
		{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer
			return xmlHttp;
		}
		catch (e)
		{
			try
			{
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
				return xmlHttp;
			}
			catch (e)
			{
				alert("Your browser does not support AJAX!");
				return false;
			}
		}
	}
}



function formget(f, url, divResult) 
{
	//alert(f);
	var poststr = getFormValues(f);
	//alert(poststr);
	postData(url, poststr, divResult);
}




function postData(url, parameters, divResult)
{
	var xmlHttp = AJAX();
	xmlHttp.onreadystatechange =  function()
	{
		if(xmlHttp.readyState > 0 && xmlHttp.readyState < 4)
		{
			document.getElementById(divResult).innerHTML=loadingmessage;
		}
		if (xmlHttp.readyState == 4 || xmlHttp.readyState== 200) 
		{
			document.getElementById(divResult).innerHTML=xmlHttp.responseText;
		}	
	}
	
	xmlHttp.open("POST", url, true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.setRequestHeader("Content-length", parameters.length);
	xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.send(parameters);
}



function getFormValues(fobj)
{
	var str = "";
	var valueArr = null;
	var val = "";
	var cmd = "";
	for(var i = 0;i < fobj.elements.length;i++)
	
	{
	switch(fobj.elements[i].type)
	
	{
	case "text":
	
	str += fobj.elements[i].name +
	"=" + escape(fobj.elements[i].value) + "&";
	break;
	
	case "hidden":
	
	str += fobj.elements[i].name +
	"=" + escape(fobj.elements[i].value) + "&";
	break;
	
	case "textarea":
	
	str += fobj.elements[i].name +
	"=" + fobj.elements[i].value + "&";
	break;
	
	case "password":
	
	str += fobj.elements[i].name +
	"=" + escape(fobj.elements[i].value) + "&";
	break;
	
	case "select-one":
	
	str += fobj.elements[i].name +
	"=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&";
	break;
	
	case "checkbox":
	
	if(fobj.elements[i].checked == true){
	
	str += fobj.elements[i].name +
	"=" + fobj.elements[i].value + "&";
	}
	break;
	
	case "radio":
	
	if(fobj.elements[i].checked == true){
	
	str += fobj.elements[i].name +
	"=" + fobj.elements[i].value + "&";
	}
	break;
	
	case "file":
	
	str += fobj.elements[i].name +
	"=" + fobj.elements[i].value + "&";
	break;
	
	}
	}
	
	str = str.substr(0,(str.length - 1));
	return str;
}






