$(function() {
    Cufon.now();
    $('.input-field').change(function(){
        if ($('#tabs-rca:visible').length)
        {
            $('#tabs-rca').hide();
            $('#cotatie-noua').show();
            $('#all_sas').hide();
        }
    });

    if($('#send_contact_form').length)
    {
        $("#send_contact_form").validate(
        {
            rules: {
                contact_name:
                {
                    required: true
                }
                ,
                contact_prename:
                {
                    required: true
                }
                ,
                contact_email:
                {
                    required: true
                    ,
                    email:true
                }
                ,
                contact_tel:
                {
                    digits: true
                    ,
                    minlength: 10
                    ,
                    maxlength: 10
                }
                ,
                contact_mesaj:
                {
                    required: function(element) {
                        return ! $("#contact_mesaj").val().length;
                    }
                }
            }
            ,
            event : 'blur'
        });

        $('.tinymce').tinymce(
        {
            script_url : settings.base_url+'system/application/assets/js/tiny_mce/tiny_mce.js'
            ,
            mode : "textareas"
            ,
            theme : "simple"
        });
    }
	
    if ($('#save_pages_rca_form').length)
    {
        $("#tabs-rca").tabs();
        $('#tip_masina').change(function()
        {
            switch ($(this).val())
            {
                case '6':
                    // alte
                    $('#row-masa-maxima').show();

                    $('#row-cilindre').hide();
                    $('#row-locuri').hide();
                    $('#row-putere').show();
                    break;
                case '1':
                    // autoturisme
                    $('#row-cilindre').show();

                    $('#row-masa-maxima').hide();
                    $('#row-locuri').hide();
                    $('#row-putere').show();
                    break;
                case '2':
                    // auto transport persoane
                    $('#row-locuri').show();

                    $('#row-masa-maxima').hide();
                    $('#row-cilindre').hide();
                    $('#row-putere').show();
                    break;
                case '3':
                    // motociclete
                    $('#row-cilindre').show();

                    $('#row-masa-maxima').hide();
                    $('#row-locuri').hide();
                    $('#row-putere').show();
                    break;
                case '5':
                    $('#row-masa-maxima').show();

                    $('#row-locuri').hide();
                    $('#row-cilindre').hide();
                    $('#row-putere').hide();
                    break;
                case '4':
                    $('#row-putere').show();

                    $('#row-locuri').hide();
                    $('#row-cilindre').hide();
                    $('#row-masa-maxima').hide();
                    break;
            }
        });
		
        if ($('#id_page').val() != 0)
        {
            $('#tip_masina').trigger('change');
            get_cotatie_rca();
        } else {
            $('#tr-cnp').show();
            $('#tr-cui').hide();
        }

        //autocomplete marca auto
        $("#marca_nume").autocomplete(
        {
            minLength: 1,
            source: function(req, add)
            {
                $.ajax({
                    url: settings.base_url+"pages_ajax/autocomplete_marca",
                    dataType: 'json',
                    type: 'POST',
                    data: req,
                    success: function(data){
                        if(data.response =='true'){
                            add(data.message);
                        }
                    }
                });
            },
            select: function(event, ui)
            {
                $('#marca').val(ui.item.id);
            }
        });
			
        //autocomplete judet
        $("#judet_nume").autocomplete(
        {
            minLength: 1,
            source: function(req, add)
            {
                $.ajax({
                    url: settings.base_url+"pages_ajax/autocomplete_judet",
                    dataType: 'json',
                    type: 'POST',
                    data: req,
                    success: function(data){
                        if(data.response =='true'){
                            add(data.message);
                        }
                    }
                });
            },
            select: function(event, ui)
            {
                $('#judet_id').val(ui.item.id);

                $("#localitate_nume").val('');
                $('#localitate_id').val(0);
            }
        });
			
        // Autocomplete localitate
        $("#localitate_nume").autocomplete(
        {
            minLength: 3,
            source: function(req, add)
            {
                req.judet = $('#judet_id').val();
                $.ajax({
                    url: settings.base_url+"pages_ajax/autocomplete_localitate",
                    dataType: 'json',
                    type: 'POST',
                    data: req,
                    success: function(data){
                        if(data.response =='true'){
                            add(data.message);
                        }
                    }
                });
            },
            select: function(event, ui){
                $('#localitate_id').val(ui.item.id);
            }
        });
			
        //Button modifica
        $('.section_modify').click(function(){
            $(this).next().next().show('slow');
            $(this).next().next().next().hide();	// rezultat
            $(this).hide();
        });

        //Tip persoana section
        /*
		$("input[name='tip_persoana']").click(function(){
			$('#div_date_vehicol').show('slow');
			$('#div_tip_persoana .tableGrid').hide('fast');
			$('#div_tip_persoana .section_modify').show();
			//$('#home-text-rca').hide();
			//$('#tabs-rca').show();
			//$('#all_sas').css('display','block');
			//get_cotatie_rca(0);
		});*/
			
        $("#save_pages_rca_form").validate(
        {
            rules:
            {
                serie_sasiu:
                {
                    required: true,
                    maxlength:17,
                    minlength:6
                },
                data_intrarii:
                {
                    required: true,
                    dateISO: true
                },
                cnp:
                {
                    digits:true,
                    maxlength:13,
                    required: "#tr-cnp:visible",
                    cnp:($('#tr-cnp:visible').length > 0) ? true : false
                },
                cui:
                {
                    is_cui:($('#tr-cui:visible').length > 0) ? true : false,
                    required: "#tr-cui:visible"
                },
                judet_id:
                {
                    required: true
                },
                localitate_id:
                {
                    required: true
                },
                marca:
                {
                    required: true
                },
                putere:
                {
                    digits: true
                },
                masa_maxima:
                {
                    digits: true
                }
            },
            event : 'blur',
            errorClass: "error"
        });
    } // if ($('#save_pages_rca_form').length)
    $('#cui').keyup(function(element){
        if(isNaN($('#cui').val())){
            $('#cui').val('');
        }
    });
    $('#btn_send_contact').click(function() {
        $('#send_contact_error').hide();
        $('#send_contact_succes').hide();
		
        if ( ! $("#send_contact_form").valid()) return false;
            
        $.ajax(
        {
            type: "POST"
            ,
            url: settings.base_url + 'pages_ajax/send_form'
            ,
            data: {
                nume: $('#contact_name').val()
                ,
                prenume: $('#contact_prename').val()
                ,
                mesaj: $('#contact_mesaj').val()
                ,
                email: $('#contact_email').val()
                ,
                tel: $('#contact_tel').val()

            }
            ,
            cache:false
            ,
            dataType: 'json'
            ,
            success: function(response)
            {
                if (response.status)
                {
                    $('#send_contact_succes').show();
                    $('#send_contact_succes_msg').html(response.message);
					
                    $("#send_contact_form :input").not(":button, :submit, :reset, :hidden").each( function() {
                        this.value = this.defaultValue;
                    });
                } else {
                    $('#send_contact_error').show();
                    $('#send_contact_error_msg').html(response.message);
                }
            }
            ,
            error:function()
            {
                $('#send_contact_error').show();
                $('#send_contact_error_msg').html('Eroare la trimiterea mesajului.');
            }
        });
    });
	
    //page rca
    $("#dialog-all-sas").dialog({
        autoOpen: false,
        height: 300,
        width: 450,
        buttons: {
            'Trimite': function() {
                if (!$("#form_fara_oferta").valid())
                    return false;
                if (!$("#save_pages_rca_form").valid())
                    return false;
                var parent_form_data = $($('#save_pages_rca_form')).serializeArray();
                var child_form_data = $($('#form_fara_oferta')).serializeArray();
                $.ajax({
                    url: settings.base_url+"pages_ajax/fara_oferta_mail",
                    dataType: 'json',
                    type: 'POST',
                    data:{
                        parent_form_data:$.toJSON(parent_form_data),
                        child_form_data:$.toJSON(child_form_data)
                    },
                    success: function(response){
                        if (response.status)
                        {
                            alert(response.message);
                        }
                        else
                        {
                            alert(response.message);
                        }
                    },
                    complete:function(){
                        $("#dialog-all-sas").dialog('close');
                    },
                    error:function(){
                        alert('Mesajul nu a fost trimis.');
                    }
                });

            },
            Renunta: function() {
                $(this).dialog('close');
            }
        },
        focus:function(){
            $("#form_fara_oferta").validate({
                rules: {
                    fara_oferta_nume: {
                        required: true
                    },
                    fara_oferta_email: {
                        required: true,
                        email:true
                    },
                    fara_oferta_telefon: {
                        required: true
                    }
                },
                event : 'blur'
            });
        }

    });
    
    $('#info-personal').click(function(){
        $.ajax({
            url: settings.base_url+"pages_ajax/informatii_personale",
            dataType: 'html',
            type: 'POST',
            success: function(data){

                $('#dialog-info-personal').html(data);
            },
            complete:function(){
                $( "#dialog-info-personal" ).dialog( {
                    autoOpen: false,
                    height: 400,
                    width: 750,
                    modal: true,
                    buttons: {
                        'Ok': function(){
                            $(this).dialog("close");
                        }
                        
                    }
                });
                $('#dialog-info-personal').dialog('open');
            }
        });
    });
    
    $('#all_sas').click(function(){
        $.ajax({
            url: settings.base_url+"pages_ajax/fara_oferta",
            dataType: 'html',
            type: 'POST',
            success: function(data){
                $('#dialog-all-sas').html(data);
            },
            complete:function(){

                $('#dialog-all-sas').dialog('open');
            }
        });
    });
    
    var fd = document.getElementById('save_pages_rca_form').elements;
    if($.cookie('tip_persoana') != "" && $.cookie('tip_persoana') != null){
        for(var i= 0; i< fd.length; i++){
            if($("select[name*='"+fd[i].name+"']").size() > 0){
                $("select[name*='"+fd[i].name+"']").val($.cookie(fd[i].name));
                $("select[name*='"+fd[i].name+"']").trigger('change');
            }else if($("input[name*='"+fd[i].name+"']").size() > 0 && (fd[i].type == 'text' || fd[i].type == 'hidden')){
                $("input[name*='"+fd[i].name+"']").val($.cookie(fd[i].name));
            }else if( fd[i].type == 'checkbox' || fd[i].type == 'radio'){
                $("input[name*='"+fd[i].name+"']").each(function(){
                    if($(this).val() == $.cookie(fd[i].name)){
                        $(this).attr('checked', 'checked');
                        $(this).trigger('click');
                    }
                });
            }
        }
    }

});
function check_date_vehicol()
{
    var ok = true;
    if ($('#stare').val() == 0)
        ok = false;
    if ($('#tip_masina').val() == 0)
        ok = false;
    /*if ($('#cilindre').val() == 0)
        ok = false;*/
    if ((!$('#marca').val()) || (!$('#marca').valid()))
        ok = false;
    if ((!$('#serie_sasiu').val().length) || (!$('#serie_sasiu').valid()))
        ok = false;

    if (ok)
    {
        var tmp = [];
		
        tmp.push('Vehiculul este: <b>' + $('#div_date_vehicol #stare option:selected').text() + '</b>');
        tmp.push('Tip: <b>' + $('#div_date_vehicol #tip_masina option:selected').text() + '</b>');
        if($('#div_date_vehicol #row-cilindre:visible').length > 0) tmp.push('Capacitate cilindrica: <b>' + $('#div_date_vehicol #cilindre option:selected').text() + '</b>');
        if($('#div_date_vehicol #row-putere:visible').length > 0) tmp.push('Putere motor: <b>' + $('#div_date_vehicol #putere').val().toUpperCase() + ' kw</b>');
        if($('#div_date_vehicol #row-locuri:visible').length > 0) tmp.push('Numar locuri: <b>' + $('#div_date_vehicol #nr_locuri').val().toUpperCase() + '</b>');
        if($('#div_date_vehicol #row-masa-maxima:visible').length > 0) tmp.push('Masa maxima autorizata: <b>' + $('#div_date_vehicol #masa_maxima').val().toUpperCase() + '</b>');
        tmp.push('Marca: <b>' + $('#div_date_vehicol #marca_nume').val().toUpperCase() + '</b>');
        tmp.push('Serie sasiu: <b>' + $('#div_date_vehicol #serie_sasiu').val().toUpperCase() + '</b>');
		
        $('#div_date_vehicol_rezultat').html(tmp.join("<br>")).show();
		
        $('#div_data_intrarii').show('slow');
        $('#div_data_intrarii .tableGrid').show('slow');
        $('#div_date_vehicol .tableGrid').hide('fast');
        $('#div_date_vehicol .section_modify').show();
    //get_cotatie_rca(0);
    }
    else
    {
        $('#div_data_intrarii').hide('slow');
        $('#div_data_intrarii .section_modify').hide();
		
        $('#div_bonus_malus').hide('slow');
        $('#div_bonus_malus .section_modify').hide();
		
        $('#div_utilizare').hide('slow');
        $('#div_utilizare .section_modify').hide();
    }
}

function check_data_intrarii()
{
    var ok = true;
    if ((!$('#data_intrarii').val().length) || (!$('#data_intrarii').valid()))
        ok = false;
    var checked = false;
    $("input[name='valabilitate']").each(function(){
        if ($(this).attr('checked'))
            checked = true;
    });
    if (!checked)
        ok = false;

    if (ok)
    {
        var tmp = [];
		
        tmp.push('Data intrarii in vigoare: <b>' + $('#div_data_intrarii #data_intrarii').val() + '</b>');
        $('#div_data_intrarii input[type=radio]:checked').each(function(obj)
        {
            id = $(this).attr('id');
			
            selectat = $('#div_data_intrarii label[for=' + id + ']').html();
            tmp.push('Valabilitate: <b>' + selectat + '<b>');
        });
					
        $('#div_data_intrarii_rezultat').html(tmp.join("<br>")).show();
		
        if ($('#tip_persoana_juridica').attr('checked') || $('#tip_persoana_leasing_juridica').attr('checked'))
        {
            $('#div_date_utilizator').show('slow');
            $('#div_date_utilizator .tableGrid').show('slow');
        }
        else
        {
            $('#div_bonus_malus').show('slow');
            $('#div_bonus_malus .tableGrid').show('slow');
        }
        $('#div_data_intrarii .tableGrid').hide('fast');
        $('#div_data_intrarii .section_modify').show();
    //get_cotatie_rca(0);
    }
    else
    {
        $('#div_bonus_malus').hide('slow');
        $('#div_bonus_malus .section_modify').hide();
		
        $('#div_utilizare').hide('slow');
        $('#div_utilizare .section_modify').hide();
    }
}

function check_bonus_malus()
{
    var ok = true;
    if ($('#bonus_maus').val() == 0)
        ok = false;
    if ($('#daune').val() == 0)
        ok = false;

    if (ok)
    {
        var tmp = [];
		
        tmp.push('Clasa Bonus-Malus anterioara: <b>' + $('#div_bonus_malus #bonus_maus option:selected').text() + '</b>');
        tmp.push('Numar daune provocate: <b>' + $('#div_bonus_malus #daune option:selected').text() + '</b>');
					
        $('#div_bonus_malus_rezultat').html(tmp.join("<br>")).show();
		
        $('#div_utilizare').show('slow');
        $('#div_utilizare .tableGrid').show('slow');
		
        $('#div_bonus_malus .tableGrid').hide('fast');
        $('#div_bonus_malus .section_modify').show();
    //get_cotatie_rca(0)
    }
    else
    {
        $('#div_utilizare').hide('slow');
        $('#div_utilizare .section_modify').hide();
    }
}

function check_date_utilizator()
{
    var ok = true;
    if ((!$('#judet_id').val()) || (!$('#judet_id').valid()))
        ok = false;
    if ((!$('#localitate_id').val()) || (!$('#localitate_id').valid()))
        ok = false;
    if (((!$('#cnp').val().length) || (!$('#cnp').valid())) && ((!$('#cui').val().length) || (!$('#cui').valid())))
        ok = false;
    if ($('#tr-permis:visible').length)
    {
        if (!$('#data_permis').val().length)
            ok = false;
    }

    if (ok)
    {
        var tmp = [];
        if($('#div_date_utilizator #judet_nume:visible').length > 0) tmp.push('Judet: <b>' + $('#div_date_utilizator #judet_nume').val().toUpperCase() + '</b>');
        if($('#div_date_utilizator #localitate_nume:visible').length > 0) tmp.push('Localitate: <b>' + $('#div_date_utilizator #localitate_nume').val().toUpperCase() + '</b>');
        if($('#div_date_utilizator #cnp:visible').length > 0) tmp.push('CNP: <b>' + $('#div_date_utilizator #cnp').val() + '</b>');
        if($('#div_date_utilizator #cui:visible').length > 0) tmp.push('CUI: <b>' + $('#div_date_utilizator #cui').val() + '</b>');
        if($('#div_date_utilizator #tr-permis:visible').length > 0) tmp.push('Permis de conducere: <b>' + $('#div_date_utilizator #data_permis').val() + '</b>');
		
        $('#div_date_utilizator_rezultat').html(tmp.join("<br>")).show();
		
        $('#div_date_vehicol').show('slow');
        $('#div_date_vehicol .tableGrid').show('slow');
		
        $('#div_date_utilizator .tableGrid').hide('fast');
        $('#div_date_utilizator .section_modify').show();
		
    //get_cotatie_rca(0)
    }
    else
    {
        $('#div_date_vehicol').hide('slow');
        $('#div_date_vehicol .section_modify').hide();
		
        $('#div_data_intrarii').hide('slow');
        $('#div_data_intrarii .section_modify').hide();
		
        $('#div_bonus_malus').hide('slow');
        $('#div_bonus_malus .section_modify').hide();
		
        $('#div_utilizare').hide('slow');
        $('#div_utilizare .section_modify').hide();
    }
}

function check_utilizare()
{
    var ok = true;
    var checked = false;
    $("input[name='utilizare']").each(function(){
        if ($(this).attr('checked'))
            checked = true;
    });
    if (!checked)
        ok = false;

    if (ok)
    {
        var tmp = [];
		
        $('#div_utilizare input[type=radio]:checked').each(function(obj)
        {
            id = $(this).attr('id');
			
            selectat = $('#div_utilizare label[for=' + id + ']').html();
            tmp.push('<b>' + selectat + '<b>');
        });
					
        $('#div_utilizare_rezultat').html(tmp.join("<br>")).show();
		
        $('#div_utilizare .tableGrid').hide('fast');
        $('#div_utilizare .section_modify').show();
		
        get_cotatie_rca(0)
    }
    else
    {
        
}
}
function comanda(id_sas,pret,durata)
{
    $('#id_sas').val(id_sas);
    $('#pret').val(pret);
    $('#durata').val(durata);
    if (!$("#save_pages_rca_form").valid())
    {
        $('.section .tableGrid').show('slow');
        return false;
    }
    $('#save_pages_rca_form').submit();
}

function obtine_cotatie()
{
    if( $('#judet_id').val().length == 0)
    {
        alert('Va rugam alegeti un judet din lista.');
        $('#judet_nume').focus();
        return false;
    }
    if( parseInt($('#localitate_id').val()) == 0)
    {
        alert('Va rugam alegeti o localitate din lista.');
        $('#localitate_nume').focus();
        return false;
    }
    if($('input[name=tip_persoana]:checked').length > 0)
    {
        switch($('input[name=tip_persoana]:checked').val())
        {
            case 'fizica':
            case 'leasing_fizica':
            case 'disabilitati':
            case 'pensionar':
                if($('#cnp').val().length == 0)
                {
                    alert('CNP-ul este obligatoriu');
                    $('#cnp').focus();
                    return false;
                }
                break;
            case 'juridica':
            case 'leasing_juridica':
                if($('#cui').val().length == 0)
                {
                    alert('CUI-ul este obligatoriu');
                    $('#cui').focus();
                    return false;
                }
                break;
        }
    } else {
        alert('Tipul persoanei este obligatoriu');
        return false;
    }
    if( parseInt($('#stare').val()) == 0)
    {
        alert('Starea este obligatorie.');
        $('#stare').focus();
        return false;
    }
    if($('#tip_masina').val().length == 0)
    {
        alert('Alegeti tipul autovehiculului.');
        $('#tip_masina').focus();
        return false;
    }
    switch($('#tip_masina').val())
    {
        case '1':
        case '3':
            if(parseInt($('#cilindre').val()) == 0)
            {
                alert('Alegeti capacitatea cilindrica.');
                $('#cilindre').focus();
                return false;
            }
            break;
        case '2':
            if(parseInt($('#nr_locuri').val()) == 0)
            {
                alert('Introduceti numarul de locuri.');
                $('nr_locuri').focus();
                return false;
            }
            break;
        case '4':
            if(parseInt($('#putere').val()) == 0)
            {
                alert('Introduceti puterea in KW.');
                $('putere').focus();
                return false;
            }
            break;
        case '5':
        case '6':
            if(parseInt($('#masa_maxima').val()) == 0)
            {
                alert('Introduceti masa maxima.');
                $('masa_maxima').focus();
                return false;
            }
            break;
        default:
            alert('Alegeti tipul autovehiculului.');
            $('#tip_masina').focus();
            return false;
    }
	
    if( $('#serie_sasiu').val().length == 0)
    {
        alert('Seria sasiu este obligatorie.');
        $('#serie_sasiu').focus();
        return false;
    }
    if( $('#data_intrarii').val().length == 0)
    {
        alert('Data intrarii in vigoare este obligatorie.');
        $('#data_intrarii').focus();
        return false;
    }

    $('html,body').animate({
        scrollTop: $('#save_pages_rca_form').offset().top - 10
    }, 600);
    valabilitate = 0;
    if($('input[name=valabilitate]:checked').length > 0)
    {
        valabilitate = $('input[name=valabilitate]:checked').val();
    }
    get_cotatie_rca(valabilitate);
}

function get_cotatie_rca(valabilitate)
{
    $.ajaxq('queue0');
    $.ajaxq('queue1');
	
    window.setTimeout('get_cotatii_rca(' + valabilitate + ');', 100);
}

function get_cotatii_rca(valabilitate)
{
    if ($('#tr-cnp:visible').length)
        $("#cui").rules("remove");
    else
        $("#cnp").rules("remove");

    if (!$("#save_pages_rca_form").valid())
    {
        $('.section .tableGrid').show('slow');
        return false;
    }
    $('#cotatie-noua').hide();
    var form_data = $($('#save_pages_rca_form')).serializeArray();
    for(var i= 0; i< form_data.length; i++){
        $.cookie(form_data[i].name, form_data[i].value);
    }
    $('#home-text-rca').hide();
    $('#tabs-rca-loader').show();
    $('#tabs-rca').hide();
    $('#all_sas').css('display','none');
	
    var rezultate_cotatii = [];
    var cereri_complete = 0;
	
    for(var idx = 0; idx < societati.length; idx++)
    {
        $.ajaxq('queue' + (idx % 2),
        {
            type: "POST"
            ,
            url: settings.base_url + "pages_ajax/get_cotatie_rca"
            ,
            data:
            {
                form_data: $.toJSON(form_data)
                ,
                valabilitate_trimisa: valabilitate
                ,
                clasa_emitere: societati_clase_de_emitere[idx]
            }
            ,
            cache: true
            ,
            async: true
            ,
            dataType: 'json'
            ,
            success: function(response)
            {
                if(response != null)
                {
                    if( response.status == 0)
                    {
                    // $('#home-text-rca').show();
                    // $('#tabs-rca').hide();
                    // $('#all_sas').css('display','none');
                    } else {
                        rezultate_cotatii.push(response);

                        if((cereri_complete >= 1) && ($('#tabs-rca:visible').length == 0))
                        {
                            $('#home-text-rca').hide();
                            $('#all_sas').css('display','block');
                            $('#tabs-rca').show();
                            //$('#valabilitate_1').html('');
                            $('#valabilitate_2').html('');
                            $('#valabilitate_3').html('');
                            $('#tabs-rca').tabs('select',parseInt(response.valabilitate)-2);
                        }
						
                        rezultate_cotatii.sort(function(a, b)
                        {
                            if(parseFloat(a.cotatie) < parseFloat(b.cotatie)) return -1;
                            else if(parseFloat(a.cotatie) > parseFloat(b.cotatie)) return 1;
                            else return 0;
                        });
						
                        var tmp = '';
                        for(var i = 0; i < rezultate_cotatii.length; i++)
                        {
                            tmp += rezultate_cotatii[i].message;
                        }
						
                        $('#valabilitate_'+response.valabilitate).html(tmp);
                    }
                }
            }
            ,
            complete: function()
            {
                cereri_complete++;
                if(cereri_complete == societati.length)
                    $('#tabs-rca-loader').hide();
            }
        });
    }
}


