// ne trebuie pentru a sti daca se editeaza sau se initializeza campuri de PF, PJ, PJ cu utilizator PF, PJ cu utilizator PJ  
var is_edit_tippersoanaPF = false;
var is_edit_tippersoanaPJ = false;
var is_edit_tippersoanaPJ_PF = false;
var is_edit_tippersoanaPJ_PJ = false;
// pas de afisare pentru preturi
var pas_de_afisare_pf = 0;
var pas_de_afisare_pjpj = 0;
var pas_de_afisare_pjpf = 0;

// procentul din bara de stare pentru cele 3 situatii
var procent_pf = 0;
var procent_pjpj = 0;
var procent_pjpf = 0;

// implicit caseta cu preturi se misca in sus si in jos odata cu pagina.
var is_deplasare_preturi = true;

// initializam numele ultimului camp afisat pentru fiecare tip de utilizator in parte
var idUltimulCampVizibilPJPJ = 'ajax_pj_utilizare_pj';
var idUltimulCampVizibilPJPF = 'ajax_pj_leasing_deficiente_pensionar_pf';
var idUltimulCampVizibilPF = 'ajax_pf_leasing_deficiente_pensionar';
var isPF = false;
var isPJ = false;
var isPJPJ = false;
var isPJPF = false;

// numarul de campuri in formular pentru PF si PJ
var nr_campuri_pf = 20;
var nr_campuri_pj = 17;


// initializam o variabila cu imaginea cu statistici livrari afisata in caseta cu preturi
// o vom schimba in iframe-ul afiliati dintr-un fisier PHP
var img_statistici_livrari = "statistici-livrari.png";

// implicit nu afisam toate rezultatele
setCookie ("is_afiseazaTot", "nu");


// functie care ascunde div-ul cu campurile pentru formular, 
// afiseaza bara cu otpiunea aleasa si link-ul pentru editare 
// afiseaza divul cu urmatoare optiune din formular

// parametrii de intrare ai functiei sunt:
// id - id-ul div curent
// idnextid - id-ul div-ului urmator
// src_nextdiv_form - sursa html ce se va incarca in div-ul urmator

function Restrange (id, nextid, src_nextdiv_form) {
	
	// fac invizibil layerul cu ajax
	showHide (id, "ascunde");
	
	// fac vizibil layerul cu numele optiunii si link-ul pentru editare
	showHide ("edit_" + id, "afiseaza");
	
	if (nextid != '') {
		
		// fac vizibil containerul urmatorului layerul. 
		// cand venim cu clic pe "editare", sunt ascunse toate layerele de forma "container_..."  urmatoare layerului editat
		showHide ($(nextid).parentNode.getAttribute("id"), "afiseaza");
		
		// fac invizibil urmatorul layerul cu link-ul de editare
		// acesta ramane vizibil cand venim cu clic pe "editare" la pas anterior
		showHide ("edit_" + nextid, "ascunde");
		
		// fac vizibil urmatorul layerul cu ajax
		showHide (nextid, "afiseaza");
		
		// incarc cu sursa HTML pentru pasul urmator
		new Ajax.Request(
			src_nextdiv_form,
			{
		    	method: 'get',
			    asynchronous: false,
		    	onSuccess: function(transport){
					var response = transport.responseText || "Nu exista date!";
					$(nextid).update(response);
		    	},
				onFailure: function(){
					alert('A aparut o problema, va rugam sa incercati din nou!');
				}
			});
		
		// daca este nevoie, aducem in partea vizibila a ecranului caseta cu textul modificat
		autoScrollCasetaAsiguratori (nextid, "container_afiseaza_tarife_ext");

		// pentru clasa de bonus-malus avem o explicatie afisata sub select, 
		// similara cu cea in care apar asiguratorii pentru care mai trebuie adaugate date
		autoScrollCasetaAsiguratori (nextid, "container_explicatie_pf_bonusmalusnou");
		autoScrollCasetaAsiguratori (nextid, "container_explicatie_pj_bonusmalusnou_pf");
		
		// mutam caseta albastra cu informatii despre campul urmator langa el
		AfiseazaInfoCamp (nextid);
	} else {
		// la ultimul camp nu avem parametru pt next id, deci mereu ascundem casuta cu explicatii
		showHide ('ContainerInfoCamp', "ascunde");
	}
}

// functia muta caseta albastra cu informatii despre campul urmator
function AfiseazaInfoCamp (id) {
	
	// definim un array cu textele ce apar in caseta albastra, 
	// array-ul este indexat dupa mijlocul numelui campului (fara 'prefixul ajax_pf' si sufixul '_pj')
	var arr_TxtInfoCamp = new Array();
	arr_TxtInfoCamp['putere'] = 'Completarea acestui camp este necesara pt a putea obtine un tarif mai avantajos de la Asirom. 1 KW=1,36 CP / 100CP =100/1,36= 74KW';
	// nu mai afisam caseta cu info pentru campul "utilizare", pentru ca se suprapune peste caseta cu cod oferta  
	// arr_TxtInfoCamp['utilizare'] = 'Unele societati acorda reduceri pentru utilizarea normala si/sau majorari ale tarifului pentru alte utilizari, cu risc mai mare: taxi, distributie etc.'; 
	arr_TxtInfoCamp['bonusmalusnou'] = 'Sistemul bonus-malus exista din 2010, pt a putea oferi tarife in functie de istoricul soferilor. Este necesar pt a putea obtine un tarif mai bun, daca nu ai provocat daune.'; 
	arr_TxtInfoCamp['bonus_malus'] = 'Sistemul bonus-malus exista din 2010, pt a putea oferi tarife in functie de istoricul soferilor. Este necesara pentru a putea obtine tariful aferent masinii acesteia.';
	arr_TxtInfoCamp['judet'] = 'Completarea acestui camp este necesara pentru a afisa tarifele de la BCR, Carpatica, Euroins, Groupama , Ardaf, Generali, Omniasig, Uniqa.';
	arr_TxtInfoCamp['localitate'] = 'Completarea acestui camp este necesara pentru a afisa tarifele de la BCR, Carpatica, Euroins, Groupama , Ardaf, Generali, Omniasig, Uniqa.';
	arr_TxtInfoCamp['cnp'] = 'Completarea acestui camp este necesara pt a se putea corela cu clasa de bonus-malus si a putea acorda reducerile de ani fara daune.';
	arr_TxtInfoCamp['serie_sasiu'] = 'Completarea acestui camp este necesara pt a se putea corela cu clasa de bonus-malus si a putea acorda reducerile de ani fara daune.';
	arr_TxtInfoCamp['cui'] = 'Completarea acestui camp este necesara pt a se putea corela cu clasa de bonus-malus si a putea acorda reducerile de ani fara daune.';
	arr_TxtInfoCamp['marca_auto'] = 'Completarea acestui camp este necesara pentru a afisa tarifele de la Ardaf, Generali si Groupama.';
	arr_TxtInfoCamp['data_obtinerii_permis'] = 'Completarea acestui camp este necesara pentru a afisa reducerile posibile de la Allianz, Ardaf, Omniasig si Generali.';
	arr_TxtInfoCamp['email'] = 'Nu este obligatorie, dar e necesara pentru a nu mai introduce datele din nou data viitoare!';
	arr_TxtInfoCamp['alte_reduceri'] = 'Puteti beneficia de reduceri la Asirom si BCR daca va incadrati intr-una din situatiile descrise.';
	arr_TxtInfoCamp['aveti_copii_minori'] = 'Asirom si Generali ofera reduceri suplimentare pentru asiguratii care au in intretinere copii minori.';
	arr_TxtInfoCamp['institutii'] = 'Completarea acestui camp este necesara pentru a afisa tarifele de la BCR.';
	arr_TxtInfoCamp['caen'] = 'Completarea acestui camp este necesara pentru a afisa tariful de la Allianz.';
	
	// setam continutul casetei in functie de campului curent
	var mijlocNumeCamp;
	if (id.substring(5, 7) == "pf") {					// pattern denumire: ajax_pf_MIJLOCCAMP sau ajax_pj_MIJLOCCAMP_pf sau ajax_pj_MIJLOCCAMP_pj 
		mijlocNumeCamp = id.substring (8);
	} else {
		if (id.substring(id.length-2) == "pf" || id.substring(id.length-2) == "pj") {
			mijlocNumeCamp = id.substring(8, id.length-3);
		}
	}
	
	if (!Object.isUndefined(mijlocNumeCamp) && arr_TxtInfoCamp[mijlocNumeCamp]) {
		$('ContainerTxtInfoCamp').innerHTML = arr_TxtInfoCamp[mijlocNumeCamp];
		afisamInfoCamp = true;
	} else {
		afisamInfoCamp = false;
	}
	//
	
	
	// determinam pozitia layerului curent (cu colturi rotunde) 
	foo = $(id).parentNode.cumulativeOffset();
	topCampCurent = foo[1];
	
	// determinam sau initializam (in urma masurarii pe un browser de referinta) inaltimea layerului curent
	if ($(id).parentNode.getAttribute("id") == 'container_pf_data_intrarii_valabilitate' || 
		$(id).parentNode.getAttribute("id") == 'container_pj_data_intrarii_valabilitate_pf' || 
		$(id).parentNode.getAttribute("id") == 'container_pj_data_intrarii_valabilitate_pj') {
		cnrtDivHeight = 195;
	} else {
		cnrtDivHeight = $(id).parentNode.getDimensions().height;
	}
	
	// pozitionam caseta cu informatii raportat la pozitia layerului curent
	$('ContainerInfoCamp').style.top = topCampCurent - ($('ContainerInfoCamp').getDimensions().height - cnrtDivHeight) / 2;
	
	// fac vizibil layerul daca avem text definit pentru campul curent
	if (afisamInfoCamp == true) {
		showHide ('ContainerInfoCamp', "afiseaza");
	} else {
		showHide ('ContainerInfoCamp', "ascunde");
	}
	
	
	
	// salvam aici care este ultimul camp vizibil pentru fiecare tip de utilizator
	// pentru a afisa info albastru pe stanga in dreptul lui cand comutam pf/pjpf/pjpj
	if (getTip(id) == "PF") {
		idUltimulCampVizibilPF = id;
		isPF = true;
		isPJPF = false;
		isPJPJ = false;
	} else {
		isPF = false;
		if (getTip(id) == "PJPF") {
			idUltimulCampVizibilPJPF = id;
			isPJPF = true;
			isPJPJ = false;
		} else if (getTip(id) == "PJPJ") {
			idUltimulCampVizibilPJPJ = id;
			isPJPF = false;
			isPJPJ = true;
		}
	}
	
	// afisam bara de stare deasupra campului curent. Ii dam id-ul layerului parinte (cel cu colturi rotunde)
	repozitioneazaBaraStare ($(id).parentNode.getAttribute("id"));
}

function salveazaTipUtilizator (tip) {
	if (tip == "pf") {
		isPF = true;
		isPJPF = false;
		isPJPJ = false;
	} else {
		isPF = false;
		if ($('pj_leasing_pj') !== null && $('pj_fara_leasing') !== null && ($('pj_leasing_pj').checked || $('pj_fara_leasing').checked)) {
			isPJPF = false;
			isPJPJ = true;
		} else if ($('pj_leasing_pf') !== null && $('pj_leasing_pf').checked) {
			isPJPF = true;
			isPJPJ = false;
		} else {
			isPJ = true;
			isPJPF = false;
			isPJPJ = false;
		}
	}
}

function getTip(id) {
	if (id.substring(5, 7) == "pf")
		return "PF";
	
	if (id.substring(5, 7) == "pj") {
		if (id.substring(id.length-2) == "pf")	
			return "PJPF";
		else if (id.substring(id.length-2) == "pj")
			return "PJPJ";
		else
			return false;
	} 
}

// functie care afiseaza div-ul cu campurile pentru formular 
// si ascunde bara cu optiunea aleasa si link-ul pentru editare
function Afiseaza (id) {
	// fac vizibil layerul cu ajax	
	showHide (id, "afiseaza");
	
	// fac invizibil layerul cu numele optiunii si link-ul pentru editare
	showHide ("edit_" + id, "ascunde");
	
	// ascunde si initializeaza optiunile urmatoare
	stergeIstoriaNodului ($(id));
	
	// mutam caseta albastra cu informatii despre campul urmator
	AfiseazaInfoCamp (id);
}


function stergeIstoriaNodului (id) {
	// ascunde si initializeaza optiunile urmatoare
	divCampUrmator = next (id.parentNode);
	while (divCampUrmator) {
        if (divCampUrmator.getAttribute("id") != "container_bara_stare" && divCampUrmator.className != "clear" && divCampUrmator.style.visibility != "hidden" && divCampUrmator.style.display != "none") {
			showHide (divCampUrmator.getAttribute("id"), "ascunde");
		}
        divCampUrmator = next (divCampUrmator);
    }
}

function next (elem) {
    do {
        elem = elem.nextSibling;
    } while (elem && elem.nodeType != 1);
    return elem;                
}


// functie care afiseaza numele optiunii selectate in sman-ul din layerul restrans
function SeteazaValoare (id, valoare) {
	var id_span = $('optiune_' + id);
	
	// afiseaza valoarea setata in campul 'span'
	if (id_span) {
		id_span.innerHTML = valoare;
	}
}


// functie care afiseaza cele 2 formulare pentru PF si PJ
function ActiveazaTipPersoana () {
	
	var img_dureaza = document.getElementById("img_dureaza").value;
	var img_statistici = document.getElementById("img_statistici").value;
	var img_reducere = document.getElementById("img_reducere").value;
	
	if ($('tip_persoana_pf').checked) {
		// fac vizibil formularul pentru PF
		showHide ('campuri_pf', "afiseaza");
		
		// fac invizibil formularul pentru PJ
		showHide ('campuri_pj', "ascunde");
		
		if (!is_edit_tippersoanaPF) {
			is_edit_tippersoanaPF = true;
			
			showHide ('container_pf_leasing_deficiente_pensionar', "afiseaza");
			showHide ('ajax_pf_leasing_deficiente_pensionar', "afiseaza");

			
			// incarc cu sursa HTML pentru pasul urmator
			new Ajax.Request(
				'_inc_ajax_pas1.php?url=pf-01-leasing-deficiente-pensionar',
				{
			    	method: 'get',
				    asynchronous: false,
			    	onSuccess: function(transport){
						var response = transport.responseText || "Nu exista date!";
						$('ajax_pf_leasing_deficiente_pensionar').update(response);
			    	},
					onFailure: function(){
						alert('A aparut o problema, va rugam sa incercati din nou!');
					}
				});
		}
		
		// Afisez lista asiguratorilor pentru care mai trebuie sa completeze date
		AfiseazaAsiguratori('pf', pas_de_afisare_pf);
		
		// Initializam valoarea pentru bara de stare
		AfiseazaBaraStare (procent_pf);
		
		// Afisam preturile de la pasul curent, cu stergerea in prealabil a preturilor potential deja existente
		if (pas_de_afisare_pf > 0) {
			$('textPreturiComparate').update("");
			AfiseazaPret (pas_de_afisare_pf);
		} else
			var dreapta_comparator = jQuery("#dreapta_comparator").html(); 
			$('textPreturiComparate').update(dreapta_comparator);
			jQuery('.testimoniale').fancybox({
					'autoScale'     : true,
					'width'			: 520,
					'height'		: 420,    
					'type'			: 'iframe'
				});
			//$('textPreturiComparate').update("<div style='width:470px; border:2px solid #0079c0;border-radius:10px 10px 10px 10px;background-color:#ffffff;'><img src='poze/mascota.png' style='float:left;margin-left:15px;margin-top:5px;margin-right:20px;'><div style='color:#0079c0;font-size:18px;text-align:left;margin-top:15px'><b>Dureaza doar 1 minut!</b><br>Completeaza datele de alaturi</div><div style='margin-top:30px;'><div style='float:left;margin-right:20px;height:130px;margin-top:5px;text-align:center;margin-left:10px;'><img src='poze/ipt.png'></div><div style='text-align:left;color:#0079c0;font-size:12px;'><b>1</b> Este reglementat! Nu avem niciun adaos comercial!<div style='height:5px;'>&nbsp;</div><b>2</b> Niciun asigurator nu-ti poate oferi un pret mai bun.<br><div style='height:5px;'>&nbsp;</div> <b>3</b> In Bucuresti, iti aducem polita gratuit oriunde vrei.<br><div style='height:5px;'>&nbsp;</div><b>4</b> Te poti razgandi in ultimul moment! Poti refuza polita la livrare.</div></div><div style='margin-top:20px;margin-bottom:20px;margin-left:15px;'><img src='poze/sigla-rca.png' style='margin-left:35px;'></div><div style='font-size:14px;text-align:center;'>Din 2006, peste 200.000 de clienti sunt multumiti de www.rca-ieftin.ro<br>Ei ne descriu cel mai bine.</div><div style='font-size:12px;color:#1671a8;margin-left:10px;margin-bottom:10px;margin-top:10px;'><b>"+img_dureaza+"</b><br>"+img_statistici+"</div></div>");
			
			// ascundem layerul cu mesajul de inceput pentru completarea formularului
			showHide ('container_completare_frm_start_ext', "ascunde");	
	}
	
	else if ($('tip_persoana_pj').checked) {
		// fac vizibil formularul pentru PJ
		showHide ('campuri_pj', "afiseaza");
		
		// fac invizibil formularul pentru PF
		showHide ('campuri_pf', "ascunde");
		
		if (!is_edit_tippersoanaPJ) {
			is_edit_tippersoanaPJ = true;
			
			showHide ('container_pj_leasing_institutii', "afiseaza");
			showHide ('ajax_pj_leasing_institutii', "afiseaza");
			
			
			// incarc cu sursa HTML pentru pasul urmator
			new Ajax.Request(
				'_inc_ajax_pas1.php?url=pj-01-leasing-institutii',
				{
			    	method: 'get',
				    asynchronous: false,
			    	onSuccess: function(transport){
						var response = transport.responseText || "Nu exista date!";
						$('ajax_pj_leasing_institutii').update(response);
			    	},
					onFailure: function(){
						alert('A aparut o problema, va rugam sa incercati din nou!');
					}
				});
		}
 		
		// Afisez lista asiguratorilor pentru care mai trebuie sa completeze date
		// si la fel preturile de la pasul curent
		if ($('pj_leasing_pf') != undefined && $('pj_leasing_pf').checked) {
			
			AfiseazaAsiguratori('pj_pf', pas_de_afisare_pjpf);
			
			// Initializam valoarea pentru bara de stare
			AfiseazaBaraStare (procent_pjpf);
						
			// Afisam preturile de la pasul curent, cu stergerea in prealabil a preturilor potential deja existente
			if (pas_de_afisare_pjpf > 0) {
				$('textPreturiComparate').update("");
				AfiseazaPret (pas_de_afisare_pjpf);
			} else
				var dreapta_comparator = jQuery("#dreapta_comparator").html(); 
				$('textPreturiComparate').update(dreapta_comparator);
				jQuery('.testimoniale').fancybox({
					'autoScale'     : true,
					'width'			: 520,
					'height'		: 420,    
					'type'			: 'iframe'
				});
				//$('textPreturiComparate').update("<div style='width:470px; border:2px solid #0079c0;border-radius:10px 10px 10px 10px;background-color:#ffffff;'><img src='poze/mascota.png' style='float:left;margin-left:15px;margin-top:5px;margin-right:20px;'><div style='color:#0079c0;font-size:18px;text-align:left;margin-top:15px'><b>Dureaza doar 1 minut!</b><br>Completeaza datele de alaturi</div><div style='margin-top:30px;'><div style='float:left;margin-right:20px;height:130px;margin-top:5px;text-align:center;margin-left:10px;'><img src='poze/ipt.png'></div><div style='text-align:left;color:#0079c0;font-size:12px;'><b>1</b> Este reglementat! Nu avem niciun adaos comercial!<div style='height:5px;'>&nbsp;</div><b>2</b> Niciun asigurator nu-ti poate oferi un pret mai bun.<br><div style='height:5px;'>&nbsp;</div> <b>3</b> In Bucuresti, iti aducem polita gratuit oriunde vrei.<br><div style='height:5px;'>&nbsp;</div><b>4</b> Te poti razgandi in ultimul moment! Poti refuza polita la livrare.</div></div><div style='margin-top:20px;margin-bottom:20px;margin-left:15px;'><img src='poze/sigla-rca.png' style='margin-left:35px;'></div><div style='font-size:14px;text-align:center;'>Din 2006, peste 200.000 de clienti sunt multumiti de www.rca-ieftin.ro<br>Ei ne descriu cel mai bine.</div><div style='font-size:12px;color:#1671a8;margin-left:10px;margin-bottom:10px;margin-top:10px;'><b>"+img_dureaza+"</b><br>"+img_statistici+"</div></div>");
				
				// ascundem layerul cu mesajul de inceput pentru completarea formularului
				showHide ('container_completare_frm_start_ext', "ascunde");	
		} else {
			AfiseazaAsiguratori('pj_pj', pas_de_afisare_pjpj);
			
			// Initializam valoarea pentru bara de stare
			AfiseazaBaraStare (procent_pjpj);
						
			// Afisam preturile de la pasul curent, cu stergerea in prealabil a preturilor potential deja existente
			if (pas_de_afisare_pjpj > 0) {
				$('textPreturiComparate').update("");
				AfiseazaPret (pas_de_afisare_pjpj);
				
			} else
				var dreapta_comparator = jQuery("#dreapta_comparator").html(); 
				$('textPreturiComparate').update(dreapta_comparator);
				jQuery('.testimoniale').fancybox({
					'autoScale'     : true,
					'width'			: 520,
					'height'		: 420,    
					'type'			: 'iframe'
				});
				//$('textPreturiComparate').update("<div style='width:470px; border:2px solid #0079c0;border-radius:10px 10px 10px 10px;background-color:#ffffff;'><img src='poze/mascota.png' style='float:left;margin-left:15px;margin-top:5px;margin-right:20px;'><div style='color:#0079c0;font-size:18px;text-align:left;margin-top:15px'><b>Dureaza doar 1 minut!</b><br>Completeaza datele de alaturi</div><div style='margin-top:30px;'><div style='float:left;margin-right:20px;height:130px;margin-top:5px;text-align:center;margin-left:10px;'><img src='poze/ipt.png'></div><div style='text-align:left;color:#0079c0;font-size:12px;'><b>1</b> Este reglementat! Nu avem niciun adaos comercial!<div style='height:5px;'>&nbsp;</div><b>2</b> Niciun asigurator nu-ti poate oferi un pret mai bun.<br><div style='height:5px;'>&nbsp;</div> <b>3</b> In Bucuresti, iti aducem polita gratuit oriunde vrei.<br><div style='height:5px;'>&nbsp;</div><b>4</b> Te poti razgandi in ultimul moment! Poti refuza polita la livrare.</div></div><div style='margin-top:20px;margin-bottom:20px;margin-left:15px;'><img src='poze/sigla-rca.png' style='margin-left:35px;'></div><div style='font-size:14px;text-align:center;'>Din 2006, peste 200.000 de clienti sunt multumiti de www.rca-ieftin.ro<br>Ei ne descriu cel mai bine.</div><div style='font-size:12px;color:#1671a8;margin-left:10px;margin-bottom:10px;margin-top:10px;'><b>"+img_dureaza+"</b><br>"+img_statistici+"</div></div>");
				
				// ascundem layerul cu mesajul de inceput pentru completarea formularului
				showHide ('container_completare_frm_start_ext', "ascunde");	
		
		}
	
	}
	
	
}



// functie care afiseaza cele 2 formulare pentru Persoana Juridica in functie de utilizator, PF sau PJ
function ActiveazaTipPJ (id) {
	
	if (id == "pf") {
		
		// fac vizibil formularul pentru PF
		showHide ('campuri_pj_pf', "afiseaza");
		
		// fac invizibil formularul pentru PJ
		showHide ('campuri_pj_pj', "ascunde");
		
		// fac invizibil layerul cu numele optiunii si afisez link-ul pentru editare
		showHide ('ajax_pj_leasing_institutii', "ascunde");
		showHide ('edit_ajax_pj_leasing_institutii', "afiseaza");
		showHide ('container_pj_leasing_deficiente_pensionar_pf', "afiseaza");
		
		if (!is_edit_tippersoanaPJ_PF) {
			is_edit_tippersoanaPJ_PF = true;
			
			if ($('ajax_pj_leasing_deficiente_pensionar_pf') != null) {
				// ascunde si initializeaza optiunile urmatoare
				// stergeIstoriaNodului ('ajax_pj_leasing_deficiente_pensionar_pf');
			}
			
			showHide ('ajax_pj_leasing_deficiente_pensionar_pf', "afiseaza");
			
			// incarc cu sursa HTML pentru pasul urmator
			new Ajax.Request(
				'_inc_ajax_pas1.php?url=pj-02-leasing-deficiente-pensionar',
				{
			    	method: 'get',
				    asynchronous: false,
			    	onSuccess: function(transport){
						var response = transport.responseText || "Nu exista date!";
						$('ajax_pj_leasing_deficiente_pensionar_pf').update(response);
			    	},
					onFailure: function(){
						alert('A aparut o problema, va rugam sa incercati din nou!');
					}
				});
		}
			
		// mutam caseta albastra cu informatii despre campul urmator
		AfiseazaInfoCamp (idUltimulCampVizibilPJPF);
		
	}

	else if (id == "pj") {
		
		// fac vizibil formularul pentru PJ
		showHide ('campuri_pj_pj', 'afiseaza');
		
		// fac invizibil formularul pentru PF
		showHide ('campuri_pj_pf', 'ascunde');
		
		// fac invizibil layerul cu numele optiunii si afisez link-ul pentru editare
		showHide ('ajax_pj_leasing_institutii', "ascunde");
		showHide ('edit_ajax_pj_leasing_institutii', "afiseaza");
		
		if($('pj_fara_leasing').checked) {
			//fara leasing
			showHide ('container_pj_utilizare_pj', "afiseaza");
			showHide ('container_pj_leasing', "ascunde");

			if (!is_edit_tippersoanaPJ_PJ) {
				is_edit_tippersoanaPJ_PJ = true;
				
				showHide ('ajax_pj_utilizare_pj', 'afiseaza');
				
				// incarc cu sursa HTML pentru pasul urmator
				new Ajax.Request(
					'_inc_ajax_pas1.php?url=pj-22-utilizare',
					{
				    	method: 'get',
					    asynchronous: false,
				    	onSuccess: function(transport){
							var response = transport.responseText || "Nu exista date!";
							$('ajax_pj_utilizare_pj').update(response);
				    	},
						onFailure: function(){
							alert('A aparut o problema, va rugam sa incercati din nou!');
						}
					});
			}
			
		}
		else {
			// leasing
			showHide ('container_pj_leasing', "afiseaza");
			showHide ('ajax_pj_leasing', "ascunde");
			
			if (!is_edit_tippersoanaPJ_PJ) {
				is_edit_tippersoanaPJ_PJ = true;
				
				showHide ('ajax_pj_leasing', 'afiseaza');
			
				// incarc cu sursa HTML pentru pasul urmator
				new Ajax.Request(
					'_inc_ajax_pas1.php?url=pj-leasing',
					{
				    	method: 'get',
					    asynchronous: false,
				    	onSuccess: function(transport){
							var response = transport.responseText || "Nu exista date!";
							$('ajax_pj_leasing').update(response);
				    	},
						onFailure: function(){
							alert('A aparut o problema, va rugam sa incercati din nou!');
						}
					});
			}
			
		}
		
		// mutam caseta albastra cu informatii despre campul urmator
		AfiseazaInfoCamp (idUltimulCampVizibilPJPJ);
	}
		
}


// functia afiseaza sau ascunde un camp de formular
function showHide (id, stare) {
	if (stare == "ascunde") {
		$(id).style.display = 'none';
		$(id).style.visibility = 'hidden';
	} else {
		$(id).style.display = 'block';
		$(id).style.visibility = 'visible';
	}
}


// functia afiseaza sau ascunde un camp de formular si cand ascunde distruge continutul campului de formular
function showHideDestroy (camp, stare) {
	var id_container = "container_" + camp;
	var id_ajax = "ajax_" + camp;
	if (stare == "ascunde") {
		$(id_container).style.display = 'none';
		$(id_container).style.visibility = 'hidden';
		DestroyDiv (id_ajax);
	} else {
		$(id_container).style.display = 'block';
		$(id_container).style.visibility = 'visible';
	}
}


// functie care reseteaza continutul unui DIV
function DestroyDiv (id) {
	var divObj = $(id);
	
	// afiseaza valoarea setata in campul 'span'
	if (divObj) {
		divObj.innerHTML = "Se incarca ... ";
	}
}


// afiseaza preturile de la pasul 'pas'
function AfiseazaPret (pas, schimbValabilitate, afisezRozeta, verificaAllianz) {
	
	var img_dureaza = document.getElementById("img_dureaza").value;
	var img_statistici = document.getElementById("img_statistici").value;
	var img_reducere = document.getElementById("img_reducere").value;
	
	if ($('tip_persoana_pf').checked)
		pas_de_afisare_pf = pas;
	else {
		if ($('pj_leasing_pf').checked)
			pas_de_afisare_pjpf = pas;
		else
			pas_de_afisare_pjpj = pas;
	}
	
	if (pas == 0) {
		var dreapta_comparator = jQuery("#dreapta_comparator").html(); 
		$('textPreturiComparate').update(dreapta_comparator);
		jQuery('.testimoniale').fancybox({
				'autoScale'     : true,
				'width'			: 520,
				'height'		: 420,    
				'type'			: 'iframe'
			});
		/*$('textPreturiComparate').update("<div style='width:470px; border:2px solid #0079c0;border-radius:10px 10px 10px 10px;background-color:#ffffff;'><img src='poze/mascota.png' style='float:left;margin-left:15px;margin-top:5px;margin-right:20px;'><div style='color:#0079c0;font-size:18px;text-align:left;margin-top:15px'><b>Dureaza doar 1 minut!</b><br>Completeaza datele de alaturi</div><div style='margin-top:30px;'><div style='float:left;margin-right:20px;height:130px;margin-top:5px;text-align:center;margin-left:10px;'><img src='poze/ipt.png'></div><div style='text-align:left;color:#0079c0;font-size:12px;'><b>1</b> Este reglementat! Nu avem niciun adaos comercial!<div style='height:5px;'>&nbsp;</div><b>2</b> Niciun asigurator nu-ti poate oferi un pret mai bun.<br><div style='height:5px;'>&nbsp;</div> <b>3</b> In Bucuresti, iti aducem polita gratuit oriunde vrei.<br><div style='height:5px;'>&nbsp;</div><b>4</b> Te poti razgandi in ultimul moment! Poti refuza polita la livrare.</div></div><div style='margin-top:20px;margin-bottom:20px;margin-left:15px;'><img src='poze/sigla-rca.png' style='margin-left:35px;'></div><div style='font-size:14px;text-align:center;'>Din 2006, peste 200.000 de clienti sunt multumiti de www.rca-ieftin.ro<br>Ei ne descriu cel mai bine.</div><div style='font-size:12px;color:#1671a8;margin-left:10px;margin-bottom:10px;margin-top:10px;'><b>"+img_dureaza+"</b><br>"+img_statistici+"</div></div>");*/
		//showHide ('ContainerRezultateBtn', 'afiseaza');
	} else {
		
		is_deplasare_preturi = false;
		$("slider").scrollTo();
		
		// trimit la server cerere de afisare a tuturor preturilor atunci cand se schimba 6/12 luni din butonul din dreapta-sua.
        varSchimbValabilitate = (schimbValabilitate == "da") ? "calculeazaTot=1&" : "";
        
        // verificam daca in URL este setat GET['locatie'] cu valoarea 'agentie' si daca exista, 
		// transmitem acest parametru mai jos la scriptul 'compara_rezultate.php' 
		if (gup ('locatie') == 'agentii') {
        	var getLocatie = '&locatie=agentii';
       	} else {
       		var getLocatie = '';
		}
       	
		// Afisam rozeta cu webservice-urile ce urmeaza a se incarca la pasul curent.
		// Atentie, requestul Ajax e ASINCRON, adica nu suprascrie rozeta decat cand vin rezultatele
		// Rozeta apare doar cand se da clic pe butoanele ok, nu si cand se revine cu clic pe "modifica".
		if (afisezRozeta != "nu") {
			rozeta(pas);
		}
		
		new Ajax.Request(
			'compara-rezultate.php?' + varSchimbValabilitate + 'pas=' + pas + '&nrRezultateVizibile=' + getNrRezultateVizibile () + getLocatie,
			{
		    	// asynchronous: ((verificaAllianz == "da") ? false : true),
				method: 'post',
			    parameters: $('form_tip_persoana').serialize(true),
		    	onSuccess: succesAfiseazaPret(verificaAllianz),
				onFailure: function(){
					alert('A aparut o problema, va rugam sa incercati din nou!');
				}
			});
    }
	
}

function succesAfiseazaPret (verificaAllianz) {
	return function(transport){
		var response = transport.responseText || "Nu exista date!";
		$('textPreturiComparate').update(response);
		
		if (verificaAllianz == 'da') {
			if (response.toString().indexOf("Allianz") > 0) {
				Restrange('ajax_pj_serie_sasiu_pj', '', '');
				showHide('container_afiseaza_tarife_ext', 'ascunde');
				showHide('container_completare_frm_end_ext', 'afiseaza');
				AfiseazaBaraStare('ultimul_camp_pjpj');	
			} else {
				Restrange('ajax_pj_serie_sasiu_pj', 'ajax_pj_caen_pj', '_inc_ajax_pas1.php?url=pj-31-caen');
				AfiseazaAsiguratori('pj_pj', 5);
				AfiseazaBaraStare('ajax_pj_caen_pj');
			}
		}

	}
}

function ucwords (str) {
    return (str + '').replace(/^([a-z])|\s+([a-z])/g, function ($1) {
        return $1.toUpperCase();
    });
}


function rozeta (pas) {
	$('textPreturiComparate').update("");
    if ($('textPreturiComparate')) {
    	if (isPF || isPJPF)
    		arr_asiguratori = arr_asiguratori_pf_pas[pas]; 
    	else 
    		arr_asiguratori = arr_asiguratori_pj_pas[pas]; 
    	
		if (arr_asiguratori)
	        for (i = 0; i < arr_asiguratori.length; i++) {
	            asigNume = arr_asiguratori[i]; 
	    		$('textPreturiComparate').insert('<table width="100%" style="margin-bottom:10px;"><tr bgcolor="white" style="visibility: visible; display: block;"><td width="20"></td><td width="80"><img src="poze/sigle/' + asigNume + '.jpg" width="80"/></td><td width="110" align="center"><img src="images/icon-loading.gif"/></td><td colspan="3"><span class="rezultat_loading_info">Asteptam tariful<br/> de la ' + ucwords(asigNume) + '</span></td></tr></table>');
	            // alert (asigNume);
	    	}
    }
}

// eveniment la clic pe butoanele de comanda
function comandaPolita (strBanca, strPret) {
	document.frmComanda.banca.value = strBanca;
	document.frmComanda.pret.value = strPret;
	document.frmComanda.submit();
}


// afiseaza asiguratorii pentru care trebuie completate campuri ca sa afisam preturi de la pasul 'pas'+1
function AfiseazaAsiguratori (tip_persoana, pas) {
	// alert ("tip pers: " + tip_persoana + ", pas = " + pas);
	
	// afisez sau ascund layerul infunctie de pasul curent
	if (pas == 0) {
		showHide ('container_afiseaza_tarife_ext', 'ascunde');
	} else {
		showHide ('container_afiseaza_tarife_ext', 'afiseaza');
	}
	
	// daca nu suntem in ultimul pas, ascundem layerul cu mesajul de finalizare a formularului 
	showHide('container_completare_frm_end_ext', 'ascunde');
	
	// afisez asiguratorii pentru care mai trebuie introduse date pentru PF si PJ cu utilizator PF
	if (tip_persoana == 'pf' || tip_persoana == 'pj_pf') {
		if (pas == 1) {
			$('txt_lista_companii_asigurari').update("Carpatica, Euroins, Uniqa, Groupama, Ardaf, Omniasig, Allianz, Astra, City Insurance, BCR, Asirom si Generali");
		}
		else if (pas == 2) {
			$('txt_lista_companii_asigurari').update("Euroins, Uniqa, Groupama, Ardaf, Omniasig, Allianz, Astra, City Insurance, BCR, Asirom si Generali");
		}
		else if (pas == 3) {
			$('txt_lista_companii_asigurari').update("Euroins, Uniqa, Groupama, Ardaf, Omniasig, Allianz, Astra, City Insurance, BCR, Asirom si Generali");
		}
		else if (pas == 4) {
			$('txt_lista_companii_asigurari').update("Uniqa, Groupama, Ardaf, Omniasig, Allianz, Astra, City Insurance, BCR, Asirom si Generali");
		}
		else if (pas == 5) {
			$('txt_lista_companii_asigurari').update("Groupama, Ardaf, Omniasig, Allianz, Astra, City Insurance, BCR, Asirom si Generali");
		}
		else if (pas == 6) {
			$('txt_lista_companii_asigurari').update("Astra, City Insurance, BCR, Asirom, Generali");
		}
		else if (pas == 7) {
			$('txt_lista_companii_asigurari').update("Asirom si Generali");
		}
	}
	
	// afisez asiguratorii pentru care mai trebuie introduse date pentru PJ cu utilizator PJ
	else if (tip_persoana == 'pj_pj') {
		if (pas == 1) {
			$('txt_lista_companii_asigurari').update("Carpatica, Astra, Uniqa, Generali, Groupama, Ardaf, Asirom, BCR, Omniasig, Euroins si Allianz");
		}
		else if (pas == 2) {
			$('txt_lista_companii_asigurari').update("Astra, Uniqa, Generali, Groupama, Ardaf, Asirom, BCR, Omniasig, Euroins si Allianz");
		}
		else if (pas == 3) {
			$('txt_lista_companii_asigurari').update("Uniqa, Generali, Groupama, Ardaf, Asirom, BCR, Omniasig, Euroins si Allianz");
		}
		else if (pas == 4) {
			$('txt_lista_companii_asigurari').update("Generali, Groupama, Ardaf, Asirom, BCR, Omniasig, Euroins si Allianz");
		}
		else if (pas == 5) {
			$('txt_lista_companii_asigurari').update("Allianz");
		}
	}
}


// Facem scroll automat astfel incat obiectul obj1Id sa fie aliniat in partea de jos a ecranului
// iar daca obiectul obj2Id este visibil, pe el il aliniem (va fi caseta cu asiguratorii ramasi de afisat)
function autoScrollCasetaAsiguratori (objUnuId, objDoiId) {
	
	hFereastra = getWindowHeight ();
	hTop = document.viewport.getScrollOffsets().top;
	

	// se numeste cross-site scripting asta si e nepermis din motive de securitate
	// hTop = parent.viewport.getScrollOffsets().top;

	// asta e solutia cu fragment identifier (http://softwareas.com/cross-domain-communication-with-iframes)
	// dar nu e functionala datorita resurselor mari consumate (settimeout la 10ms in pagina mama)
	// hTop = parseInt(document.location.hash);

	objId = ($(objDoiId).style.visibility == "visible") ? objDoiId : objUnuId;
	objHeight = Element.getDimensions(objId).height;
	objTop = $(objId).cumulativeOffset().top;
	
	yBottomLayer = - (objTop + objHeight - hFereastra - hTop);
	if (yBottomLayer < 10) {
		window.scrollBy(0, 3);
		setTimeout("autoScrollCasetaAsiguratori('" + objUnuId + "', '" + objDoiId + "')", 10);
	}
}





/* codul este preluat si adaptat de la adresa de mai jos
http://netlinxinc.com/index.php?option=com_content&view=article&id=40:adding-options-to-select-element-using-prototype&catid=3:ajax&Itemid=2
functia primeste 2 parametrii: 
1. ID_ul SELECT-ului judet din care citeste valoarea selectata;
2. ID_ul SELECT-ului localitate pe care il populeaza cu date;
*/
function PopuleazaSelectLocalitati (ID_camp_judet, ID_camp_localitate, localitate_selectata) {
	var ID_judet = $F(ID_camp_judet);
	var url = '_afiseaza_localitati.php';
	var pars = 'ID_judet=' + ID_judet;
	
	var myAjax = new Ajax.Request(
		url, 
		{
			method: 'get', 
			asynchronous: false,
			parameters: pars, 
			onSuccess: function(transport) {
				var response = transport.responseText || "no response text";
				if(eval(response)) {
					var my_options = $A(eval(response));
					$A(my_options).each(function(s, index) {
						var tmp = $A(s);
						var opt = document.createElement('option');
						opt.text = tmp[1];
						opt.value = tmp[0];
						$(ID_camp_localitate).options.add(opt);
						if (tmp[2] == 1) {
							$(ID_camp_localitate).options[index].style.color = 'red';
						}
					});
					if (localitate_selectata != "")
						$(ID_camp_localitate).value = localitate_selectata;
				} else {
					alert ("este o eroare in codul AJAX pentru afisarea localitatilor")
				};
				
				// ascundem div-ul cu textul "Loading" si afisam div-ul cu selectul cu localitati
				$(ID_camp_localitate + "_loading").style.visibility = "hidden";
				$(ID_camp_localitate + "_loading").style.display = "none";
				$(ID_camp_localitate + "_select").style.visibility = "visible";
				$(ID_camp_localitate + "_select").style.display = "block";
			}
		});
}


function NuPermitemCampGol (ID_camp) {
	if ($(ID_camp).value == "") {
		alert ("Va rugam sa completati campul din formular.");
		return false;
	}
	return true;
}



function ValideazaSubcategorie (ID_camp) {
	var s = $(ID_camp).value
	
	if (parseInt(s) != s) {
		alert("Va rugam sa adaugati un numar intreg.");
		return false;
	}
	return true;
}


// functia permite doar apasarea tastelor nu numerice
function verificaInteger (evt) {
	evt = (evt) ? evt : window.event;
	var charCode = (evt.which) ? evt.which : evt.keyCode;
	if (charCode > 31 && (charCode < 48 || charCode > 57)) {
		alert ("Introduceti CUI-iul/CIF-ul fara \"RO\".");
		return false;
	}
	// status = "";
	return true;
}


// functia afiseaza bara de stare cu procentaj variabil in functie de pasul curent
function AfiseazaBaraStare (id) {
	// facem vizibil layerul cu bara de stare
	showHide ('container_bara_stare', 'afiseaza');
	
	var pozitie_camp;
	switch (id) {
		// id-uri pentru PF si PJPF
		case 'ajax_pf_stare_vehicul': case 'ajax_pj_stare_vehicul_pf':
			pozitie_camp = 1;
			break;
		case 'ajax_pf_data_intrarii_valabilitate': case 'ajax_pj_data_intrarii_valabilitate_pf':
			pozitie_camp = 2;
			break;
		case 'ajax_pf_perioada_valabilitate': case 'ajax_pj_perioada_valabilitate_pf':
			pozitie_camp = 3;
			break;
		case 'ajax_pf_categorie': case 'ajax_pj_categorie_pf':
			pozitie_camp = 4;
			break;
		case 'ajax_pf_subcategorie': case 'ajax_pj_subcategorie_pf':
			pozitie_camp = 5;
			break;
		case 'ajax_pf_putere': case 'ajax_pj_putere_pf':
			pozitie_camp = 6;
			break;
		case 'ajax_pf_utilizare': case 'ajax_pj_utilizare_pf':
			pozitie_camp = 7;
			break;
		case 'ajax_pf_bonusmalusnou': case 'ajax_pj_bonusmalusnou_pf':
			pozitie_camp = 8;
			break;
		case 'ajax_pf_bonus_malus': case 'ajax_pj_bonus_malus_pf':
			pozitie_camp = 9;
			break;
		case 'ajax_pf_judet': case 'ajax_pj_judet_pf':
			pozitie_camp = 10;
			break;
		case 'ajax_pf_localitate': case 'ajax_pj_localitate_pf':
			pozitie_camp = 11;
			break;
		case 'ajax_pf_cnp': case 'ajax_pj_cnp_pf':
			pozitie_camp = 12;
			break;
		case 'ajax_pf_serie_sasiu': case 'ajax_pj_serie_sasiu_pf':
			pozitie_camp = 13;
			break;
		case 'ajax_pf_marca_auto': case 'ajax_pj_marca_auto_pf':
			pozitie_camp = 14;
			break;
		case 'ajax_pf_combustibil': case 'ajax_pj_pf_combustibil':
			pozitie_camp = 15;
			break;
		case 'ajax_pf_numar': case 'ajax_pj_pf_numar':
			pozitie_camp = 16;
			break;
		case 'ajax_pf_data_obtinerii_permis': case 'ajax_pj_data_obtinerii_permis_pf': case'ajax_pf_email' :
			pozitie_camp = 17;
			break;
		case 'ajax_pf_alte_reduceri': case 'ajax_pj_alte_reduceri_pf':
			pozitie_camp = 18;
			break;
		case 'ajax_pf_aveti_copii_minori': case 'ajax_pj_aveti_copii_minori_pf':
			pozitie_camp = 19;
			break;
		case 'ultimul_camp_pf': case 'ultimul_camp_pjpf':
			pozitie_camp = 20;
			break;

		// id-uri pentru PJPJ
		case 'ajax_pj_stare_vehicul_pj':
			pozitie_camp = 1;
			break;
		case 'ajax_pj_data_intrarii_valabilitate_pj':
			pozitie_camp = 2;
			break;
		case 'ajax_pj_perioada_valabilitate_pj':
			pozitie_camp = 3;
			break;
		case 'ajax_pj_categorie_pj':
			pozitie_camp = 4;
			break;
		case 'ajax_pj_subcategorie_pj':
			pozitie_camp = 5;
			break;
		case 'ajax_pj_putere_pj':
			pozitie_camp = 6;
			break;
		case 'ajax_pj_judet_pj':
			pozitie_camp = 7;
			break;
		case 'ajax_pj_localitate_pj':
			pozitie_camp = 8;
			break;
		case 'ajax_pj_bonus_malus_pj':
			pozitie_camp = 9;
			break;
		case 'ajax_pj_marca_auto_pj':
			pozitie_camp = 10;
			break;
		case 'ajax_pj_combustibil':
			pozitie_camp = 11;
			break;
		case 'ajax_pj_numar':
			pozitie_camp = 12;
			break;
		case 'ajax_pj_institutii_pj':
			pozitie_camp = 13;
			break;
		case 'ajax_pj_cui_pj':
			pozitie_camp = 14;
			break;
		case 'ajax_pj_serie_sasiu_pj':
			pozitie_camp = 15;
			break;
		case 'ajax_pj_caen_pj':
			pozitie_camp = 16;
			break;
		case 'ultimul_camp_pjpj':
			pozitie_camp = 17;
			break;
	}
	
	
	if (pozitie_camp != undefined) {
		if (isPF || isPJPF)
			valoare = Math.floor (pozitie_camp / nr_campuri_pf * 100);
		else   
			valoare = Math.floor (pozitie_camp / nr_campuri_pj * 100);   
		
		var ID_imagine = $('bara_stare_variabila');
		
		// iamginea barii de stare este hardcodata si este multimplu de 10
		ID_imagine.src = 'images/bg-bara-stare-step-' + Math.floor (valoare / 10) + '.gif';
		
		// actualizam procentul din bara de stare
		$('procent_completare').update(valoare);
		
		if (isPJPJ)
			procent_pjpj = valoare;
		else if (isPJPF)
			procent_pjpf = valoare;
		else if (isPF)
			procent_pf = valoare;
	}
}


function repozitioneazaBaraStare (idLayerCurent) {
	// mutam container_bara_stare fix deasupra layerului cu id: idLayerCurent
	$(idLayerCurent).insert({before: $("container_bara_stare")});
	$("container_bara_stare").style.marginBottom = '0px'; 
	$("container_bara_stare").style.marginTop = '10px';
}


function AfiseazaToateTarifele () {
	// vom avea mai putin de 20 de rezultate.
	for (i=1; i<=20; i++) {
		if ($("tarif_" + i) != null) {
			showHide ("tarif_" + i, "afiseaza");
		}
		if ($("bonus_" + i) != null) {
			showHide ("bonus_" + i, "afiseaza");
		}
	}

	// salvam informatia "afisare completa" intr-un cookie pe care il citim din php cand generam o noua simulare
	setCookie ("is_afiseazaTot", "da", 1);
	
	// anulam deplasarea casetei cu preturi odata cu scroll-ul vertical in pagina
	// folosind o variabila globala.
	is_deplasare_preturi = false;
	
	// schimbam textul si functia link-ului
	showHide ("linkAfiseazaToateTarifele", "ascunde");
	showHide ("linkAfiseazaPutineTarife", "afiseaza");
	
	// schimbam positionarea layerului 'slider' si il facem relativ
	$('slider').style.position = 'static';
}


function AfiseazaPutineTarife () {
	// vom afisa doar 8 rezultate (trebuie sa coincida cu numarul folosit in compara-rezultate.php)
	// Nr 8 e hardcodat si in compara_rezultate.php in 2 locuri.
	for (i=1; i<=20; i++) {
		if ($("tarif_" + i) != null) {
			showHide ("tarif_" + i, (i <= getNrRezultateVizibile ()) ? "afiseaza" : "ascunde");
		}
		if ($("bonus_" + i) != null) {
			showHide ("bonus_" + i, (i <= getNrRezultateVizibile ()) ? "afiseaza" : "ascunde");
		}
	}

	// salvam informatia "afisare completa" intr-un cookie pe care il citim din php cand generam o noua simulare
	setCookie ("is_afiseazaTot", "nu", 1);
	
	// activam deplasarea casetei cu preturi odata cu scroll-ul vertical in pagina
	// folosind o variabila globala.
	is_deplasare_preturi = true;
	
	// schimbam textul si functia link-ului (din nou)
	showHide ("linkAfiseazaToateTarifele", "afiseaza");
	showHide ("linkAfiseazaPutineTarife", "ascunde");
	
	// schimbam positionarea layerului 'slider' si il facem absolut, ca sa se poata misca pe verticala
	$('slider').style.position = 'absolute';
}


function setCookie (c_name, value, expiredays) {
	var exdate = new Date();
	exdate.setDate(exdate.getDate() + expiredays);
	document.cookie = c_name + "=" +escape(value) + ((expiredays==null) ? "" : ";expires=" + exdate.toGMTString());
}

function getCookie (c_name) {
	if (document.cookie.length>0) {
		c_start=document.cookie.indexOf(c_name + "=");
	  	if (c_start!=-1) {
		    c_start=c_start + c_name.length+1;
		    c_end=document.cookie.indexOf(";",c_start);
	    	if (c_end==-1) 
				c_end = document.cookie.length;
	    	return unescape(document.cookie.substring(c_start,c_end));
	    }
	}
	return "";
}




/*
functii specifice campurilor din formular, apelate din fisierul "_inc_ajax_pas1.php"
le-am pus aici deoarece pe IE nu merge daca sunt incluse in cadrul fiecarei secvente.
*/

// pf-01 leasing-deficiente-pensionar
function VerificaLeasingDeficientePensionar_PF () {
	// Daca bifeaza 'niciuna', celelalte nu mai pot fi bifate. 
	// Daca bifeaza una din celelalte 3 optiuni, 'niciuna' nu mai poate fi bifata.
	if ($("pf_pensionar").checked || $("pf_deficiente_locomotorii").checked || $("pf_masina_leasing").checked) {
		$("pf_pensionar").disabled = false;
		$("pf_deficiente_locomotorii").disabled = false;
		$("pf_masina_leasing").disabled = false;
		$("pf_niciuna_dintre_acestea").disabled = true;
	} else if ($("pf_niciuna_dintre_acestea").checked) {
		$("pf_pensionar").disabled = true;
		$("pf_deficiente_locomotorii").disabled = true;
		$("pf_masina_leasing").disabled = true;
		$("pf_niciuna_dintre_acestea").disabled = false;
	} else {
		$("pf_pensionar").disabled = false;
		$("pf_deficiente_locomotorii").disabled = false;
		$("pf_masina_leasing").disabled = false;
		$("pf_niciuna_dintre_acestea").disabled = false;
	}
}

function AfiseazaLeasingDeficientePensionar_PF () {
	var info_PF = "";
	
	if ($("pf_pensionar").checked || $("pf_deficiente_locomotorii").checked || $("pf_masina_leasing").checked) {
		info_PF = "<br>";
	}
	
	if ($("pf_pensionar").checked) { 
		info_PF += 'pensionar';
	}
	if ($("pf_deficiente_locomotorii").checked) {
		if (info_PF != "<br>") {
			info_PF += ", ";
		}
		info_PF += 'deficiente locomotorii';
	}
	if ($("pf_masina_leasing").checked) { 
		if (info_PF != "<br>") {
			info_PF += ", ";
	 	}
		info_PF += 'masina in leasing';
	}
	
	SeteazaValoare('pf_leasing_deficiente_pensionar', info_PF);
	
}


// pf-03 data-intrarii-valabilitate
function dateChanged_PF(calendar) {
	var set_value = document.getElementById("pf_data_intrarii_valabilitate");
	
	if (set_value) {
		// setam valoarea campului hidden din formular 
		set_value.value = calendar.currentDate.print('%d/%m/%Y');
		
		// afisam data selectata in layerul restrans
		SeteazaValoare('pf_data_intrarii_valabilitate', calendar.currentDate.print('%d/%m/%Y'));
		
		// restrangem layerul curent si afisam layerul urmator
		Restrange('ajax_pf_data_intrarii_valabilitate', 'ajax_pf_perioada_valabilitate', '_inc_ajax_pas1.php?url=pf-04-perioada-valabilitate');
		
		// populam selectul pentru perioada de valabilitate cu campurile corespunzatoare 
		// in functie de selectia facuta in campul "stare vehicul"
		genereazaPerioadaValabilitate ('pf_camp_stare_vehicul', 'pf_perioada_valabilitate');
		
		// afisam caseta cu asiguratorii ramasi
		AfiseazaAsiguratori('pf', 0);
		
		// schimbam procentul in bara de stare
		AfiseazaBaraStare ('ajax_pf_perioada_valabilitate');
		
		
	}
};


// pf-04 perioada-valabilitate 
// functia este utilizata pentru cele 3 optiuni din formular pentru PF, PJPF, PJPJ
function genereazaPerioadaValabilitate (id_camp_stare_vehicul, id_camp_perioada_valabilitate) {
	// daca vehiculul este "inmatriculat" sau "inregistrat" nu adaugam optiunea "1 luna"
	if ($(id_camp_stare_vehicul) != null) {
		if ($(id_camp_stare_vehicul).value == 'inmatriculat' || $(id_camp_stare_vehicul).value == 'inregistrat') {
			$(id_camp_perioada_valabilitate).options[0]=new Option("6 luni", "6", true, false);
			$(id_camp_perioada_valabilitate).options[1]=new Option("12 luni", "12", false, false);
			//$(id_camp_perioada_valabilitate).options[2]=null;
		} else {
			//$(id_camp_perioada_valabilitate).options[0]=new Option("1 luna", "1", true, false);
			$(id_camp_perioada_valabilitate).options[0]=new Option("6 luni", "6", true, false);
			$(id_camp_perioada_valabilitate).options[1]=new Option("12 luni", "12", false, false);
		}
	}
}


// genereaza campurile OPTION in select-ul cu categorii astfel:
// - daca este vehicul inregistrat sau in vederea inregistrarii afisam doar categoria "motorcicluri"
// - daca este vehicul inmatriculat sau in vederea inmatricularii afisam celelalte categorii
function GenereazaCategorii (nume_camp, id_select_populat) {
	$(id_select_populat).innerHTML = "";
	
	if ($(nume_camp).value == "inregistrat" || $(nume_camp).value == "in vederea inregistrarii") {
		var opt = document.createElement('option');
		opt.text = "Motocicluri inregistrate la primarie";
		opt.value = "motocicluri";
		$(id_select_populat).options.add(opt);
	} else {
		var opt = document.createElement('option');
		opt.text = "Autoturisme, inclusiv autoturisme de teren";
		opt.value = "autoturisme";
		$(id_select_populat).options.add(opt);
		
		opt = document.createElement('option');
		opt.text = "Alte autovehicule: autoutilitare, autofurgonete";
		opt.value = "alte autovehicule";
		$(id_select_populat).options.add(opt);
		
		opt = document.createElement('option');
		opt.text = "Autovehicule pentru transport persoane";
		opt.value = "autovehicule transport";
		$(id_select_populat).options.add(opt);
		
		opt = document.createElement('option');
		opt.text = "Motociclete, scutere, ATV-uri";
		opt.value = "motociclete, scuter, atv";
		$(id_select_populat).options.add(opt);
		
		opt = document.createElement('option');
		opt.text = "Autotractoare";
		opt.value = "autotractoare";
		$(id_select_populat).options.add(opt);
		
		opt = document.createElement('option');
		opt.text = "Remorci / semiremorci";
		opt.value = "remorci / semiremorci";
		$(id_select_populat).options.add(opt);
		
		opt = document.createElement('option');
		opt.text = "Tractoare rutiere";
		opt.value = "tractoare rutiere";
		$(id_select_populat).options.add(opt);
	} 
}


// pf-06 subcategorie
// afiseaza campurile pentru subcategorie in functie de tipul de categoria autovehiculului
function AfiseazaSubcategorie (id_camp_categorie, id_optiune_camp_subcategorie) {
	
	// alert ("daca scot alert-ul nu afiseaza numele subcategoriei.");
	
	// in functie de categoria selectata anterior sa ca completa automat unul din campurile:
	// "capacitate cilindrica", "masa maxima", sau "Numar persoane".
	if ($(id_camp_categorie) != null) {
		if ($(id_camp_categorie).value == 'autoturisme' || $(id_camp_categorie).value == 'motociclete, scuter, atv' || $(id_camp_categorie).value == 'motocicluri') {
			$(id_optiune_camp_subcategorie).innerHTML = 'Capacitate cilindrica (cmc)' + 
														 '<img src="poze/formular/inf2.gif" width="12" height="12" border="0" onMouseOver="return overlib(\'<img src=talon/5.gif>\',WRAP, VAUTO)"  onMouseOut="return nd()" vspace="2" hspace="3" align="absmiddle">';
		} else if ($(id_camp_categorie).value == 'alte autovehicule' || $(id_camp_categorie).value == 'autotractoare') {
			$(id_optiune_camp_subcategorie).innerHTML = 'Masa maxima (Kg)';
		} else if ($(id_camp_categorie).value == 'autovehicule transport') {
			$(id_optiune_camp_subcategorie).innerHTML = 'Numar persoane';
		} else if ($(id_camp_categorie).value == 'remorci / semiremorci') {
			$(id_optiune_camp_subcategorie).innerHTML = 'Masa (Kg)';
		} else if ($(id_camp_categorie).value == 'tractoare rutiere') {
			$(id_optiune_camp_subcategorie).innerHTML = 'Putere (CP)';
		}
	}
}


// pf-07 utilizare
// daca starea autovehiculului este "inregistrat" sau "inmatriculat", 
// pasul urmator este "bonus malus", altfel pasul urmator este "judet".
function AfiseazaCampulUrmatorDupaUtilizare_PF (id_camp_verificat) {
	if ($(id_camp_verificat) != null) {
		if ($(id_camp_verificat).value == 'inmatriculat' || $(id_camp_verificat).value == 'inregistrat') {
			Restrange('ajax_pf_utilizare', 'ajax_pf_bonusmalusnou', '_inc_ajax_pas1.php?url=pf-08-bonusmalusnou');
			showHide('container_explicatie_pf_bonusmalusnou', 'afiseaza');
		} else {
			Restrange('ajax_pf_utilizare', 'ajax_pf_judet', '_inc_ajax_pas1.php?url=pf-09-judet');
		}
	}
}


// pf-09 judet
function AfiseazaLocalitatePF (localitate_selectata) {
	Restrange('ajax_pf_judet', 'ajax_pf_localitate', '_inc_ajax_pas1.php?url=pf-10-localitate');
	
	// afisez layerul cu localitatea
	$('container_pf_localitate').style.display = 'block';
	$('container_pf_localitate').style.visibility = 'visible';
	
	// populam selectul "pf_localitate" cu localitatile din judetul selectat
	PopuleazaSelectLocalitati('pf_judet', 'pf_localitate', localitate_selectata);
}


// pf-11 varsta si cnp
// verificam daca "cnp" are 13 caractere, apoi calculam varsta pe baza anului si a lunii din CNP 
//verifica daca e numeric
function IsNumeric(strString) {
	var strValidChars = "0123456789.-";
	var strChar;
	var blnResult = true;
	
	if (strString.length == 0) return false;
	
	for (i = 0; i < strString.length && blnResult == true; i++)  {
	   strChar = strString.charAt(i);
	   if (strValidChars.indexOf(strChar) == -1)
	      {
	      blnResult = false;
	      }
	}
		
	return blnResult;
}
function validare_cnp(cnp) {

	var key = "279146358279";
	var sex = Math.floor(cnp.substr(0,1));
	var y = Math.floor(cnp.substr(1,2));
	var m = Math.floor(cnp.substr(3,2));
    var d = Math.floor(cnp.substr(5,2));
	var c = Math.floor(cnp.substr(7,2));
	
	if(!IsNumeric(cnp)) {
		return false;
	}
	else if(cnp.length > 13 || cnp.length < 13) {
		return false;
	}
	else {
		var s = 0;	
		for (i=0;i<=11;i++) {
			s+=cnp[i]*key[i];
		}
		var r = s%11;

		if (r<10) { if(r!=cnp[12]) { return false; } }
		if (r==10) { if(cnp[12]!=1){ return false; } }	
		if (sex!=1 && sex!=2 && sex!=5 && sex!=6) { return false; }
		if (m>12) { return false; }
		if (d>31) { return false; }
		if (m==2 && d>29) { return false; }
	}
	 
	return true;
}

function VerificaCNP_PF (cnp) {	
	if (!validare_cnp($('pf_cnp').value)) {
		alert ("Campul 'CNP' nu este completat corect.");
	} else {
		// extragem anul, luna si ziua din CNP, apoi calculam varsta
		var cnp = $('pf_cnp').value;
		var varsta = CalculeazaVarstaDinCNP (cnp);
		
		// setez varsta pentru campul hidden din formular
		$('pf_varsta').value = varsta;
		
		SeteazaValoare('pf_cnp', 'CNP ' + $('pf_cnp').value + '<br>Varsta ' + varsta + ' ani');
		Restrange('ajax_pf_cnp', 'ajax_pf_serie_sasiu', '_inc_ajax_pas1.php?url=pf-12-serie-sasiu');
		//AfiseazaPret(3);
		AfiseazaAsiguratori('pf', 0);
		AfiseazaBaraStare('ajax_pf_serie_sasiu');
	}
}

// pf-12 serie sasiu
// verificam daca "seria sasiu" are intre 4 si 17 caractere, 
function VerificaSerieSasiu_PF () {
	if ($('pf_serie_sasiu').value.length < 4 || $('pf_serie_sasiu').value.length > 17) {
		alert ("Campul 'Serie sasiu' trebuie sa aiba intre 4 si 17 caractere.");
	} else {
		SeteazaValoare('pf_serie_sasiu', 'Serie sasiu<img src="poze/formular/inf2.gif" width="12" height="12" border="0" onMouseOver="return overlib(\'<img src=talon/2.gif>\',WRAP, VAUTO)"  onMouseOut="return nd()" vspace="2" hspace="3" align="absmiddle"> ' + $('pf_serie_sasiu').value); 
		Restrange('ajax_pf_serie_sasiu', 'ajax_pf_marca_auto', '_inc_ajax_pas1.php?url=pf-13-marca-auto');
		//AfiseazaPret(4);
		AfiseazaAsiguratori('pf', 0);
		AfiseazaBaraStare('ajax_pf_marca_auto');
	}
}


// pj-02 leasing-deficiente-pensionar
function VerificaLeasingDeficientePensionar_PJPF () {
	// Daca bifeaza 'niciuna', celelalte nu mai pot fi bifate. 
	// Daca bifeaza una din celelalte 3 optiuni, 'niciuna' nu mai poate fi bifata.
	if ($("pj_pensionar_pf").checked || $("pj_deficiente_locomotorii_pf").checked || $("pj_masina_leasing_pf").checked) {
		$("pj_pensionar_pf").disabled = false;
		$("pj_deficiente_locomotorii_pf").disabled = false;
		$("pj_masina_leasing_pf").disabled = false;
		$("pj_niciuna_dintre_acestea_pf").disabled = true;
	} else if ($("pj_niciuna_dintre_acestea_pf").checked) {
		$("pj_pensionar_pf").disabled = true;
		$("pj_deficiente_locomotorii_pf").disabled = true;
		$("pj_masina_leasing_pf").disabled = true;
		$("pj_niciuna_dintre_acestea_pf").disabled = false;
	} else {
		$("pj_pensionar_pf").disabled = false;
		$("pj_deficiente_locomotorii_pf").disabled = false;
		$("pj_masina_leasing_pf").disabled = false;
		$("pj_niciuna_dintre_acestea_pf").disabled = false;
	}
}

function AfiseazaLeasingDeficientePensionar_PJ_PF () {
	var info_PJ_PF = "";
	
	if ($("pj_pensionar_pf").checked || $("pj_deficiente_locomotorii_pf").checked || $("pj_masina_leasing_pf").checked) {
		info_PJ_PF = "<br>";
	}
	
	if ($("pj_pensionar_pf").checked) {
		info_PJ_PF += 'pensionar';
	}
	if ($("pj_deficiente_locomotorii_pf").checked) {
		if (info_PJ_PF != "<br>") {
			info_PJ_PF += ", ";
		}
		info_PJ_PF += 'deficiente locomotorii';
	}
	if ($("pj_masina_leasing_pf").checked) {
		if (info_PJ_PF != "<br>") {
			info_PJ_PF += ", ";
		}
		info_PJ_PF += 'masina in leasing';
	}
	
	SeteazaValoare('pj_leasing_deficiente_pensionar_pf', info_PJ_PF);
}


// pj-04 data-intrarii-valabilitate
function dateChanged_PJPF(calendar) {
	var set_value = document.getElementById("pj_data_intrarii_valabilitate_pf");
	
	if (set_value) {
		// setam valoarea campului hidden din formular 
		set_value.value = calendar.currentDate.print('%d/%m/%Y');
		
		// afisam data selectata in layerul restrans
		SeteazaValoare('pj_data_intrarii_valabilitate_pf', calendar.currentDate.print('%d/%m/%Y'));
		
		// restrangem layerul curent si afisam layerul urmator
		Restrange('ajax_pj_data_intrarii_valabilitate_pf', 'ajax_pj_perioada_valabilitate_pf', '_inc_ajax_pas1.php?url=pj-05-perioada-valabilitate');
		
		// populam selectul pentru perioada de valabilitate cu campurile corespunzatoare 
		// in functie de selectia facuta in campul "stare vehicul"
		genereazaPerioadaValabilitate ('pj_camp_stare_vehicul_pf', 'pj_perioada_valabilitate_pf');
		
		AfiseazaAsiguratori('pj_pf', 0);

		AfiseazaBaraStare('ajax_pj_perioada_valabilitate_pf');
	}
}


// pj-08 utilizare
// daca starea autovehiculului este "inregistrat" sau "inmatriculat", 
// pasul urmator este "bonus malus", altfel pasul urmator este "judet".
function AfiseazaCampulUrmatorDupaUtilizare_PJPF (id_camp_verificat) {
	if ($(id_camp_verificat) != null) {
		if ($(id_camp_verificat).value == 'inmatriculat' || $(id_camp_verificat).value == 'inregistrat') {
			Restrange('ajax_pj_utilizare_pf', 'ajax_pj_bonusmalusnou_pf', '_inc_ajax_pas1.php?url=pj-09-bonusmalusnou');
			showHide('container_explicatie_pj_bonusmalusnou_pf', 'afiseaza');
		} else {
			Restrange('ajax_pj_utilizare_pf', 'ajax_pj_judet_pf', '_inc_ajax_pas1.php?url=pj-10-judet');
		}
	}
}


// pj-10 judet
function AfiseazaLocalitatePJPF (localitate_selectata) {
	Restrange('ajax_pj_judet_pf', 'ajax_pj_localitate_pf', '_inc_ajax_pas1.php?url=pj-11-localitate');
	
	// afisez layerul cu localitatea
	$('container_pj_localitate_pf').style.display = 'block';
	$('container_pj_localitate_pf').style.visibility = 'visible';
	
	// populam selectul "pj_localitate_pf" cu localitatile din judetul selectat
	PopuleazaSelectLocalitati('pj_judet_pf', 'pj_localitate_pf', localitate_selectata);
}


// pj-12 varsta si cnp
// verificam daca "cnp" are 13 caractere, apoi calculam varsta pe baza anului si a lunii din CNP 
function VerificaCNP_PJPF () {
	if (!validare_cnp($('pj_cnp_pf').value)) {
		alert ("Campul 'CNP' nu este completat corect.");
	} else {
		// extram anul, luna si ziua din CNP, apoi calculam varsta
		var cnp = $('pj_cnp_pf').value;
		var varsta = CalculeazaVarstaDinCNP (cnp);
		
		// setez varsta pentru campul hidden din formular
		$('pj_varsta_pf').value = varsta;
		
		SeteazaValoare('pj_cnp_pf', 'CNP ' + $('pj_cnp_pf').value + '<br>Varsta ' + varsta + ' ani');
		// $('optiune_pf_cnp').innerHTML = ;
		Restrange('ajax_pj_cnp_pf', 'ajax_pj_serie_sasiu_pf', '_inc_ajax_pas1.php?url=pj-13-serie_sasiu');
		
		AfiseazaAsiguratori('pj_pf', 0);
		AfiseazaBaraStare('ajax_pj_serie_sasiu_pf');
	}
}

// pj-13 serie sasiu
// verificam daca "seria sasiu" are intre 4 si 17 caractere, 
function VerificaSerieSasiu_PJPF () {
	if ($('pj_serie_sasiu_pf').value.length < 4 || $('pj_serie_sasiu_pf').value.length > 17) {
		alert ("Campul 'Serie sasiu' trebuie sa aiba intre 4 si 17 caractere.");
	} else {
		SeteazaValoare('pj_serie_sasiu_pf', 'Serie sasiu<img src="poze/formular/inf2.gif" width="12" height="12" border="0" onMouseOver="return overlib(\'<img src=talon/2.gif>\',WRAP, VAUTO)"  onMouseOut="return nd()" vspace="2" hspace="3" align="absmiddle"> ' + $('pj_serie_sasiu_pf').value); 
		Restrange('ajax_pj_serie_sasiu_pf', 'ajax_pj_marca_auto_pf', '_inc_ajax_pas1.php?url=pj-14-marca-auto');
		//AfiseazaPret(4);
		AfiseazaAsiguratori('pj_pf', 0);
		AfiseazaBaraStare('ajax_pj_marca_auto_pf');
	}
}


// pj-24 data-intrarii-valabilitate
function dateChanged_PJPJ(calendar) {
	var set_value = $("pj_data_intrarii_valabilitate_pj");
	
	if (set_value) {
		// setam valoarea campului hidden din formular 
		set_value.value = calendar.currentDate.print('%d/%m/%Y');
		
		// afisam data selectata in layerul restrans
		SeteazaValoare('pj_data_intrarii_valabilitate_pj', calendar.currentDate.print('%d/%m/%Y'));
		
		// restrangem layerul curent si afisam layerul urmator
		Restrange('ajax_pj_data_intrarii_valabilitate_pj', 'ajax_pj_perioada_valabilitate_pj', '_inc_ajax_pas1.php?url=pj-25-perioada-valabilitate');
		
		// populam selectul pentru perioada de valabilitate cu campurile corespunzatoare 
		// in functie de selectia facuta in campul "stare vehicul"
		genereazaPerioadaValabilitate ('pj_camp_stare_vehicul_pj', 'pj_perioada_valabilitate_pj');

		AfiseazaAsiguratori('pj_pj', 0);
		AfiseazaBaraStare('ajax_pj_perioada_valabilitate_pj');
	}
};


// pj-28 judet
function AfiseazaLocalitatePJPJ (localitate_selectata) {
	Restrange('ajax_pj_judet_pj', 'ajax_pj_localitate_pj', '_inc_ajax_pas1.php?url=pj-29-localitate');
	
	// afisez layerul cu localitatea
	$('container_pj_localitate_pj').style.display = 'block';
	$('container_pj_localitate_pj').style.visibility = 'visible';
	
	// populam selectul "pj_localitate_pj" cu localitatile din judetul selectat
	PopuleazaSelectLocalitati('pj_judet_pj', 'pj_localitate_pj', localitate_selectata);
}


// pj-29 localitate
// daca starea autovehiculului este "inregistrat" sau "inmatriculat", 
// pasul urmator este "bonus malus", altfel pasul urmator este "marca auto".
function AfiseazaCampulUrmatorDupaLocalitate_PJPJ (id_camp_verificat) {
	if ($(id_camp_verificat) != null) {
		if ($(id_camp_verificat).value == 'inmatriculat' || $(id_camp_verificat).value == 'inregistrat') {
			Restrange('ajax_pj_localitate_pj', 'ajax_pj_bonus_malus_pj', '_inc_ajax_pas1.php?url=pj-30-bonus-malus');
		} else {
			Restrange('ajax_pj_localitate_pj', 'ajax_pj_marca_auto_pj', '_inc_ajax_pas1.php?url=pj-35-marca-auto');
		}
	}
}


// pj-34 serie sasiu
// verificam daca "seria sasiu" are intre 4 si 17 caractere, 
function VerificaSerieSasiu_PJPJ () {
	if ($('pj_serie_sasiu_pj').value.length < 4 || $('pj_serie_sasiu_pj').value.length > 17) {
		alert ("Campul 'Serie sasiu' trebuie sa aiba intre 4 si 17 caractere.");
	} else {
		SeteazaValoare('pj_serie_sasiu_pj', 'Serie sasiu<img src="poze/formular/inf2.gif" width="12" height="12" border="0" onMouseOver="return overlib(\'<img src=talon/2.gif>\',WRAP, VAUTO)"  onMouseOut="return nd()" vspace="2" hspace="3" align="absmiddle"> ' + $('pj_serie_sasiu_pj').value); 
		Restrange('ajax_pj_serie_sasiu_pj', 'ajax_pj_caen_pj', '_inc_ajax_pas1.php?url=pj-31-caen');
		AfiseazaAsiguratori('pj_pj', 0);
		AfiseazaBaraStare('ajax_pj_caen_pj');
		//AfiseazaPret(5, '', '', 'da');
		
	}
}




function getWindowHeight() {
    if (document.compatMode == 'CSS1Compat' && !window.opera) {
      // Strict Mode && Non Opera
      return document.documentElement.clientHeight;
    } else if (navigator.userAgent.indexOf('AppleWebKit') != -1){
      // Safari
      return window.innerHeight;
    } else {
      // other
      return document.body.clientHeight;
    }
}

// functia intoarce numarul de linii care estimam ca au loc pe ecran in f de rezolutie.
// am alocat 100px pe inaltime pentru fiecare asigurator
function getNrRezultateVizibile () {
	var height = getWindowHeight ();
	if (height < 140) return 1;
	if (height < 240) return 2;
	if (height < 340) return 3;
	if (height < 440) return 4;
	if (height < 540) return 5;
	if (height < 640) return 6;
	if (height < 740) return 7;
	return 8;
}


// calculeaza varsta din CNP. functia primeste ca argument CNP-ul
function CalculeazaVarstaDinCNP (cnp) {
	var an = cnp.substring(1, 3);
	var luna = cnp.substring(3, 5);
	var zi = cnp.substring(5, 7);
	
	// formatam cu 4 cifre anul citit din CNP, in functie de prima cifra din CNP
	var primaCifraCNP = cnp.substring(0,1);
	an = FormateazaAnulDinCNP (primaCifraCNP, an);
	
	var dataNasterii = zi + '/' + luna + '/' + an;
	
	now = new Date();
	bD = dataNasterii.split ('/');
	if (bD.length==3) {
		born = new Date(bD[2], bD[1]*1-1, bD[0]);
		varsta = Math.floor((now.getTime() - born.getTime()) / (365.25 * 24 * 60 * 60 * 1000));
		return varsta;
	}
}


// formatam cu 4 cifre anul citit din CNP, in functie de prima cifra din CNP
// 1 / 2 - nascuti intre 1 ianuarie 1900 si 31 decembrie 1999
// 3 / 4 - nascuti intre 1 ianuarie 1800 si 31 decembrie 1899
// 5 / 6 - nascuti intre 1 ianuarie 2000 si 31 decembrie 2099
// 7 / 8 - pentru personale straine rezidente in Romania.
// 9 - pentru persoanele straaine.
function FormateazaAnulDinCNP (primaCifraCNP, an) {
	if (primaCifraCNP >= 1 && primaCifraCNP <= 2) {
		varsta_an = (an * 1) + 1900;
	} else if (primaCifraCNP >= 3 && primaCifraCNP <= 4) {
		varsta_an = (an * 1) + 1800;
	} else if (primaCifraCNP >= 5 && primaCifraCNP <= 6) {
		varsta_an = (an * 1) + 2000;
	} else if (primaCifraCNP >= 7 && primaCifraCNP <= 9) {
		// persoanele straine nu stim cand sunt nascute in functie de prima cifra asa ca ii consideram nascuti intre 1900-1999
		varsta_an = (an * 1) + 1900;
	}
	return varsta_an;
}


// Get URL Parameters
// An easy way to parse the query string in your URL to grab certain values.
function gup (name) {
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}


function iaUltimulCampVizibilPJ() {
	if (isPJPJ)
		return idUltimulCampVizibilPJPJ;
	else if (isPJPF)
		return idUltimulCampVizibilPJPF
	else
		return 'ajax_pj_leasing_institutii';
}


function EmailIDOferta () {
	// verificam daca a completat campul adresa de email
	if (ValideazaAdresaEmail ($("CodEmail_Email").value) == false) {
		alert("Introduceti corect adresa de email.");
		$("CodEmail_Email").focus();
		return false;
	} else {
		
		new Ajax.Request(
			'_trimite_email_id_oferta.php',
			{
				method: 'post',
			    parameters: $('frmCodEmail').serialize(true),
		    	onSuccess: function(transport){
					var response = transport.responseText;
					$('ContainerCodEmailMesaje').update(response);
				},
				onFailure: function(){
					alert('A aparut o problema, va rugam sa incercati din nou!');
				}
			});
		showHide ('ContainerFrmCodEmail', 'ascunde'); 
		showHide ('ContainerCodEmailMesaje', 'afiseaza');
	}
}


function EmailRecomandane () {
	// verificam daca a completat corect adresele de email
	if (ValideazaAdresaEmail ($("Recomandane_Email1").value) == false) {
		alert("Introduceti corect adresa de email.");
		$("Recomandane_Email1").focus();
		return false;
	} else if (ValideazaAdresaEmail ($("Recomandane_Email2").value) == false) {
		alert("Introduceti corect adresa de email.");
		$("Recomandane_Email2").focus();
		return false;
	} else {
		
		new Ajax.Request(
			'_recomanda_ne_prietenilor.php',
			{
				method: 'post',
			    parameters: $('frmRecomandane').serialize(true),
		    	onSuccess: function(transport){
					var response = transport.responseText;
					$('ContainerRecomandareMesaje').update(response);
				},
				onFailure: function(){
					alert('A aparut o problema, va rugam sa incercati din nou!');
				}
			});
		showHide ('ContainerFrmRecomandane', 'ascunde'); 
		showHide ('ContainerRecomandareMesaje', 'afiseaza');
	}	
}


// valideaza adresa de email
function ValideazaAdresaEmail (email) {
	var str = email
	var filter=/^.+@.+\..{2,3}$/
	
	if (filter.test(str))
		return true;
	else {
		return false;
	}
}


// bookmark page
function bookmarkpage() {
	var url = document.location.href;
	var title = document.title;
	if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4)) {
		window.external.AddFavorite(url,title);
	} else if (navigator.appName == "Netscape") {
		window.sidebar.addPanel(title,url,"");
	} else {
		alert("Press CTRL-D (Netscape) or CTRL-T (Opera) to bookmark");
	}
}

//suna-ma

function Sunama(asigurator, pret) {
	//afiseaza popup-ul si pune-l la mijloc
	var popup = jQuery('#ContainerSuna');
	var date_completate = jQuery('#date_completate').html();
	popup.css({top:'50%',left:'50%',margin:'-'+(popup.outerHeight() / 2)+'px 0 0 -'+(popup.outerWidth() / 2)+'px'});
	showHide('ContainerSuna', 'afiseaza');
	jQuery('input[name=suna_asigurator]').val(asigurator);
	jQuery('input[name=suna_pret]').val(pret);
	jQuery('input[name=suna_date]').val(date_completate);
}

function FormSuna() {
	//verifica formularul il trimite si afiseaza mesaj
    
	
	var nume = jQuery('input[name=suna_nume]').val();
	var telefon = jQuery('input[name=suna_telefon]').val();
	var asigurator = jQuery('input[name=suna_asigurator]').val();
	var pret = jQuery('input[name=suna_pret]').val();
	var date = jQuery('input[name=suna_date]').val();
	
	if(nume == "" || telefon == "" || asigurator == "" || pret == "" || date == "") {
		alert('Nu ai completat informatiile cerute!');
	}
	else {
		
		jQuery.ajax({
		  type: 'POST',
		  url: "_trimite_date_send2call.php",
		  data: "nume="+nume+"&telefon="+telefon+"&asigurator="+asigurator+"&pret="+pret+"&date="+date,
		  success: function(msg) {
		     if(msg == "ok") {
		    	 jQuery('#ContainerSunaContent').html('<img src="images/suna_multumim.png"/>');
		     }
		     else {
		    	alert('A aparut o eroare');
		     }
		  }
		});
		
	}
	
}

function AlegeFirmaLeasing(firma,tip_pers) {
	
	if(firma == "alta") {
		showHide(""+tip_pers+"_leasing_info","afiseaza");
		jQuery('#'+tip_pers+'_leasing_denumire').val('');
		jQuery('#'+tip_pers+'_leasing_cui').val('');
		jQuery('#'+tip_pers+'_leasing_judet').val('');
		jQuery('#'+tip_pers+'_leasing_localitate').html('<option value="">alege o localitate</option>');
		jQuery('#'+tip_pers+'_leasing_adresa').val('');
	}
	else {
		
		showHide(""+tip_pers+"_leasing_info","ascunde");
		
		jQuery.ajax({
		  type: 'GET',
		  url: "_inc_ajax_pas1.php",
		  data: "url=info-leasing&firma="+firma,
		  success: function(msg) {
			var exp = msg.split('|');
			jQuery('#'+tip_pers+'_leasing_denumire').val(exp[0]);
			jQuery('#'+tip_pers+'_leasing_cui').val(exp[1]);
			jQuery('#'+tip_pers+'_leasing_judet').val(exp[2]);
			jQuery('#'+tip_pers+'_leasing_localitate').html('');
			PopuleazaSelectLocalitati(''+tip_pers+'_leasing_judet', ''+tip_pers+'_leasing_localitate', exp[3]);
			jQuery('#'+tip_pers+'_leasing_adresa').val(exp[4]);
		  }
		});
	}
	
	
	
}

function ValidareLeasingPF() {
	var firma = jQuery('#pf_leasing').val();
	var denumire = jQuery('#pf_leasing_denumire').val();
	var cui = jQuery('#pf_leasing_cui').val();
	var judet = jQuery('#pf_leasing_judet').val();
	var localitate = jQuery('#pf_leasing_localitate').val();
	if(firma == "") {
		alert('Nu ai ales nicio companie de leasing!');
	}
	else {
		if(firma == "alta" && (denumire == "" || cui == "" || judet == "" || localitate == "")) {
			alert('Nu ai completat toate informatiile companiei de leasing!');
		}
		else {
			SeteazaValoare('pf_leasing', $('pf_leasing')[$('pf_leasing').selectedIndex].text);
			Restrange('ajax_pf_leasing', 'ajax_pf_stare_vehicul', '_inc_ajax_pas1.php?url=pf-02-stare-vehicul');
			AfiseazaAsiguratori('pf', 0);
			AfiseazaBaraStare('ajax_pf_stare_vehicul');
		}
	}
}

function ValidareLeasingPJ() {
	var firma = jQuery('#pj_leasing').val();
	var denumire = jQuery('#pj_leasing_denumire').val();
	var cui = jQuery('#pj_leasing_cui').val();
	var judet = jQuery('#pj_leasing_judet').val();
	var localitate = jQuery('#pj_leasing_localitate').val();
	if(firma == "") {
		alert('Nu ai ales nicio companie de leasing!');
	}
	else {
		if(firma == "alta" && (denumire == "" || cui == "" || judet == "" || localitate == "")) {
			alert('Nu ai completat toate informatiile companiei de leasing!');
		}
		else {
			SeteazaValoare('pj_leasing', $('pj_leasing')[$('pj_leasing').selectedIndex].text);
			Restrange('ajax_pj_leasing', 'ajax_pj_utilizare_pj', '_inc_ajax_pas1.php?url=pj-22-utilizare');
			AfiseazaAsiguratori('pj_pj', 0);
			AfiseazaBaraStare('ajax_pj_utilizare_pj');
		}
	}
}

function ValidareLeasingPJPF() {
	var firma = jQuery('#pj_pf_leasing').val();
	var denumire = jQuery('#pj_pf_leasing_denumire').val();
	var cui = jQuery('#pj_pf_leasing_cui').val();
	var judet = jQuery('#pj_pf_leasing_judet').val();
	var localitate = jQuery('#pj_pf_leasing_localitate').val();
	if(firma == "") {
		alert('Nu ai ales nicio companie de leasing!');
	}
	else {
		if(firma == "alta" && (denumire == "" || cui == "" || judet == "" || localitate == "")) {
			alert('Nu ai completat toate informatiile companiei de leasing!');
		}
		else {
			SeteazaValoare('pj_pf_leasing', $('pj_pf_leasing')[$('pj_pf_leasing').selectedIndex].text);
			Restrange('ajax_pj_pf_leasing', 'ajax_pj_stare_vehicul_pf', '_inc_ajax_pas1.php?url=pj-03-stare-vehicul');
			AfiseazaAsiguratori('pj_pf', 0);
			AfiseazaBaraStare('ajax_pj_stare_vehicul_pf');
		}
	}
}

function LocalitatiLeasing(tip_pers) {
	jQuery('#'+tip_pers+'_leasing_localitate').html('<option value="">alege o localitate</option>');
	PopuleazaSelectLocalitati(''+tip_pers+'_leasing_judet', ''+tip_pers+'_leasing_localitate', '');
}

function VerificaTipInmatriculareNumar() { //sa nu mai apara nr. de inmatriculare daca e in vederea inmatricularii/inregistrarii
	return false;
}


