var min_width=0;
var max_width=0;
var min_drop=0;
var max_drop=0;
var price=0;


// calculates the minimum price for current product
function getMinimumPrice(form_calc)
{
	//var discount= venetianmm_arr[0][6] / 100;
	var min_price = vertical_arr[0][6][3][0];
	
	for(i=0; i<vertical_arr.length; i++)
	{	
			var slat_arr=vertical_arr[i][6];
			for(j=0; j<slat_arr[0].length; j++)
			{	
				var cur_price=slat_arr[3][j]*(1-discount);
				if (min_price>cur_price)
				{
					min_price=cur_price;
				}
			}
		
	}
	min_price=formatDecimal(min_price,true,2);
	if(typeof(sale) != 'undefined' && sale.sale > 0)
		min_price = formatDecimal(min_price - (min_price * sale.sale /100), true,2);
	document.getElementById('minprice').innerHTML = min_price;
	
}


function getParams()
{
	var idx = document.URL.indexOf('?');
	var params = new Array();
	if (idx != -1)
	{
		var pairs = document.URL.substring(idx+1, document.URL.length).split('&');
		for (var i=0; i<pairs.length; i++)
		{
			nameVal = pairs[i].split('=');
			params[nameVal[0]] = nameVal[1];
		}
	}
	return params;
}

function SetOtherParams()
{
    params = getParams();
    if (params["controls"] && params["stack"] && params["recess"] && params["bracket"])
    {
        document.form_calcvertical.controls.value = params["controls"];
        document.form_calcvertical.stack_pos.value = params["stack"];
        document.form_calcvertical.recess.value = params["recess"];
        document.form_calcvertical.bracket.value = params["bracket"];
    }
	
    if (params["slat"])
    {
        document.form_calcvertical.louvre.value = params["slat"];
        selectLouvre(document.form_calcvertical.louvre.value);

		var slatObj = document.form_calcvertical.slat_;
		for(k = 0; k < slatObj.length; k++) {
			if(slatObj[k].value == params["slat"])
				slatObj[k].checked = true;
		}
		
		RRP.get();
    }

}

function formatDecimal(argvalue, addzero, decimaln) {
  var numOfDecimal = (decimaln == null) ? 2 : decimaln;
  var number = 1;

  number = Math.pow(10, numOfDecimal);

  argvalue = Math.round(parseFloat(argvalue) * number) / number;
  
  argvalue = "" + argvalue;

  if (argvalue.indexOf(".") == 0)
    argvalue = "0" + argvalue;

  if (addzero == true) {
    if (argvalue.indexOf(".") == -1)
      argvalue = argvalue + ".";

    while ((argvalue.indexOf(".") + 1) > (argvalue.length - numOfDecimal))
      argvalue = argvalue + "0";
  }

  return argvalue;
}

function selectLouvre(louvre)
{  	
	for(var i = 0; i < document.form_calcvertical.louvre.options.length; i++) {
		if (document.form_calcvertical.louvre.options[i].value == louvre) {
			document.form_calcvertical.louvre.selectedIndex = i;
		break;
		}
	}

	document.form_calcvertical.price.value="";
	document.form_calcvertical.saveprice.value="";
	document.form_calcvertical.addtobasket.disabled=false;
	var louvre_poz=-1;
	for(i=0; i<vertical_arr.length;i++)
	{
		if(vertical_arr[i][0]==louvre)
			louvre_poz=i;
	}
	if(louvre_poz<0)
		return;
	min_width=parseInt(vertical_arr[louvre_poz][2]);
	max_width=parseInt(vertical_arr[louvre_poz][3]);
	min_drop=parseInt(vertical_arr[louvre_poz][4]);
	max_drop=parseInt(vertical_arr[louvre_poz][5]);
	
	price=0;
	
	params = getParams();
	
	width = params["width"];
	drop = params["drop"];
	
	if((width!="")&&(typeof(width) != "undefined"))
		document.form_calcvertical.custom_width.value=unescape(width);
	if((drop!="")&&(typeof(drop) != "undefined"))
		document.form_calcvertical.custom_drop.value=unescape(drop);
	
	
	
	if((document.form_calcvertical.custom_drop.value!="") && (document.form_calcvertical.custom_width.value!=""))
		GetCustomPrice();
}
function AddLouvres()
{ 
	var louvre_value = GetLouvreValue(document.form_calcvertical);		
	var louvre=document.form_calcvertical.louvre;
	for(i=0;i<vertical_arr.length;i++)
		louvre.options[i]= new Option(vertical_arr[i][1], vertical_arr[i][0]);
	//selectLouvre(document.form_calcvertical.louvre.value);
	selectLouvre(louvre_value);
}

function GetLouvreValue(form){
	var louvre_value = 0;
	var radioLength = form.slat_.length;
	for(var i = 0; i < radioLength; i++) {
		if(form.slat_[i].checked) {
			return form.slat_[i].value;
		}
	}
}

function ChangePrice(custom_ctrl, form_calc)
{
	custom_ctrl.value="";
	form_calc.price.value="";
	form_calc.saveprice.value="";
	//form_calc.addtobasket.disabled=true; 
}

function GetPrice(prices_arr, width, drop)
{
	var min_dif_width=-1, min_dif_drop=-1;
	var sel_width=-1, sel_drop=-1;
	var price=0;
	for(i=0;i<prices_arr[0].length;i++)
	{
		var cur_dif_width=prices_arr[1][i]-width;
		var cur_dif_drop=prices_arr[2][i]-drop;
		//alert("dif curenta: "+cur_dif_width+"   width: "+sizes_arr[1][i]+" custom width:"+custom_width);
		if(((min_dif_width==-1)||(cur_dif_width<min_dif_width))&&(cur_dif_width>=0))
		{
			min_dif_width=cur_dif_width;
			sel_width=prices_arr[1][i];
			sel_drop=-1;
			min_dif_drop=-1;
		}
		
		if(prices_arr[1][i]==sel_width)
			if(((min_dif_drop==-1)||(cur_dif_drop<min_dif_drop))&&(cur_dif_drop>=0)&&(min_dif_width!=-1))
			{
				min_dif_drop=cur_dif_drop;
				sel_drop=prices_arr[2][i];
				price=prices_arr[3][i];
			}
	}
	return price;
}

function GetMaxWidth(prices_arr, drop)
{
	var max_width=0;
	var min_dif_drop=-1;
	var sel_drop=-1;
	for(i=0;i<prices_arr[0].length;i++)
	{
		var cur_dif_drop=prices_arr[2][i]-drop;
		if(((min_dif_drop==-1)||(cur_dif_drop<min_dif_drop))&&(cur_dif_drop>=0))
		{
			min_dif_drop=cur_dif_drop;
			sel_drop=prices_arr[2][i];
			max_width=0;
		}
		
		if((prices_arr[2][i]==sel_drop)&&(max_width<prices_arr[1][i]))
			max_width=prices_arr[1][i];
	}
	return max_width;
}
	
function GetCustomPrice()
{
	var custom_width=parseInt(document.form_calcvertical.custom_width.value);

	var custom_drop=parseInt(document.form_calcvertical.custom_drop.value);
	if((min_width>custom_width)||(max_width<custom_width)||(isNaN(custom_width)))
	{
		alert("Please enter width between "+min_width+"mm (min) and "+max_width+"mm (max)");
		return false;
	}
	if((min_drop>custom_drop)||(max_drop<custom_drop)||(isNaN(custom_drop)))
	{
		alert("Please enter drop between "+min_drop+"mm (min) and "+max_drop+"mm (max)");
		return false;
	}
	
	//find louvre
	var louvre=-1;
	for(i=0;i<vertical_arr.length; i++)
	{
		if(vertical_arr[i][0]==document.form_calcvertical.louvre.value)
			louvre=i;
	}
	if(louvre<0)
		return;
	
	/* old
	price=GetPrice(vertical_arr[louvre][6], custom_width, custom_drop)*1.25;
	*/
	 
    /* new */
	price=GetPrice(vertical_arr[louvre][6], custom_width, custom_drop);
	/* *** */
	
	if(price==0)
	{
		var strMaxWidth=GetMaxWidth(vertical_arr[louvre][6], custom_drop);
		alert("Maximum width for the selected drop is "+strMaxWidth+" mm");
		return;
	}
	
	/* old	
	document.form_calcvertical.price.value=formatDecimal(price*0.8, true, 2);
	document.form_calcvertical.saveprice.value=formatDecimal(price*0.2, true, 2);
	*/ 
	
	/* new */
	document.form_calcvertical.price.value=formatDecimal(price*(1-discount), true, 2);
	document.form_calcvertical.saveprice.value=formatDecimal(price*discount, true, 2);	
	/* *** */
	
	document.form_calcvertical.addtobasket.disabled=false;
	
	RRP.get();
}

function VerifyVerticalForm(form)
{
	if(form.price.value<=0)
	{
		alert('Please insert width and drop first and click the button "Calculate Price"');
		return false;
	}
	return true; 
}
function ConvertInchToMm()
	{
		var custom_inches=document.form_calcvertical.custom_inches;
		var custom_mm=document.form_calcvertical.custom_mm;
		
		custom_mm.value=formatDecimal(parseFloat(custom_inches.value.replace(",",".").replace(",","."))*25.4, false, 0);
	}
