﻿function collapseFinanceQuote(event) {
	jQuery('#finingeklapt').removeClass('finuitgeklapt').addClass('finingeklapt');
	jQuery('#finquote').hide();
	jQuery('#finingeklapt').unbind('click');
	jQuery('#finingeklapt').click(expandFinanceQuote);
	jQuery('#fintekst').unbind('click');
	jQuery('#fintekst').click(expandFinanceQuote);
	pageTracker._trackPageview("/Dynamic/FinanceQuoteCollapsed");
	globalTracker._trackPageview("/Dynamic/FinanceQuoteCollapsed");		
}
function collapseInsuranceQuote(event) {
	jQuery('#verzingeklapt').removeClass('verzuitgeklapt').addClass('verzingeklapt');
	jQuery('#verzquote').hide();
	jQuery('#verzingeklapt').unbind('click');
	jQuery('#verzingeklapt').click(expandInsuranceQuote);
	jQuery('#verztekst').unbind('click');
	jQuery('#verztekst').click(expandInsuranceQuote);
	pageTracker._trackPageview("/Dynamic/InsuranceQuoteCollapsed");
	globalTracker._trackPageview("/Dynamic/InsuranceQuoteCollapsed");	
}
function expandFinanceQuote(event) 
{
    jQuery('#finingeklapt').removeClass('finingeklapt').addClass('finuitgeklapt');
    jQuery('#finquote').slideDown(1000, function() { document.location.hash = "#financeQuoteForm"; });
    jQuery('input[id$=quoteVoornaam]').each(function() { var obj = jQuery(this); setTimeout(function() { obj.focus() }, 750); });
    jQuery('#finingeklapt').unbind('click');
    jQuery('#finingeklapt').click(collapseFinanceQuote);
    
    jQuery('#fintekst').unbind('click');
    
    var id = jQuery('input[id$=quoteFormID]').val();
    jQuery.ajax({
        type: "POST",
        url: "/Quotation/ws/quote.asmx/LogQuoteClick",
        contentType: "application/json; charset=utf-8",
        data: "{'linkID': '" + id +  "'}",
        dataType: "json"
    });
    jQuery("#sendquote").click(function(event)
    {
        jQuery("#aspnetForm").validate().settings.errorLabelContainer = jQuery("#fin_quote_error_list");
        jQuery("#aspnetForm").validate().settings.errorContainer = jQuery("#fin_quoteerrors");
        jQuery("#aspnetForm").validate().labelContainer = jQuery("#fin_quote_error_list");
        jQuery("#aspnetForm").validate().errorContext = jQuery("#fin_quote_error_list");
        jQuery("#aspnetForm").validate().containers = jQuery("#fin_quoteerrors");

        var valid = true;
        if (jQuery("#aspnetForm").validate().element('#quoteVoornaam') == false)
            valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteAchternaam') == false)
           	valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteEmail') == false)
            valid = false;
        if (jQuery("#aspnetForm").validate().element('#quotePostcode') == false)
            valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteBirthDay') == false)
            valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteHuisNr') == false)
            valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteBedrag') == false)
            valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteNettoInkomen') == false)
            valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteNettoLastenWoning') == false)
            valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteTelNr') == false)
            valid = false;
        

        if (valid)
            sendFinanceQuote(event);
    });
    jQuery('#fintekst').click(function() { document.location.hash = "#financeQuoteForm"; });
    pageTracker._trackPageview("/Dynamic/FinanceQuoteExpanded");
    globalTracker._trackPageview("/Dynamic/FinanceQuoteExpanded");
    return false;
}
function initValidation() {
    jQuery.validator.setDefaults({
        wrapper: "li",
        rules: {
			quoteVoornaam: { required: true },
			quoteAchternaam: { required: true },
            quoteEmail: { required: true, email: true },
            quotePostcode: { required: true },
            quoteHuisNr: { required: true },
            quoteVerzVoornaam: { required: true },
            quoteVerzAchternaam: { required: true },
            quoteVerzEmail: { required: true, email: true },
            quoteVerzPostcode: { required: true },
            quoteVerzHuisNr: { required: true },
            quoteBedrag: { required: true },
            quoteNettoInkomen: { required: true },
            quoteNettoInkomenPartner: { required: true },
            quoteNettoLastenWoning: { required: true },
            quoteBirthDay: { required: true },
            quoteTelNr: { required: true }
        },
        messages: {
			quoteVoornaam: "Vul uw voornaam in",
            quoteAchternaam: "Vul uw achternaam in",
            quoteEmail: { required: "Vul een emailadres in", email: "Vul een correct emailadres in" },
            quotePostcode: { required: "Vul een postcode in", maxlength: "Voer een correcte postcode in" },
            quoteHuisNr: { required: "Vul uw huisnummer in" },
            quoteVerzVoornaam: "Vul uw voornaam in",
            quoteVerzAchternaam: "Vul uw achternaam in",
            quoteVerzEmail: { required: "Vul een emailadres in", email: "Vul een correct emailadres in" },
            quoteVerzPostcode: { required: "Vul een postcode in", maxlength: "Voer een correcte postcode in" },
            quoteVerzHuisNr: { required: "Vul uw huisnummer in" },
            quoteBedrag: { required: "Vul het bedrag in wat u wilt lenen" },
            quoteBirthDay: { required: "Selecteer uw geboortedatum"},
            quoteNettoInkomen: { required: "Vul uw netto inkomen in" },
            quoteNettoInkomenPartner: { required: "Vul uw huisnummer in" },
            quoteNettoLastenWoning: { required: "Vul uw netto maandlasten voor uw woning in" },
            quoteTelNr: { required: "Vul uw telefoon nummer in" }
        }
    });
}

function expandInsuranceQuote(event) {
    jQuery('#verzingeklapt').removeClass('verzingeklapt').addClass('verzuitgeklapt');
    jQuery('#verzquote').slideDown(1000, function() { document.location.hash = "#insuranceQuoteForm";  });
    jQuery('input[id$=quoteVerzVoornaam]').each(function() { var obj = jQuery(this); setTimeout(function() { obj.focus() }, 750); });
    jQuery('#verzingeklapt').unbind('click');
    jQuery('#verzingeklapt').click(collapseInsuranceQuote);
    jQuery('#verztekst').unbind('click');
    
    var id = jQuery('input[id$=quoteVerzFormID]').val();

    jQuery.ajax({
        type: "POST",
        url: "/Quotation/ws/quote.asmx/LogQuoteClick",
        contentType: "application/json; charset=utf-8",
        data: "{'linkID': '" + id + "'}",
        dataType: "json"
    });
    jQuery("#sendverzquote").click(function(event) {
        jQuery("#aspnetForm").validate().resetForm();

        var valid = true;
        jQuery("#aspnetForm").validate().settings.errorLabelContainer = jQuery("#quote_error_list");
        jQuery("#aspnetForm").validate().settings.errorContainer = jQuery("#quoteerrors");
        jQuery("#aspnetForm").validate().labelContainer = jQuery("#quote_error_list");
        jQuery("#aspnetForm").validate().errorContext = jQuery("#quote_error_list");
        jQuery("#aspnetForm").validate().containers = jQuery("#quoteerrors");

        if (jQuery("#aspnetForm").validate().element('#quoteVerzVoornaam') == false)
        	valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteVerzAchternaam') == false)
        	valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteVerzEmail') == false)
            valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteVerzPostcode') == false)
            valid = false;
        if (jQuery("#aspnetForm").validate().element('#quoteVerzHuisNr') == false)
            valid = false;
        if (valid)
            SendInsuranceQuote(event);
    });
    jQuery('#verztekst').click(function() { document.location.hash = "#insuranceQuoteForm"; });
    pageTracker._trackPageview("/Dynamic/InsuranceQuoteExpanded");
    globalTracker._trackPageview("/Dynamic/InsuranceQuoteExpanded");
    return false;
}
function SendInsuranceQuote(event) 
{
	var voornaam = jQuery('input[id=quoteVerzVoornaam]').val();
	var achternaam = jQuery('input[id=quoteVerzAchternaam]').val();
    var email = jQuery('input[id=quoteVerzEmail]').val();
    var telnr = jQuery('input[id=quoteVerzTelNr]').val();
    var postcode = jQuery('input[id=quoteVerzPostcode]').val();
    var huisnummer = jQuery('input[id=quoteVerzHuisNr]').val();
    var vaarGebied = jQuery('select[id$=vaargebied]>option:selected').val();
    var perEmail = 'false';

    if (jQuery('input[id=perEmailVerz]:checked').size()  == 1)
        perEmail = 'true';
    var perPost = 'false'; 
    if (jQuery('input[id=perPostVerz]:checked').size() == 1)
        perPost = 'true';
    var fotoids = jQuery('input[id$=fotoid]').val();
    
    var aanbieders = new Array();
    var pos=0;
    jQuery(':checkbox[id$=sendToAdvertiserVerz]:checked').each(function() { 
        aanbieders[pos] = jQuery(this).siblings('>:hidden').val();
        ++pos;
    });
    
    jQuery.ajax({
        type: "POST",
        url: "/Quotation/ws/quote.asmx/SendInsuranceQuote",
        
        contentType: "application/json; charset=utf-8",
        data: "{'voornaamAanvrager': '" + voornaam + "','achternaamAanvrager': '" + achternaam + "','emailAanvrager': '" + email + "','telefoonNrAanvrager': '" + telnr + "','postcodeAanvrager': '" + postcode + "','huisnummerAanvrager': '" + huisnummer + "','vaargebied': '" + vaarGebied + "','aanbieder': '" + aanbieders + "','fotoid': '" + fotoids + "','perEmail': '" + perEmail + "','perPost': '" + perPost + "'}",
		dataType: "json",
		success: isSuccessInsurance,
		error: isErrorInsurance
});
    jQuery('#sendverzquote').attr('disabled', true);
	return false;
}
function sendFinanceQuote(event) {
	var voornaam = jQuery('input[id=quoteVoornaam]').val();
	var achternaam = jQuery('input[id=quoteAchternaam]').val();
    var email = jQuery('input[id=quoteEmail]').val();
    var telnr = jQuery('input[id=quoteTelNr]').val();
    var postcode = jQuery('input[id=quotePostcode]').val();
    var huisnummer = jQuery('input[id=quoteHuisNr]').val();

    var bedrag = jQuery('input[id=quoteBedrag]').val();
    var dayofbirth = jQuery('input[id=quoteBirthDay]').val();
    var nettoInkomen = jQuery('input[id=quoteNettoInkomen]').val();
    var nettoInkomenPartner = jQuery('input[id=quoteNettoInkomenPartner]').val();
    var nettoLastenWoning = jQuery('input[id=quoteNettoLastenWoning]').val();
    
    var perEmail = 'false';
    if (jQuery('input[id=perEmail]:checked').size() == 1)
        perEmail = 'true';
    var perPost = 'false';
    if (jQuery('input[id=perPost]:checked').size() == 1)
        perPost = 'true';
    var fotoids = jQuery('input[id$=fotoid]').val();

    var aanbieders = new Array();
    var pos = 0;
    jQuery(':checkbox[id$=sendToAdvertiser]:checked').each(function() {
        aanbieders[pos] = jQuery(this).siblings('>:hidden').val();
        ++pos;
    });

    
    jQuery.ajax({
        type: "POST",
        url: "/Quotation/ws/quote.asmx/SendFinanceQuote",

        contentType: "application/json; charset=utf-8",
        data: "{'voornaamAanvrager': '" + voornaam + "','achternaamAanvrager': '" + achternaam + "','emailAanvrager': '" + email + "','telefoonNrAanvrager': '" + telnr + "','postcodeAanvrager': '" + postcode + "','huisnummerAanvrager': '" + huisnummer + "','aanbieder': '" + aanbieders + "','perEmail': '" + perEmail + "','perPost': '" + perPost + "','bedrag':'" + bedrag + "','nettoinkomen':'" + nettoInkomen + "','nettoinkomenpartner':'" + nettoInkomenPartner + "','nettomaandlasten':'" + nettoInkomenPartner + "','nettowoninglasten':'" + nettoLastenWoning + "','fotoid':'" + fotoids + "','dayofbirth':'" + dayofbirth + "'}",
        dataType: "json",
        success: isSuccessFinance,
        error: isErrorFinance
    });
    jQuery('#sendquote').attr('disabled', true);    
    return false;
}

function isErrorFinance(msg, msg2, msg3) {
	replaceMessage("#finquote", "Er is iets verkeerd gegaan bij het verzenden van de aanvraag.");
}

function isErrorInsurance(msg, msg2, msg3) {
	replaceMessage("#verzquote", "Er is iets verkeerd gegaan bij het verzenden van de aanvraag.");
}

function isSuccessInsurance(msg) {
	replaceMessage("#verzquote", "Uw aanvraag is verzonden!");
	pageTracker._trackPageview("/Dynamic/InsuranceQuoteSuccess");
}

function isSuccessFinance(msg) {
	replaceMessage("#finquote", "Uw aanvraag is verzonden!");
	pageTracker._trackPageview("/Dynamic/FinanceQuoteSuccess");    
}

function replaceMessage(kader, message) {
	var inner = jQuery(kader).children("div.quote_inner");
	inner.children().remove();
	inner.addClass("verzonden");
	inner.html(message);
}

function loadQuoteForm() {
    jQuery('#finingeklapt').click(expandFinanceQuote);
    jQuery('#fintekst').click(expandFinanceQuote);
    jQuery("input[id$=quoteBirthDay]").datepicker(jQuery.extend({}, jQuery.datepicker.regional["nl"], {yearRange: '1920:2008' }));
    jQuery('#verzingeklapt').click(expandInsuranceQuote);
    jQuery('#verztekst').click(expandInsuranceQuote);
    initValidation();
}
