/*---- on DOM Ready ----*/
$(function() {
	/*---- change op selecteren order of aantal ----*/
	$(".toolTip").mouseenter(function(){
		$(this).find(".toolTipContent").css({display: "block", zIndex: "2000"});
	});
	$(".toolTip").mouseleave(function(){
		$(this).find(".toolTipContent").css({display: "none", zIndex: "0"});
	});	
	
	$("#cavShow, #cavSort").change(function() {
		getAanpassenData(1);
		//sendData(1,new Object);
	});
	
});

function updateModelsMP(merk, merkSelect) {
	$.post("cavUpdateModel.php", { merk:merk },
	function(modelData) {
		var modelOptionObj = "<option value=\"\">Geen voorkeur</option>\n";
		for (i in modelData) {
			modelOptionObj += "<option value=\"" + modelData[i].model + "\"" + (merkSelect == modelData[i].model ? "selected=\"selected\"" : "" ) + ">" + modelData[i].modelDisplay + "</option>\n";	
		}
		$(".multiPurposeMediaFormColomn #model").html(modelOptionObj);
	}, "json");
}

function updateModelsSA(merk, merkSelect) {
	$.post("cavUpdateModel.php", { merk:merk },
	function(modelData) {
		var modelOptionObj = "<option value=\"\">Kies een model</option>\n";
		for (i in modelData) {
			modelOptionObj += "<option value=\"" + modelData[i].model + "\"" + (merkSelect == modelData[i].model ? "selected=\"selected\"" : "" ) + ">" + modelData[i].modelDisplay + "</option>\n";	
		}
		$(".cavChangeSearchForm #modelSA").html(modelOptionObj);
	}, "json");
}


/*---- CavDataView ----*/
function getAanpassenData(pageNumber) {
	dataObj = new Object;
	
	$(".aanpassenStatus").each(function(i) {
		if ($(this).css("font-weight") == 700 || $(this).css("font-weight") == "bold") {
			dataObj[$(this).attr("rel")] = $(this).attr("rev");	
		}
	});

	$(".aanpassenBrandstof").each(function(i) {
		if ($(this).css("font-weight") == 700 || $(this).css("font-weight") == "bold") {
			dataObj[$(this).attr("rel")] = $(this).attr("rev");	
		}
	});
	$(".aanpassenTransmissie").each(function(i) {
		if ($(this).css("font-weight") == 700 || $(this).css("font-weight") == "bold") {
			dataObj[$(this).attr("rel")] = $(this).attr("rev");	
		}
	});
	$(".aanpassenCarrosserie").each(function(i) {
		if ($(this).css("font-weight") == 700 || $(this).css("font-weight") == "bold") {
			dataObj[$(this).attr("rel")] = $(this).attr("rev");	
		}
	});
	
	dataObj.merk = "";//$(".cavChangeSearchForm #merkSA").val();
	dataObj.model = "";//$(".cavChangeSearchForm #modelSA").val();

	dataObj.prijsVan = "";//$(".cavChangeSearchForm #minPrijsSA").val();
	dataObj.prijsTot = "";//$(".cavChangeSearchForm #maxPrijsSA").val();
	dataObj.kilometerstand = "";//$(".cavChangeSearchForm #kmMinSA").val() + "-" + $(".cavChangeSearchForm #kmMaxSA").val();
	dataObj.bouwjaarVan = "";//$(".cavChangeSearchForm #bouwjaarMinSA").val();
	dataObj.bouwjaarTot = "";//$(".cavChangeSearchForm #bouwjaarMaxSA").val();
	
	sendData(pageNumber, dataObj);
}

function sendData(pageNumber, optionObj) {
	$("#cavCarDataView").html("<div class=\"cavCarDataViewLoader\"><img src=\"images/layout/loader.gif\" alt=\"Autos worden geladen\" /><br /><label>Auto's worden geladen</label></div>");
	
	optionObj.pageNumber = pageNumber;
	optionObj.cavShow = $("#cavShow").val();
	optionObj.orderBy = $("#cavSort").val();
	
	getCarData(optionObj);
}

function getCarData(optionObj) {
	//alert(optionObj);
	//optionObj = new Object;
	
	$.post("cavgetdata-uniek.php", optionObj ,
		function(carData){
			buildView(carData);
		}, "json");	
}

function buildView(carData) {
	if (carData.succes == "ja")	{
		buildPager(carData.pager);
		$("#cavCarDataView").html("");
		for (i in carData.cars) {
			var dataDiv = "<div class=\"cavCarElement " + (carData.cars[i].actieprijs != "0,00" ? " cavCarElementAction":"") + "\" rel=\"" + carData.cars[i].autoid + ".html\">\n";
				dataDiv += "<div class=\"cavCarElementImage\">\n";
					if (carData.cars[i].thumb120 != "noImage") {
						dataDiv += "<img src=\"" + carData.cars[i].thumb120 + "\" />";
					} else {
						dataDiv += "<img src=\"images/layout/thumb120_nocar.jpg\" />";
					}			
				dataDiv +="</div>\n";
	
				dataDiv	+= "<div class=\"cavCarElementModel\">\n";
					dataDiv += "<span class=\"cavCarElementTitle\">Merk/Model</span>\n";
					dataDiv += "<strong class=\"cavCarElementModelTitle\">" + carData.cars[i].merk + " " + carData.cars[i].model + "</strong>\n";
					dataDiv += "<p>" + carData.cars[i].uitvoering + "</p>\n";
				dataDiv +="</div>\n";
	
				dataDiv	+= "<div class=\"cavCarElementSpecs\">\n";
						dataDiv	+= "<span class=\"cavCarElementTitle\">Specificaties</span><br clear=\"all\" />\n";
						dataDiv	+= "<strong>Bouwjaar</strong><span>" + carData.cars[i].bouwjaar + "</span><br clear=\"all\" />\n";
						dataDiv	+= "<strong>Brandstof</strong><span>" + carData.cars[i].brandstof + "</span><br clear=\"all\" />\n";
						dataDiv	+= "<strong>Km-stand</strong><span>" + carData.cars[i].kilometerstand + " km</span><br clear=\"all\" />\n";
						dataDiv	+= "<strong>Garantie</strong><span>" + (carData.cars[i].indicatiebovaglid == "J" ? "Bovag":"") + " " + (carData.cars[i].indicatienapdeelnemer == "j" ? "NAP":"") + " " + (carData.cars[i].merkgarantiecode1 != "" ? carData.cars[i].merkgarantie_omschrijving:"") + "</span><br clear=\"all\" />\n";
						//dataDiv	+= "<strong>Voertuigtype</strong><span>" + carData.cars[i].carType + "</span><br clear=\"all\" />\n";
				dataDiv	+= "</div>\n";
	
				dataDiv	+= "<div class=\"cavCarElementPrice\">\n";
					dataDiv	+= "<span class=\"cavCarElementTitle\">Vestiging/Prijs</span><br clear=\"all\" />\n";
					dataDiv	+= "<strong>Vestiging</strong><span>" + carData.cars[i].woonplaats_aanbieder + "</span><br clear=\"all\" />\n";
					if (carData.cars[i].actieprijs == "0,00") {
						dataDiv	+= "<strong>Prijs</strong><span class=\"cavCarPrice\">&euro; " + carData.cars[i].showroomvraagprijs + "</span><br clear=\"all\" />\n";
					} else {
						dataDiv	+= "<strong>Nieuwprijs</strong><span class=\"cavCarNewPrice\">&euro; " + carData.cars[i].showroomvraagprijs + "</span><br clear=\"all\" />\n";
						dataDiv	+= "<strong>Nu</strong><span class=\"cavCarActionPrice\">&euro; " + carData.cars[i].actieprijs + "</span><br clear=\"all\" />\n";
						dataDiv	+= "<strong>Uw voordeel</strong><span class=\"cavCarPriceReduction\">&euro; " + carData.cars[i].voordeel + "</span><br clear=\"all\" />\n";
					}
					dataDiv	+= "<br /><strong>Leaseprijs</strong><br clear=\"all\" />\n";
					dataDiv	+= "<strong>van: </strong><span class=\"cavCarPrice\">&euro; " + carData.cars[i].leaseprijsvan + "</span><br clear=\"all\" />\n";
					dataDiv	+= "<strong>voor:</strong><span class=\"cavCarPrice\">&euro; " + carData.cars[i].leaseprijsvoor + "</span><br clear=\"all\" />\n";
				dataDiv	+= "</div>\n";
			dataDiv +="</div>\n";
			$(dataDiv).appendTo($("#cavCarDataView"));
		}
		
		$(".cavCarElement").bind("click" , function() {
				location.href = $(this).attr("rel");
			});
	} else {
		$("#cavCarDataView").html("<div class=\"cavCarDataViewLoader\"><label><strong>Er zijn geen auto's gevonden die voldoen aan uw zoekopdracht.</strong></label></div>");
	}
//	updateTotalNumbers(carData.totals);
}

/*function updateTotalNumbers(totals) {
	if (totals.brandstof.B > 0) { $("#brandstofB").html(totals.brandstof.B); } else { $("#brandstofB").html(0); }
	if (totals.brandstof.D) { $("#brandstofD").html(totals.brandstof.D); } else { $("#brandstofD").html(0); }
	if (totals.brandstof.G) { $("#brandstofG").html(totals.brandstof.G); } else { $("#brandstofG").html(0); }
	if (totals.brandstof.E) { $("#brandstofE").html(totals.brandstof.E); } else { $("#brandstofE").html(0); }

	if (totals.transmissie.H) { $("#transmissieH").html(totals.transmissie.H); } else { $("#transmissieH").html(0); }
	if (totals.transmissie.A) { $("#transmissieA").html(totals.transmissie.A); } else { $("#transmissieA").html(0); }
	if (totals.transmissie.C) { $("#transmissieC").html(totals.transmissie.C); } else { $("#transmissieC").html(0); }
}*/

function buildPager(pager) {
	var totalPages = Math.ceil(pager.totalcarsfound / pager.maxcarpage);
	$(".cavPagerLeft").html("");
	if (totalPages > 1) {
		var pagerData = "";
			if (pager.pagenumber == 1) {
				var disabledPrev = " cavPrevBtnOff";
			} else {
				var disabledPrev = "";
			}
			
			if (pager.pagenumber == totalPages) {
				var disabledNext = " cavNextBtnOff";
			} else {
				var disabledNext = "";
			}
			
			pagerData += "<a href=\"#\" title=\"Vorige pagina\" class=\"cavPrevBtn" + disabledPrev + " pager\" rel=\"" + (parseInt(pager.pagenumber) - 1) + "\"></a>\n";
			pagerData += "<div class=\"cavPages\">\n";
				
				
			if (pager.pagenumber != 1) {
				pagerData += "<a href=\"#\" rel=\"1\" class=\"pager\" title=\"Pagina 1\">1</a>\n";
			} else {
				pagerData += "<span>1</span>\n";
			}
		
			if (pager.pagenumber > 5) {
				pagerData += "<span class=\"cavPagesDots\">...</span>\n";
	
				if ((pager.pagenumber-2) < (totalPages - 6)) {
					var startPage = (pager.pagenumber - 2);
				} else {
					var startPage = (totalPages - 6);
				}
	
				if ((startPage + 6) < totalPages) {
					var endPage = (startPage + 5) - 1;
				} else {
					var endPage = (totalPages - 1);
				}
			} else {
				var startPage = 2;
				if ((startPage + 5) < totalPages) {
					var endPage = (startPage + 5);
				} else {
					var endPage = (totalPages - 1);
				}
			}
	
			for (i = startPage; i <= endPage; i++) {
				if (i != pager.pagenumber) {
					pagerData += "<a href=\"#\" rel=\"" + i + "\" class=\"pager\" title=\"Pagina " + i + "\">" + i + "</a>\n";
				} else {
					pagerData += "<span>" + i + "</span>\n";
				}
			}
	
	
			if (endPage + 1 < totalPages) {
				pagerData += "<span class=\"cavPagesDots\">...</span>\n";
			}
			
			
			if (pager.pagenumber != totalPages) {
				pagerData += "<a href=\"#\" rel=\"" + totalPages + "\" class=\"pager\" title=\"Pagina " + totalPages + "\">" + totalPages + "</a>\n";
			} else {
				pagerData += "<span>" + totalPages + "</span>\n";
			}
			pagerData += "</div>\n";
			pagerData += "<a href=\"#\" title=\"Volgende pagina\" class=\"cavNextBtn" + disabledNext + " pager\" rel=\"" + (parseInt(pager.pagenumber) + 1) + "\"></a>\n";
		$(pagerData).appendTo($(".cavPagerLeft"));
	
		// opnieuw binden van clickevent aan de a href.
		$(".pager").bind('click',function() {
			$(this).css({cursor: "pointer"});
			$(this).removeAttr("href");
	
			// als ik niet de class canNextbtnOff of cavPrevBtnOff bevat dan mag ik nieuwe data ophalen.
			if (($(this).attr("className") != "cavPrevBtn cavPrevBtnOff pager") && ($(this).attr("className") != "cavNextBtn cavNextBtnOff pager")) {
				getAanpassenData($(this).attr("rel"));
				//sendData($(this).attr("rel"), new Object);
			}
		});
	}
}
