/* <initialization> */
$(document).ready(function()
{
	if ($("#searchresults").length > 0)
		initSearchResults();

	if ($("#searchbox").length > 0){
		initSearchBox();
                sortlistvalue(document.getElementById("search_merk"));
        }
        if ($("#fbsearchbox").length > 0){
		initSearchBox();
                sortlistvalue(document.getElementById("search_merk"));
        }

	if ($("#cardetails #images").length > 0) {
		initImageSelector();
                /* lightbox close*/
                $("#lightboxfiller").click(function(){
                        $("#imgpopup").css('display','none');
                        $("#lightboxfiller").css('display','none');
                        $("#tellafriend").remove();
                        $("#friendsend").remove();
                        $("#closetellafriendimage").remove();
                        $("#requestinfo").remove();
                        $("#financeinfo").remove();
                });
                 $("#closeimage").click(function(){
                        $("#imgpopup").css('display','none');
                        $("#lightboxfiller").css('display','none');
                        $("#tellafriend").remove();
                        $("#friendsend").remove();
                        $("#closetellafriendimage").remove();
                        $("#requestinfo").remove();
                        $("#financeinfo").remove();
                });
        }

        $("#closetellafriendimage").click(function(){
            $("#friendsend").css('display','none');
            $("#closetellafriendimage").css('display','none');
            $("#tellafriend").remove();
        });
        
         var mailx = "info";
         mailx = mailx +"@import";
         mailx = mailx +"wereld.";
         mailx = mailx +"nl";
        // $("#addyx").attr("href","mailto:"+mailx+$("#addyx").attr("href"));
        $(".carname a").attr('href','#');
        $(document).scrollTop();
});
/* </initialization> */

/* <searchresults> */
function initSearchResults()
{
	$(".importcar").mouseover(function()
	{
		$(this).addClass("over");
	}).mouseout(function()
	{
		$(this).removeClass("over");
	});
}
/* </searchresults> */

/* <searchbox> */
function initSearchBox()
{
    //Toevoeging Marc
    $("#searchbox #searchfields").css('display')=='none' ? $("#searchswitch").html('Zoeken') : $("#searchswitch").html('Sluiten');
    
	$("#searchswitch").click(function()
	{
		var status = $("#searchbox #searchfields").css('display');
		$("#searchbox #searchfields").slideToggle(500,function(){
                  if($(this).css('display')=='none'){
                       $("#searchswitch").html('Zoeken')
                   }
                   else {
                      $("#searchswitch").html('Sluiten')
                   }
                });
		$.ajax({url: "/session.php?closebox=" + (status == "block" ? 'true' : 'false')});
	});

	if($("#searchbox #search_merk").val() != '-1') {
		getModels($("#searchbox #search_merk").val());
        }

	$("#searchbox #search_merk").change(function()
	{
		getModels($(this).val());
	});

	$("#searchbox #equipmentbox #selectEq").click(function()
	{
		$("#equipmentlist").jqmShow(); 
		return false;
	});

	$("#equipmentlist").jqm({overlay: 50, modal: false, trigger: false, onHide:closeEquipmentList});
	saveEqList();

        $(".jqmDeselect").live('click',function(){$("#equipmentlist input").attr("checked",0)
        });
}


function getModels(make)
{
	$.getJSON("autotype.php?make=" + make, function(data)
	{
		var getval = '-1';
                if(queryString('model')) {queryString('model').replace(/\+/g,' ')}
                var currentmodel = $("#currentmodel").html();
		var list = $("#search_type");
		list.find('option:not(:first)').remove();
		for(var i=0,ilang=data.length; i<ilang ; i++ )
		{
			//var option = new Option(data[i], data[i]);
                        var option = $('<option>', {
                              text:data[i],
                              value:data[i]
                        });
                        if(data[i].indexOf("-klasse")!=-1) {
                            option.addClass("optionhead");
                        }
                        if(data[i].indexOf("-serie")!=-1) {
                            option.addClass("optionhead");
                        }
			list.append(option);
                        if(option.attr('value')==currentmodel) {
                            getval = currentmodel;
                        }
		}
		list.val(getval);
	});
        
}

function closeEquipmentList(hash)
{
	saveEqList();
	
	hash.w.hide();
	hash.o.fadeOut('fast');
}

function saveEqList()
{
	var box = $("#searchbox");
	var list = $("#equipmentlist");
	var eq = "";
	list.find("input:checked").each(function()
	{
		eq += $(this).parent().text() + ', ';
	});
	eq = eq != "" ? eq.substring(0, eq.length -2) : "- Geen -";
	box.find(".selected").html(eq);
}

/* </searchbox> */
function requestinfo(carid) {
     $("#requestinfo").remove();
     var requestinfobox = $('<div/>',{
         id:'requestinfo'
     });
     requestinfocontent = '<div id="closerequestinfo" class="closerequestinfo">X</div><h2>E-mail voor meer informatie</h2><div id="requestinfoform">Stuur mij meer informatie over deze '+$("h1").html()+'.<br>';
     requestinfocontent=requestinfocontent+'<div class="kop">Verzender</div><ul id="requestlist"><li>Naam*</li><li><input type="field" name="fromname"></li><li>Emailadres</li><li><input type="field" name="frommail"></li><li id="sendcopy"><input type="checkbox" id="sendcopy" name="sendcopy" value="true" style="float: left" /></li><li>Stuur kopie naar mezelf</li></ul>';
     //requestinfocontent=requestinfocontent+'<div id="suboptions" class="suboptions"><input type="checkbox" id="sendcopy" name="sendcopy" value="true" />&nbsp;Stuur kopie naar mezelf</div>';
//     requestinfocontent=requestinfocontent+'<div class="kop">Ontvanger</div><ul><li>Naam ontvanger*</li><li><input type="field" name="toname"></li><li>Emailadres ontvanger*</li><li><input type="field" name="tomail"></li></ul>';
     requestinfocontent=requestinfocontent+'<br class="clearer"><input type="hidden" name="carid" value="'+carid+'"><input type="button" class="button" value="Verstuur" id="requestinfosend"></div>';
     requestinfobox.html(requestinfocontent);
     $("#lightboxfiller").css('display','block');
     $("#sitebody").append(requestinfobox);
     $("#requestinfo #requestinfosend").click(function(){
        fields = $("#requestinfo").find(":input").serializeArray();
        $.post('/sendarequestinfo.php',fields,function(data){
              if(data==1) {
                        $("#requestinfoform").remove();
                        $("#requestinfo").remove();
                        $("#lightboxfiller").css('display','none');
                        alert("Bericht verstuurt");
              }
              else {alert(data);}
        });
     });
     
     $("#requestinfo #closerequestinfo").click(function(){
        $("#requestinfo").remove();
        $("#lightboxfiller").css('display','none');
     });
}

function financeinfo(carid) {
     $("#financeinfo").remove();
     var financeinfobox = $('<div/>',{
         id:'financeinfo'
     });
     financeinfocontent = '<div id="closefinanceinfo" class="closefinanceinfo">X</div><h2>Financiering</h2><div id="financeinfoform">Neem contact met mij op over de financiering van deze '+$("h1").html()+'.<br>';
     financeinfocontent=financeinfocontent+'<div class="kop">Verzender</div><ul id="requestlist"><li>Naam</li><li><input type="field" name="fromname"></li><li>Emailadres</li><li><input type="field" name="frommail"></li><li>Telefoonnummer</li><li><input type="field" name="fromtel"></li></ul>';
     financeinfocontent=financeinfocontent+'<br class="clearer"><br><input type="hidden" name="carid" value="'+carid+'"><input type="button" class="button" value="Verstuur" id="financeinfosend"></div>';
     financeinfobox.html(financeinfocontent);
     $("#lightboxfiller").css('display','block');
     $("#sitebody").append(financeinfobox);
     $("#financeinfo #financeinfosend").click(function(){
        fields = $("#financeinfo").find(":input").serializeArray();
        $.post('/sendafinanceinfo.php',fields,function(data){
              if(data==1) {
                        $("#financeinfoform").remove();
                        $("#financeinfo").remove();
                        $("#lightboxfiller").css('display','none');
                        alert("Bericht verstuurt");
              }
              else {alert(data);}
        });
     });

     $("#financeinfo #closefinanceinfo").click(function(){
        $("#financeinfo").remove();
        $("#lightboxfiller").css('display','none');
     });
}

function tellafriend(carid) {
     $("#tellafriend").remove();
     var friendbox = $('<div/>',{
         id:'tellafriend'
     });
     friendcontent = '<div id="closetellafriendimage" class="closetellafriendimage">X</div><h2>Informeer een vriend</h2><div id="friendform">Stuur informatie over deze '+$("h1").html()+' naar een vriend.<br>';
     friendcontent=friendcontent+'<div class="kop">Verzender</div><ul><li>Naam*</li><li><input type="field" name="fromname"></li><li>Emailadres</li><li><input type="field" name="frommail"></li></ul>';
     friendcontent=friendcontent+'<div class="kop">Ontvanger</div><ul><li>Naam ontvanger*</li><li><input type="field" name="toname"></li><li>Emailadres ontvanger*</li><li><input type="field" name="tomail"></li></ul>';
     friendcontent=friendcontent+'<br class="clearer"><input type="hidden" name="carid" value="'+carid+'"><input type="button" class="button" value="Verstuur" id="friendsend"></div>';
     friendbox.html(friendcontent);
     $("#lightboxfiller").css('display','block');
     $("#sitebody").append(friendbox);
     $("#tellafriend #friendsend").click(function(){
        fields = $("#tellafriend").find(":input").serializeArray();
        $.post('/sendafriend.php',fields,function(data){
              if(data==1) {
                        $("#tellafriend").remove();
                        $("#lightboxfiller").css('display','none');
                        alert("Bericht verstuurt");
              }
              else {alert(data);}

        });
     });
     
     $("#tellafriend #closetellafriendimage").click(function(){
        $("#tellafriend").remove();
        $("#lightboxfiller").css('display','none');
     });
}

/* <imageselector> */
function initImageSelector()
{
	var images = $("#cardetails #images img.carimage");
	var large = images.filter(".large");

	images.each(function()
	{
		$(this).imagesLoaded(function()
		{
			correctAspectRatio(this);
			$(this).parent().removeClass('loading');
		});
	});

	$("#sideimages ul li").click(function()
	{
                $("#imgpopup").css('display','block');
                $("#lightboxfiller").css('display','block');
		$(this).addClass("selected").siblings().removeClass("selected");
		var src = $(this).find("img.carimage.small").attr("src").replace('carThumb', 'carImg');

		if (src != large.attr("src"))
		{
			large.parent().addClass('loading');
			large.siblings(".loader").height(large.height());
			large.siblings(".loader").width(large.width());
			large.removeClass('height100');
			large.attr("src", src);
		}
	}).mouseover(function()
	{
		$(this).addClass("over");
	}).mouseout(function()
	{
		$(this).removeClass("over");
	});
        $("#defaultimage").click(function(){
            $("#imgpopup").css('display','block');
            $("#lightboxfiller").css('display','block');
        });
}

function correctAspectRatio(img)
{
	var r1 = $(img).parent().width() / $(img).parent().height();
	var r2 = $(img).width() / $(img).height();
	if (r1 > r2)
	{
		$(img).addClass('height100');
	}
}
/* </imageselector> */

/* <misc> */
function queryString(varname)
{
	var hu = window.location.search.substring(1);
	var gy = hu.split("&");
	for (var i=0;i<gy.length;i++)
	{
		var ft = gy[i].split("=");
		if (ft[0] == varname)
		{
			return unescape(ft[1]);
		}
	}
	return false;
}

function showSearchbox(show){
    if(show == 'true'){
        document.getElementById('searchbox').style.visibility = 'visible';
    }else{
        document.getElementById('searchbox').style.visibility = 'hidden';
    }
}

function goCar(url) {
    // optional to pass search variables to the details page.
    //document.location = url+"?"+window.location.search.substring(1);
    document.location = url
}
/* </misc> */
/* sort listbox */
function sortlistvalue(lb) {
        var selectedval = lb.value;
	var arrTexts = new Array();
	for(i=0; i<lb.length; i++) {
		arrTexts[i] = lb.options[i].text+':'+lb.options[i].value;
	}
	arrTexts.sort();
	for(i=0; i<lb.length; i++) {
		el = arrTexts[i].split(':');
		lb.options[i].text = el[0];
		lb.options[i].value = el[1];
	}
        lb.value = selectedval;
}

function checkMailAddress(field) {
var email = field.value;
var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    if (!filter.test(email)) {
        alert('U heeft een onjuist email adres opgegeven');
        field.focus;
        return false;
    }
    return true;
}

function validate(fieldid1,/*fieldid2,fieldid3,fieldid4,*/fieldid5,/*fieldid6,*/fieldid7,fieldid8) {
    var field = new Array();
    field[0] = document.getElementById(fieldid1);
//    field[1] = document.getElementById(fieldid2);
//    field[2] = document.getElementById(fieldid3);
//    field[3] = document.getElementById(fieldid4);
    field[4] = document.getElementById(fieldid5);
//    field[5] = document.getElementById(fieldid6);
    field[6] = document.getElementById(fieldid7);
    field[7] = document.getElementById(fieldid8);
    
    for(tmp in field){
        if (field[tmp].value.length == 0)
        {
            alert("Niet alle verplichte velden zijn ingevuld.");
            field[tmp].focus();
            return false;
        }
    }

    /*if(numberOnly(field[5]) == false){
        alert("Het bouwjaar dat u opgegeven heeft bevat niet numerieke karakters");
        field[5].focus();
        return false;
    }*/
    if(numberOnly(field[6]) == false){
        alert("Het telefoonnummer dat u opgegeven heeft bevat niet numerieke karakters");
        field[6].focus();
        return false;
    }
    if(!checkMailAddress(field[7])){
        return false;
    }
    return true;
}


function numberOnly(field)
{
    var check = true;
    var value = field.value; //get characters
    //check that all characters are digits, ., -, or ""
    for(var i=0;i < field.value.length; ++i)
    {
        var new_key = value.charAt(i); //cycle through characters
        if(((new_key < "0") || (new_key > "9")) && 
            !(new_key == ""))
        {
            check = false;
            break;
        }
    }
    return check;
}

function goBack() {
    history.go(-1);
}
