/**********************/
/* Kalkulator splatek */
/**********************/

var ajax_url = "/cmsapi.php";

/* funkce pro vypocet */
function vypoctiSplatky() {
  
	// get form values
	if (!document.getElementById('price').value.match('^[0-9]{1,8}$')) {
		alert('Neplatná cena.');
		return false;
	}
	_price = parseInt(document.getElementById('price').value);
	
	_loanLength = parseInt(document.getElementById('loanLength').options[document.getElementById('loanLength').selectedIndex].value);
	
	if (!document.getElementById('directPayment').value.match('^[0-9]{1,8}$')) {
		alert('Neplatná přímá platba.');
		return false;
	}
	_directPayment = parseInt(document.getElementById('directPayment').value);
	
	_insurance = document.getElementById('insurance').selectedIndex;

	// reset result
	document.getElementById('percentageRate').value = '';
	document.getElementById('monthlyInstallment').value = '';
	document.getElementById('date1').innerHTML = '';
	document.getElementById('date2').innerHTML = '';
	document.getElementById('date3').innerHTML = '';
	
	if (_price < _directPayment) {
		alert('Výše přímé platby musí být menší než cena zboží. Zároveň minimální výše půjčky je 3000 Kč.');
		return;
	}
	
	if (_price < 3000) {
		alert('Půjčka musí být minimálně 3000 Kč.');
		return false;
	}	

	
	// 20.000 - 50.000 check 10% _directPayment
	if (_price > 19999 && _price < 50000) {
		directRequire = Math.round(_price / 100 * 10);
		if (_directPayment < directRequire) {
			alert('Přímá platba musí být minimálně 10% z ceny zboží.');
			return false;
		}
	}
	// >50.000 check 20% _directPayment
	if (_price > 49999) {
		directRequire = Math.round(_price / 100 * 20);
		if (_directPayment < directRequire) {
			alert('Přímá platba musí být minimálně 20% z ceny zboží.');
			return false;
		}
	}
	
	loan = _price - _directPayment;
	
	if (loan < 0) {
		alert('Výše přímé platby musí být menší než cena zboží. Zároveň minimální výše pujčky je 3000 Kč.');
		return;
	}
	
	
	if (loan < 3000) {
		alert('Půjčka musí být minimálně 3000 Kč.');
		return false;
	}	
	
	getRpsn(loan, _loanLength, _insurance);
	 
	return false;
}


function isArray(obj) {
	return true;
   if (obj.constructor.toString().indexOf("Array") == -1)
      return false;
   else
      return true;
}

function setRpsn(rpsn) {
	
	if (isArray(rpsn)) {
		document.getElementById('percentageRate').value = rpsn["RPSN"] + ' %';
		document.getElementById('monthlyInstallment').value = rpsn["instalment"] + ' Kč';
		document.getElementById('date1').innerHTML = rpsn["loan_start"];
		document.getElementById('date2').innerHTML = rpsn["instalment_dates"][0];
		document.getElementById('date3').innerHTML = 'k 15. dni v měsíci';
	}
	else {
		document.getElementById('percentageRate').value = '';
		document.getElementById('monthlyInstallment').value = '';
		document.getElementById('date1').innerHTML = '';
		document.getElementById('date2').innerHTML = '';
		document.getElementById('date3').innerHTML = '';
		alert('Splátky nelze spočítat.');
	}
}


function getRpsn(loan, _loanLength, _insurance) {
	$.ajax({                            
		type: "GET",
		url: ajax_url,
		data: {'module' : 'tesco', 'method' : 'rpsnLoan', 'loan' : loan, 'length' : _loanLength, 'insurance' : _insurance, 'random' : Number(new Date())},
		dataType: 'json',
		success: function(page_data_json) { setRpsn(page_data_json); }
	});
}
