	var current_active_lp = null;
	var current_manufacturer = null;
	var current_prefix_lp = null;
	var current_ncode = null;
	var current_blind_type = null;
	var current_big_prefix = 'solas';
	var current_big_image = null;
	var current_color_name = null;
	function setColor(bi, lp, ni)
	{
		current_big_image = bi;
		MM_swapImage('bigone','','images/blinds/big_' + current_big_prefix + '/' + bi,1);
		document.getElementById('color_name').innerHTML = ni;
		current_color_name = ni;
		pel = document.getElementById('a_' + current_active_lp);
		if ( pel ) pel.className = "";
		if ( lp ) { // todo spr.
			current_active_lp = lp;
			document.getElementById('a_' + current_active_lp).className = 'active';
		}
	}
	function addToBasket(pid)
	{
		if ( current_active_lp != null && current_manufacturer && current_prefix_lp && current_ncode && current_blind_type ) {
			document.location = '?pageid=' + pid
				+ '&a=add'
				+ '&lp=' + current_active_lp
				+ '&mnf=' + current_manufacturer
				+ '&prlp=' + current_prefix_lp
				+ '&nc=' + current_ncode
				+ '&bt=' + current_blind_type
				+ '#basket';
		}
		else {
			alert('This order is incomplete, please ensure you have completed all the steps.');
		}
	}
	function addCustomBlindToBasket(pid)
	{
		if ( current_active_lp != null && $("input[name=dim_a]").val() != "" &&
		 $("input[name=dim_b]").val() != "" &&
		 $("input[name=dim_c]").val() != "" &&
		 $("input[name=dim_d]").val() != "" &&
		 $("input[name=dim_e]").val() != "" &&
		 $("input[name=handle]").val() != "" &&
		 $("input[name=hinge]").val() != "" &&
		 $("input[name=installed]").val() != "" &&
		 $("input[name=dim_f]").val() != "") {
		 	
			document.location = '?pageid=' + pid
				+ '&a=add'
				+ '&lp=' + current_active_lp
				+ '&dim_a=' + $("input[name=dim_a]").val()
				+ '&dim_b=' + $("input[name=dim_b]").val()
				+ '&dim_c=' + $("input[name=dim_c]").val()
				+ '&dim_d=' + $("input[name=dim_d]").val()
				+ '&dim_e=' + $("input[name=dim_e]").val()
				+ '&dim_f=' + $("input[name=dim_f]").val()
				+ '&handle=' + $("input[name=handle]").val()
				+ '&hinge=' + $("input[name=hinge]").val()
				+ '&installed=' + $("input[name=installed]").val()
				+ '&manufacturer=' + $("input[name=manufacturer]").val()
				+ '&code=' + $("input[name=code]").val()
				+ '#basket';
		}
		else {
			alert('This order is incomplete, please ensure you have completed all the steps.');
		}
	}
	function setManufacturer(mnf)
	{
		pel = document.getElementById('m_' + current_manufacturer);
		if ( pel ) pel.className = "";
		document.getElementById('m_' + mnf).className = 'active';

		if ( current_prefix_lp ) {
			document.getElementById('pr_' + current_manufacturer + '_' + current_prefix_lp).className = "";
			current_prefix_lp = null;
		}
		document.getElementById('step2_desc').style.display = "";
		if ( current_manufacturer ) document.getElementById('p_' + current_manufacturer).style.display = "none";
		document.getElementById('p_' + mnf).style.display = "";

		//if ( current_manufacturer ) document.getElementById('n_' + current_manufacturer).style.display = "none";
		//document.getElementById('n_' + mnf).style.display = "";
		current_ncode = null;
		$('#numeric_prefix').hide();

		if ( current_manufacturer ) document.getElementById('ii_' + current_manufacturer).style.display = "none";
		document.getElementById('ii_' + mnf).style.display = "";

		current_manufacturer = mnf;

		setPrefix('0');
	}
	function setPrefix(prid)
	{
		if ( current_prefix_lp ) {
			document.getElementById('pr_' + current_manufacturer + '_' + current_prefix_lp).className = "";
		}
		document.getElementById('pr_' + current_manufacturer + '_' + prid).className = "active";
		current_prefix_lp = prid;
		$('#numeric_prefix').load('index.php?do=blinds',{a:'showNumericCodes', prid:prid, mnf: current_manufacturer, cnc: current_ncode}).show();
	}
	function setCode(ncode)
	{
		if ( current_ncode && document.getElementById('nc_' + current_manufacturer + '_' + current_ncode) ) {
			document.getElementById('nc_' + current_manufacturer + '_' + current_ncode).className = "";
		}
		document.getElementById('nc_' + current_manufacturer + '_' + ncode).className = "active";
		current_ncode = ncode;
	}
	function setBlindType(bt)
	{
		//current_big_prefix = bt;

		if ( current_color_name != null && current_active_lp != null && current_big_image != null ) {
			setColor(current_big_image, current_active_lp, current_color_name);
		}
		if ( current_blind_type ) {
			document.getElementById('bt_' + current_blind_type).className = "";
		}
		document.getElementById('bt_' + bt).className = "active";
		current_blind_type = bt;

		$('div[id^=color_set_]').hide();
		$('#allowed_color_sets_for_' + bt).find('span').each(function(e){
			$('#color_set_' + $(this).text()).show();
		});

		// reset current color to default
		setColor($('#default_color_big_image_' + bt).text(), $('#default_color_lp_' + bt).text(), $('#default_color_name_' + bt).text());

	}
