
var STR_LIMIT_AMOUNT	= "/[0-9]{1,11}[.|,]{0,1}[0-9]{0,2}/";
var CONST_EUR_RATE = 1.95583;



function StringValidater(str, strRegExpr)
{
	eval("var re = " + strRegExpr);
	var bRes = re.test(str);
	if(bRes)
	{//so strRegExpr a substring of the str but is it the whole string
		var strRes = str.replace(re, "");
		bRes = (strRes == "");
	}
	return bRes;
};//StringValidater

function fillValues()
{
	if (svType != '')	
	{
		for(i=0;i<document.getElementById("ddLeasingType").options.length;i++)
			if (document.getElementById("ddLeasingType").options[i].value == svType)
			{
				document.getElementById("ddLeasingType").options[i].selected = true;
				break;
			}
	}
	Changed();
	
	if (svMonths != '')	
	{
		for(i=0;i<document.getElementById("ddMonths").options.length;i++)
			if (document.getElementById("ddMonths").options[i].value == svMonths)
			{
				document.getElementById("ddMonths").options[i].selected = true;
				break;
			}
	}	
	
	if (svClient != '')	
	{
		for(i=0;i<document.getElementById("ddClient").options.length;i++)
			if (document.getElementById("ddClient").options[i].value == svClient)
			{
				document.getElementById("ddClient").options[i].selected = true;
				break;
			}
	}	

	if (svUsed != '')	
	{
		if (svUsed == '0')
		{
			document.getElementById("rbNew").checked = true;
			document.getElementById("rbUsed").checked = false;
		}
		else
		{
			document.getElementById("rbNew").checked = false;
			document.getElementById("rbUsed").checked = true;
		}
			
	}	
	
}

function Changed()
{	
	if (document.getElementById("ddLeasingType").value == "1")
	{
		for(i=1;i<=5;i++)
		{
			document.getElementById("idClient"+i).value = i;
			document.getElementById("idClient"+i).text = eval("Client"+i);
		}
	}
	else
	{
		for(i=1;i<=4;i++)
		{
			document.getElementById("idClient"+i).value = (i); //!!!
			document.getElementById("idClient"+i).text = eval("Client"+(i+1));
		}

		document.getElementById("idClient5").text = "";
		document.getElementById("idClient5").value = "";		
	}
	

	if ((document.getElementById("ddLeasingType").value == "2") || ((document.getElementById("ddLeasingType").value == "3") && (document.getElementById("rbNew").checked == true) ) )
	{
		document.getElementById("idMonths5").text = "60";
		document.getElementById("idMonths5").value = "60";
	}
	else 
	{
		document.getElementById("idMonths5").text = "";
		document.getElementById("idMonths5").value = "";
	}	
	
	
	
	
	//validate fields
	
	
	
}	
function check()
{
	
	var mas;
	
	if (document.getElementById("ddLeasingType").value == '1')
	{
		if (document.getElementById("rbNew").checked == true)
			mas = new_auto;
		else
			mas = used_auto;
	}
	
	if (document.getElementById("ddLeasingType").value == '2')
	{
		if (document.getElementById("rbNew").checked == true)
			mas = new_trucks;
		else
			mas = used_trucks;
	}
	
	if (document.getElementById("ddLeasingType").value == '3')
	{
		if (document.getElementById("rbNew").checked == true)
			mas = new_machines;
		else
			mas = used_machines;
	}
	
	
	var client = document.getElementById("ddClient").value-1;
	
	
	var bo = true;
//	alert(client);
//	alert(mas[client][MinValue]);
	if (document.getElementById("Sum").value < mas[client][MinValue])
	{
		document.getElementById("msgRange").style.display="block";
		bo = false;
	}
	else
		document.getElementById("msgRange").style.display="none";
	
	if ((document.getElementById("tbFirstPayment").value < mas[client][AdvanceMin]) ||
		document.getElementById("tbFirstPayment").value > mas[client][AdvanceMax])
	{
		document.getElementById("msgFirstPayment").style.display="block";
		bo = false;
	}
	else
		document.getElementById("msgFirstPayment").style.display="none";
	
	
	if (!StringValidater(document.getElementById("Sum").value,STR_LIMIT_AMOUNT))
	{
		document.getElementById("validateSum").style.display="block";
		bo = false;
	}
	else
		document.getElementById("validateSum").style.display="none";	
	
	
	if (!StringValidater(document.getElementById("tbFirstPayment").value,STR_LIMIT_AMOUNT))
	{
		document.getElementById("validateFirstPayment").style.display="block";
		bo = false;
	}
	else
		document.getElementById("validateFirstPayment").style.display="none";
			
	return bo;
}

function reset_input()
{
	document.getElementById("payment_value").value = "0.00";
	document.getElementById("annual_raise").value = "0.00";
	document.getElementById("EditPercentage").value = "0.00";
	document.getElementById("payment_value_withVAT").value = "0.00";
	
		
	if (document.getElementById("msgRange"))
		document.getElementById("msgRange").style.display="none";
		
	Changed();
}

function nullOptions(aMenu)
	{
		var numOptions = aMenu.options.length;
		for (i=0; LesThen(i,numOptions); i++)
		{
			aMenu.options[i] = null;
		}
			aMenu.options.length = 0;
	}
	
function ChangeLeasingMonth(sMonths,sDebtRemainder,sAdvanceVATPayment,sUsed)
{
    var sMonths_SelectedText = sMonths[sMonths.selectedIndex].text;
	var sAdvanceVAT_SelectedIndex = sAdvanceVATPayment[sAdvanceVATPayment.selectedIndex].value;
	//alert(sAdvanceVAT_SelectedIndex);
	var curr_arr;
	if (sUsed == '0')
	{
		curr_arr = arrMonthsPercentagesNew; 
	}
	else
	{
		curr_arr = arrMonthsPercentagesUsed; 
	}
	
	nullOptions(sDebtRemainder);	
	
	if(sAdvanceVATPayment[sAdvanceVATPayment.selectedIndex].text == STR_ID_YES)
	{ 
		sDebtRemainder.options[0] = new Option(0,0);
	}
	else
	{
	    //var svVAT =  sAdvanceVATPayment[sAdvanceVATPayment.selectedIndex].value;
	   // Array percentages = arrMonthsPercentages[sMonths_SelectedText][svVAT];
	    
	    for(i=0;LesThen(i, curr_arr[sMonths_SelectedText][sAdvanceVAT_SelectedIndex].length);i++)
	    {
	        sDebtRemainder.options[i] = new Option(curr_arr[sMonths_SelectedText][sAdvanceVAT_SelectedIndex][i],i);
	    }  
	   
	}
}

function fillValuesVAT(sMonths,sDebtRemainder,sAdvanceVATPayment,sUsed)
{
    var curr_arr;
	if (sUsed == '0')
	{
		curr_arr = arrMonthsPercentagesNew; 
	}
	else
	{
		curr_arr = arrMonthsPercentagesUsed; 
	}
		
	if (svAdvanceVATPayment != '')	
	{
		for(i=0;i<sAdvanceVATPayment.options.length;i++)
			if (sAdvanceVATPayment.options[i].value == svAdvanceVATPayment)
			{
				sAdvanceVATPayment.options[i].selected = true;
				break;
			}
	}
	
	var sMonths_SelectedText = sMonths[sMonths.selectedIndex].text;
	var sAdvanceVAT_SelectedIndex = sAdvanceVATPayment[sAdvanceVATPayment.selectedIndex].value;
	for(i=0;LesThen(i, curr_arr[sMonths_SelectedText][sAdvanceVAT_SelectedIndex].length);i++)
	    {
	        sDebtRemainder.options[i] = new Option(curr_arr[sMonths_SelectedText][sAdvanceVAT_SelectedIndex][i],i);
	        if(sDebtRemainder.options[i].value == svDebtRemainder) 
	            sDebtRemainder.options[i].selected = true;
	    } 
    
	if (svUsed != '')	
	{
		if (svUsed == '0')
		{
			document.getElementById("rbNew").checked = true;
			document.getElementById("rbUsed").checked = false;
		}
		else
		{
			document.getElementById("rbNew").checked = false;
			document.getElementById("rbUsed").checked = true;
		}
			
	}	
	
}

function fillAfterRBUsedChange(sMonths,sDebtRemainder,sAdvanceVATPayment,sUsed)
{
    var curr_arr;
    var curr_Months;
	if (sUsed == '0')
	{
		curr_arr = arrMonthsPercentagesNew; 
		curr_Months = arrMonthsNew;
	}
	else
	{
		curr_arr = arrMonthsPercentagesUsed; 
		curr_Months = arrMonthsUsed;
	}
		
	if (svAdvanceVATPayment != '')	
	{
		for(i=0;i<sAdvanceVATPayment.options.length;i++)
			if (sAdvanceVATPayment.options[i].value == svAdvanceVATPayment)
			{
				sAdvanceVATPayment.options[i].selected = true;
				break;
			}
	}
	
	nullOptions(sMonths);		
    for(i=0;LesThen(i, curr_Months.length);i++)
    {
        sMonths.options[i] = new Option(curr_Months[i],i);
    }  
	   	
	nullOptions(sDebtRemainder);	
	var sMonths_SelectedText = sMonths[sMonths.selectedIndex].text;
	var sAdvanceVAT_SelectedIndex = sAdvanceVATPayment[sAdvanceVATPayment.selectedIndex].value;
	for(i=0;LesThen(i, curr_arr[sMonths_SelectedText][sAdvanceVAT_SelectedIndex].length);i++)
	    {
	        sDebtRemainder.options[i] = new Option(curr_arr[sMonths_SelectedText][sAdvanceVAT_SelectedIndex][i],i);
	        if(sDebtRemainder.options[i].value == svDebtRemainder) 
	            sDebtRemainder.options[i].selected = true;
	    } 	
}

function checkVAT(sMonths,tFirstPaymentText,tPrice,sDebtRemainder,sUsed)
{
	var curr_arr_valid;
	if (sUsed == '0')
	{
		curr_arr_valid = arr_validations_new;
	}
	else
	{
		curr_arr_valid = arr_validations_used;
	}
	
	if(tPrice < curr_arr_valid[MinValue])
	{
		alert(STR_MSG_MIN_AMOUNT+ curr_arr_valid[MinValue] +" EUR");
		return false;
	}	
	
	var sMonths_SelectedText = sMonths[sMonths.selectedIndex].text;
	
	for(i=0;LesThen(i,2);i++)
	{
		if(curr_arr_valid[DownPayment][i][HighLimit] != null)
			if(curr_arr_valid[DownPayment][i][LowLimit] != null)
			{
				if(And(IsGreaterOrEqualThan(sMonths_SelectedText,curr_arr_valid[DownPayment][i][LowLimit]),IsGreaterOrEqualThan(curr_arr_valid[DownPayment][i][Highlimit],sMonths_SelectedText)))
					if(!IsGreaterOrEqualThan(tFirstPaymentText,curr_arr_valid[DownPayment][i][MinPercentage]))
					{
						alert("Downpayment should be at least "+curr_arr_valid[DownPayment][i][MinPercentage]+" %");
						return false;
					}
			}
			else
			{
				if(IsGreaterOrEqualThan(curr_arr_valid[DownPayment][i][HighLimit],sMonths_SelectedText))
					if(!IsGreaterOrEqualThan(tFirstPaymentText,curr_arr_valid[DownPayment][i][MinPercentage]))
					{
						alert("Downpayment should be at least "+curr_arr_valid[DownPayment][i][MinPercentage]+" %");
						return false;
					}
			}
		else
			if(curr_arr_valid[DownPayment][i][LowLimit] != null)
			{
				if(IsGreaterOrEqualThan(sMonths_SelectedText,curr_arr_valid[DownPayment][i][LowLimit]))
					if(!IsGreaterOrEqualThan(tFirstPaymentText,curr_arr_valid[DownPayment][i][MinPercentage]))
					{
						alert("Downpayment should be at least "+curr_arr_valid[DownPayment][i][MinPercentage]+" %");
						return false;
					}
			}
	}
	
	
		
	var diffPmt = 100 - sDebtRemainder.options[sDebtRemainder.selectedIndex].text;
	if(IsGreaterThan(tFirstPaymentText,diffPmt))
	{
		alert(STR_MSG_MAX_DOWNPAYMENT + diffPmt + "%");
		return false;
	}
		
	
	
	if(sMonths_SelectedText <= '36')
	{
		if(tFirstPaymentText < 5)
		{
			alert(STR_MSG_MIN_DOWNPAYMENT);
			return false;
		}
	}
	else
	{
		if(tFirstPaymentText < 10)
		{
			alert(STR_MSG_MIN_DOWNPAYMENT);
			return false;
		}
	}
	return true;
	
	var bo = true;
}
