var d = new Date();
var min_year = d.getFullYear() - 30
var uldpind_min = 80
var uldpind_max = 249


$(function(){

	$("#send-register").click(function(){
		$('input[name=register-hoone-liik]').val( $('input[name=hoone-liik]').val() );
		$('input[name=register-hoone-kandekonstruktsioon]').val( $('input[name=hoone-kandekonstruktsioon]').val() );
		$('input[name=register-hooneehitus]').val( $('input[name=hooneehitus]').val() );
		$('input[name=register-uldpind]').val( $('input[name=uldpind]').val() );
		$('input[name=register-koduse-vara]').val( $('input[name=koduse-vara]').val() );
		$('input[name=register-kindlustusvariant]').val( $('input[name=kindlustusvariant]').val() );
		$('input[name=register-omavastutus]').val( $('select[name=omavastutus]').val() );
		$('input[name=register-calculator_result]').val( $('#calculator_result').text() );
		$('#calculator-register').submit();
		return false;
	});
	
	$('#uldpind').keyup(function(){
		calculate_huvitispiir(this)
	})

	$("#calculator a.info").tooltip({ 
		bodyHandler: function() {
			return $($(this).attr("href")).html(); 
		},
		showURL: false 
	});
	
	$.validator.messages = {
		required: "Kohustuslik väli"
	}

	$("#calculator-register").validate({
		rules: {
			email: {
				required: true,
				email: true
			},
			telefon: {
				required: true
			}
		}
	})

	$('#telefon').blur(function(){
		if(!$(this).valid())
			return

		$("#email").rules('remove', 'required')
		$("#email").valid()
	})

	$('#email').blur(function(){
		if(!$(this).valid())
			return

		$("telefon").rules('remove', 'required')
		$("#email").valid()
	})

	$("#calculator-form").validate({
		//errorLabelContainer: $("div#error-container"),

		submitHandler: function() {
			calculate()
		},
		rules: {
			hooneehitus: {
				min: min_year
			},
			uldpind: {
				min: 80,
				max: 249
			}
		},
		messages: {
			hooneehitus: {
				min: "Valitud ehitus- või renoveerimisaastaga hoone kindlustamiseks palun pöörduge otse Seesami müügiesinduste poole"
			},
			uldpind: {
				min: "Valitud üldpinnaga hoone kindlustamiseks palun pöörduge otse Seesami müügiesinduste poole",
				max: "Valitud üldpinnaga hoone kindlustamiseks palun pöörduge otse Seesami müügiesinduste poole"
			}
		}
	})

	$('input[name=hoone-liik]').click(function(){
		$("#uldpind").rules('remove', 'min max')

		if($(this).val() == 'house')
		{
			$("#uldpind").rules("add", {
				min: 80,
				max: 249
			})
		}
		if($(this).val() == 'apartment')
		{
			$("#uldpind").rules("add", {
				min: 30,
				max: 99
			})
		}
		if($("#uldpind").val() != '')
		{
			$("#uldpind").valid()
			calculate_huvitispiir($('#uldpind'))
		}
	})
})

/* House */

/* pakettkindlustus	koguriskikindlustus */
/* kivi	sega		kivi	sega */
var pindala_house = [
	/*80-89*/ [11.75, 13.98, 16.16, 19.22],
	/*90-99*/ [11.59, 13.66, 15.93, 18.78],
	/*100-109*/ [11.42, 13.60, 15.71, 18.69],
	/*110-119*/ [11.48, 13.56, 15.79, 18.65],
	/*120-129*/ [11.32, 13.52, 15.56, 18.60],
	/*130-139*/ [11.15, 13.36, 15.33, 18.36],
	/*140-149*/ [10.98, 13.19, 15.10, 18.13],
	/*150-159*/ [10.92, 13.02, 15.02, 17.90],
	/*160-169*/ [10.77, 12.85, 14.81, 17.67],
	/*170-179*/ [10.52, 12.80, 14.46, 17.61],
	/*180-189*/ [10.26, 12.64, 14.11, 17.37],
	/*190-199*/ [10.01, 12.47, 13.76, 17.14],
	/*200-224*/ [9.75, 12.21, 13.41, 16.79],
	/*225-249*/ [9.50, 11.79, 13.06, 16.21]
]

var vanus_house = [
	/*Vanus Kordaja */
	/*till 5*/ 0.90,
	/*6 - 10*/ 0.95,
	/*11 - 20*/ 1.00,
	/*21 - 30*/ 1.10
]

var omavastutus_house = [
	/*Omavastutus Kordaja*/
	/*1500 kr*/ 1.20,
	/*3000 kr*/ 1.00,
	/*7500 kr*/ 0.95
]


var pindala_house_property = [
	/*pakettkindlustus	koguriskikindlustus*/
	/*kivi sega			kivi sega*/
	/*80-89*/ [5.71, 5.77, 7.85, 7.94],
	/*90-99*/ [5.29, 5.35, 7.27, 7.35],
	/*100-109*/ [4.87, 4.92, 6.69, 6.77],
	/*110-119*/ [4.83, 4.88, 6.64, 6.71],
	/*120-129*/ [4.79, 4.85, 6.59, 6.66],
	/*130-139*/ [4.75, 4.81, 6.54, 6.61],
	/*140-149*/ [4.72, 4.77, 6.49, 6.56],
	/*150-159*/ [4.68, 4.73, 6.44, 6.51],
	/*160-169*/ [4.46, 4.50, 6.13, 6.19],
	/*170-179*/ [4.23, 4.28, 5.82, 5.88],
	/*180-189*/ [4.01, 4.05, 5.51, 5.57],
	/*190-199*/ [3.78, 3.82, 5.20, 5.26],
	/*200-224*/ [3.75, 3.85, 5.16, 5.30],
	/*225-249*/ [3.64, 3.79, 5.01, 5.21]
]

var vanus_house_property = [
	/*Vanus Kordaja*/
	/*till 5*/ 0.90,
	/*6 - 10*/ 0.95,
	/*11 - 20*/ 1.00,
	/*21 - 30*/ 1.10
]

var omavastutus_house_property = [
	/*Omavastutus Kordaja*/
	/*1 500 kr*/ 1.30,
	/*3 000 kr*/ 1.00,
	/*7 500 kr*/ 0.90
]

var huvitispiir_house = [
	/*80-89*/ 280000,
	/*90-99*/ 315000,
	/*100-109*/ 350000,
	/*110-119*/ 385000,
	/*120-129*/ 420000,
	/*130-139*/ 455000,
	/*140-149*/ 490000,
	/*150-159*/ 525000,
	/*160-169*/ 560000,
	/*170-179*/ 595000,
	/*180-189*/ 630000,
	/*190-199*/ 665000,
	/*200-224*/ 700000,
	/*225-249*/ 787500
]

/* Apartment */
var pindala_apartment = [
	/*pakettkindlustus	koguriskikindlustus*/
	/*kivi sega			kivi sega*/
	/*30-39*/ [14.45, 19.89, 17.00, 23.40],
	/*40-49*/ [10.84, 14.92, 12.75, 17.55],
	/*50-59*/ [9.79, 12.73, 11.52, 14.98],
	/*60-69*/ [9.78, 12.57, 11.50, 14.79],
	/*70-79*/ [9.76, 12.41, 11.48, 14.60],
	/*80-89*/ [9.74, 12.25, 11.46, 14.41],
	/*90-99*/ [9.72, 11.82, 11.43, 13.91]
]

var vanus_apartment = [
	/*Vanus Kordaja*/
	/*till 5*/ 0.90,
	/*6 - 10*/ 0.95,
	/*11 - 20*/ 1.00,
	/*21 - 30*/ 1.10
]

var omavastutus_apartment = [
	/*Omavastutus Kordaja*/
	/*1500 kr*/ 1.20,
	/*3000 kr*/ 1.00,
	/*7500 kr*/ 0.95
]


var pindala_apartment_property = [
	/*pakettkindlustus	koguriskikindlustus*/
	/*kivi sega			kivi sega*/
	/*30-39*/ [15.30, 12.16, 18.00, 14.30],
	/*40-49*/ [11.48, 11.60, 13.50, 13.65],
	/*50-59*/ [7.65, 8.45, 9.00, 9.95],
	/*60-69*/ [7.40, 8.36, 8.70, 9.84],
	/*70-79*/ [7.14, 8.26, 8.40, 9.72],
	/*80-89*/ [6.89, 8.23, 8.10, 9.69],
	/*90-99*/ [6.63, 8.10, 7.80, 9.53]
]

var vanus_apartment_property = [
	/*Vanus Kordaja*/
	/*till 5*/ 0.90,
	/*6 - 10*/ 0.95,
	/*11 - 20*/ 1.00,
	/*21 - 30*/ 1.10
]

var omavastutus_apartment_property = [
	/*Omavastutus Kordaja*/
	/*1 500 kr*/ 1.30,
	/*3 000 kr*/ 1.00,
	/*7 500 kr*/ 0.90
]

var huvitispiir_apartment = [
	/*30-39*/ 150000,
	/*40-49*/ 200000,
	/*50-59*/ 250000,
	/*60-69*/ 300000,
	/*70-79*/ 350000,
	/*80-89*/ 400000,
	/*90-99*/ 450000
]

function calculate(){
	form_values = $('#calculator-form').serializeArray();

	property_type = form_values[0].value;
	
	kivi_sega = Number(form_values[1].value);

	vanus = Number(form_values[2].value);
	d = new Date();
	vanus_age = d.getFullYear() - vanus

	area = form_values[3].value;

	risk = form_values[5].value;

	kivi_sega_index = kivi_sega
	if(risk == 1)
		kivi_sega_index = kivi_sega + 2
	

	omavastutus = form_values[6].value;

	omavastutus_index = omavastutus;

	
	if(property_type == 'house')
	{
		pindala_value = area

		if(pindala_value >= 80 && pindala_value <= 89)
			pindala_table_row = 0
		if(pindala_value >= 90 && pindala_value <= 99)
			pindala_table_row = 1
		if(pindala_value >= 100 && pindala_value <= 109)
			pindala_table_row = 2
		if(pindala_value >= 110 && pindala_value <= 119)
			pindala_table_row = 3
		if(pindala_value >= 120 && pindala_value <= 129)
			pindala_table_row = 4
		if(pindala_value >= 130 && pindala_value <= 139)
			pindala_table_row = 5
		if(pindala_value >= 140 && pindala_value <= 149)
			pindala_table_row = 6
		if(pindala_value >= 150 && pindala_value <= 159)
			pindala_table_row = 7
		if(pindala_value >= 160 && pindala_value <= 169)
			pindala_table_row = 8
		if(pindala_value >= 170 && pindala_value <= 179)
			pindala_table_row = 9
		if(pindala_value >= 180 && pindala_value <= 189)
			pindala_table_row = 10
		if(pindala_value >= 190 && pindala_value <= 199)
			pindala_table_row = 11
		if(pindala_value >= 200 && pindala_value <= 224)
			pindala_table_row = 12
		if(pindala_value >= 225 && pindala_value <= 249)
			pindala_table_row = 13

		pindala_table = pindala_house[pindala_table_row][kivi_sega_index]
		
		vanus_index = 0
		if(vanus_age >= 6 && vanus_age <= 10)
			vanus_index = 1
		if(vanus_age >= 11 && vanus_age <= 20)
			vanus_index = 2
		if(vanus_age >= 21 && vanus_age <= 30)
			vanus_index = 3

		vanus_table = vanus_house[vanus_index]

		omavastutus_table = omavastutus_house[omavastutus_index]

		house_fee = pindala_value * pindala_table * vanus_table * omavastutus_table
		
		/* Property */
		pindala_table = pindala_house_property[pindala_table_row][kivi_sega_index]

		vanus_table = vanus_house_property[vanus_index]

		omavastutus_table = omavastutus_house_property[omavastutus_index]

		property_fee = pindala_value * pindala_table * vanus_table * omavastutus_table

		monthly_insurance_fee = (house_fee + property_fee) / 12
		
		huvitispiir_house_index = pindala_table_row
		//$('#koduse-vara').val(huvitispiir_house[huvitispiir_house_index])
		var koduse_vara = Number($('#uldpind').val()) * 3500;
		$('#koduse-vara').val(koduse_vara)
		$('#koduse-vara').siblings('label.error').show()
	}

	if(property_type == 'apartment')
	{
		pindala_value = area

		if(pindala_value >= 30 && pindala_value <= 39)
			pindala_table_row = 0
		if(pindala_value >= 40 && pindala_value <= 49)
			pindala_table_row = 1
		if(pindala_value >= 50 && pindala_value <= 59)
			pindala_table_row = 2
		if(pindala_value >= 60 && pindala_value <= 69)
			pindala_table_row = 3
		if(pindala_value >= 70 && pindala_value <= 79)
			pindala_table_row = 4
		if(pindala_value >= 80 && pindala_value <= 89)
			pindala_table_row = 5
		if(pindala_value >= 90 && pindala_value <= 99)
			pindala_table_row = 6

		pindala_table = pindala_apartment[pindala_table_row][kivi_sega_index]
		
		vanus_index = 0
		if(vanus_age >= 6 && vanus_age <= 10)
			vanus_index = 1
		if(vanus_age >= 11 && vanus_age <= 20)
			vanus_index = 2
		if(vanus_age >= 21 && vanus_age <= 30)
			vanus_index = 3

		vanus_table = vanus_apartment_property[vanus_index]

		omavastutus_table = omavastutus_apartment[omavastutus_index]

		apartment_fee = pindala_value * pindala_table * vanus_table * omavastutus_table
		
		/* Property */
		pindala_table = pindala_apartment_property[pindala_table_row][kivi_sega_index]

		vanus_table = vanus_apartment_property[vanus_index]

		omavastutus_table = omavastutus_apartment_property[omavastutus_index]

		property_fee = pindala_value * pindala_table * vanus_table * omavastutus_table

		monthly_insurance_fee = (apartment_fee + property_fee) / 12

		huvitispiir_apartment_index = pindala_table_row
		//$('#koduse-vara').val(huvitispiir_apartment[huvitispiir_apartment_index])
		var koduse_vara = Number($('#uldpind').val()) * 5000;
		$('#koduse-vara').val(koduse_vara)
		$('#koduse-vara').siblings('label.error').show()
	}
	
	if (parseInt($.cookie('seesamcalc')) > 10) $('#calculator .button').hide();
	var cookiedate = new Date();
	var cookiecount = 0;
  cookiedate.setTime(cookiedate.getTime() + (365 * 24 * 60 * 60 * 1000));
	if ($.cookie('seesamcalc')) cookiecount = parseInt($.cookie('seesamcalc'))+1;
	else cookiecount = 1;
	$.cookie('seesamcalc', cookiecount, { path: '/', expires: cookiedate });	
	
	$('#calculator_result').text(Math.round(monthly_insurance_fee*100)/100 + ' EEK')
	$('.calculator-after').show()

	return false;
}

function calculate_huvitispiir(elem)
{
	if(!$("#uldpind, #hoone-liik-maja, #hoone-liik-korter").valid())
		return
	
	form_values = $('#calculator-form').serializeArray();

	
	property_type = form_values[0].value;

	if(elem)
		area = $(elem).val()
	else
		area = $('#uldpind').val()
	
	pindala_value = area

	if(property_type == 'house')
	{

		if(pindala_value >= 80 && pindala_value <= 89)
			pindala_table_row = 0
		if(pindala_value >= 90 && pindala_value <= 99)
			pindala_table_row = 1
		if(pindala_value >= 100 && pindala_value <= 109)
			pindala_table_row = 2
		if(pindala_value >= 110 && pindala_value <= 119)
			pindala_table_row = 3
		if(pindala_value >= 120 && pindala_value <= 129)
			pindala_table_row = 4
		if(pindala_value >= 130 && pindala_value <= 139)
			pindala_table_row = 5
		if(pindala_value >= 140 && pindala_value <= 149)
			pindala_table_row = 6
		if(pindala_value >= 150 && pindala_value <= 159)
			pindala_table_row = 7
		if(pindala_value >= 160 && pindala_value <= 169)
			pindala_table_row = 8
		if(pindala_value >= 170 && pindala_value <= 179)

			pindala_table_row = 9
		if(pindala_value >= 180 && pindala_value <= 189)
			pindala_table_row = 10
		if(pindala_value >= 190 && pindala_value <= 199)
			pindala_table_row = 11
		if(pindala_value >= 200 && pindala_value <= 224)
			pindala_table_row = 12
		if(pindala_value >= 225 && pindala_value <= 249)
			pindala_table_row = 13
		
		huvitispiir_house_index = pindala_table_row
		//$('#koduse-vara').val(huvitispiir_house[huvitispiir_house_index])
		var koduse_vara = Number($('#uldpind').val()) * 3500;
		$('#koduse-vara').val(koduse_vara)
		$('#koduse-vara').siblings('label.error').show()
	}
	
	if(property_type == 'apartment')
	{
		if(pindala_value >= 30 && pindala_value <= 39)
			pindala_table_row = 0
		if(pindala_value >= 40 && pindala_value <= 49)
			pindala_table_row = 1
		if(pindala_value >= 50 && pindala_value <= 59)
			pindala_table_row = 2
		if(pindala_value >= 60 && pindala_value <= 69)
			pindala_table_row = 3
		if(pindala_value >= 70 && pindala_value <= 79)
			pindala_table_row = 4
		if(pindala_value >= 80 && pindala_value <= 89)
			pindala_table_row = 5
		if(pindala_value >= 90 && pindala_value <= 99)
			pindala_table_row = 6

		huvitispiir_apartment_index = pindala_table_row
		//$('#koduse-vara').val(huvitispiir_apartment[huvitispiir_apartment_index])
		var koduse_vara = Number($('#uldpind').val()) * 5000;
		$('#koduse-vara').val(koduse_vara)
		$('#koduse-vara').siblings('label.error').show()
	}
	
	$('#koduse-vara').siblings('label.error').show()
}