﻿/*
 * BilZonen Partnersites
 * http://www.bilzonen.dk/
 * Author: soe@bilzonen.dk
 * 
 * Copyright (c) 2009 BilZonen
 * http://www.bilzonen.dk/partnersites/
 * 
 * 
 * All use of this file and data access of services on ws.bilzonen.dk are 
 * restricted - terms of use are available at http://www.bilzonen.dk/partnersites/teu/
 *
 * Date: 21-09-2009
 * Versiob: 2.0.0.0
 */
var bzSearchbox;
var bzResultList;
var bzResultCarousel;
var bzMakeSelectBox;
var bzModelSelectBox;
var bzBodyTypeSelectBox;
var bzYearFromSelectBox;
var bzYearToSelectBox;
var bzKmFrom;
var bzKmTo;
var bzFuelTypeSelectBox;
var bodyTypeID = '-1';
var make = 'na';
var model = 'na';
var fuelTypeID = '-1';
var engineSize = '-1';
var priceFrom = '-1';
var priceTo = '-1';
var kmFrom = '-1';
var kmTo = '-1';
var yearFrom = '-1';
var yearTo = '-1';
var zipcode = '-1';
var version = 'na';
var newAds = false;
var autoGear = false;
var esp = false;
var priceRedux = false;
var manualGear = false;
var airCon = false;
var showOnlyWithPics = false;
var newSearch = false;
var pageObj = this;
var SearchResult;

function bzPopulateMakeSelect() {
    var b = '<option value="-1">Alle</option>';
    var c = $("#bzBodyTypeSelectBox").val();
    var d = gup('make');
    if ((c == '0') || (c == null)) c = -1;
    $.getJSON("http://ws.bilzonen.dk/service.asmx/GetMakes?format=json&ad_car_body_type_id=" + c + "&jsonp=?", function (a) {
        for (i = 0; i < a.makes.length; i++) {
            b += '<option ';
            if (d == a.makes[i].name_make) {
                b += ' selected '
            }
            b += 'value="' + escape(a.makes[i].name_make) + '">' + a.makes[i].name_make + ' (' + a.makes[i].ad_count + ')</option>'
        };
        $("#bzMakeSelectBox").html(b);
        bzPopulateModelSelect()
    })
};

function bzPopulateModelSelect() {
    var b = '<option value="-1">Alle</option>';
    var c = $("#bzBodyTypeSelectBox").val();
    var d = $("#bzMakeSelectBox").val();
    var e = gup('model');
    if ((c == '0') || (c == null)) c = -1;
    $.getJSON("http://ws.bilzonen.dk/service.asmx/GetModels?format=json&ad_car_body_type_id=" + c + "&make=" + d + "&jsonp=?", function (a) {
        for (i = 0; i < a.models.length; i++) {
            b += '<option ';
            if (e == a.models[i].name_model) {
                b += ' selected '
            }
            b += ' value="' + a.models[i].name_model + '">' + a.models[i].name_model + ' (' + a.models[i].ad_count + ')</option>'
        };
        $("#bzModelSelectBox").html(b)
    });
    if (d != '-1') {
        $("#bzModelSelectBox").attr("disabled", false)
    } else {
        $("#bzModelSelectBox").attr("disabled", true)
    }
};

function bzPopulateBodyTypeSelect() {
    var b = gup('bodytype');
    var c = '<option value="0">Alle</option>';
    $.getJSON("http://ws.bilzonen.dk/service.asmx/GetBodyTypes?format=json&jsonp=?", function (a) {
        for (i = 0; i < a.ad_body_types.length; i++) {
            c += '<option ';
            if (b == a.ad_body_types[i].ad_car_body_type_id) {
                c += 'selected'
            }
            c += ' value="' + a.ad_body_types[i].ad_car_body_type_id + '">' + a.ad_body_types[i].name + '</option>'
        };
        $("#bzBodyTypeSelectBox").html(c);
        bzPopulateMakeSelect()
    })
};

function bzPopulateYearFromSelect() {
    var a = '';
    var b = gup('yearFrom');
    var g = gup('yearTo');
    $.getJSON("http://ws.bilzonen.dk/service.asmx/GetAdCarYears?format=json&jsonp=?", function (e) {
        var f = e;
        var c = f;
        a += '<option value="-1">Fra</option>';
        for (i = 0; i < c.BZAdCarYears.length; i++) {
            a += '<option ';
            if (b == c.BZAdCarYears[i].bzyear) {
                a += 'selected '
            }
            a += 'value="' + c.BZAdCarYears[i].bzyear + '">' + c.BZAdCarYears[i].bzyear + '</option>'
        }
        $("#bzYearFromSelectBox").append(a);
        a = '';
        var d = f;
        a += '<option value="-1">Til</option>';
        for (i = 0; i < d.BZAdCarYears.length; i++) {
            a += '<option ';
            if (g == d.BZAdCarYears[i].bzyear) {
                a += 'selected '
            }
            a += 'value="' + d.BZAdCarYears[i].bzyear + '">' + d.BZAdCarYears[i].bzyear + '</option>'
        }
        $("#bzYearToSelectBox").append(a)
    })
};

function setTextBoxValues(a, b) {
    var c;
    c = gup(a);
    if ((c == null) || (c == '')) {
        return b
    } else {
        return c
    }
};

function bzPopulateFuelTypeSelect() {
    var a = '';
    var b = gup('fuelTypeID');
    a += '<option';
    if (b == '0') {
        a += ' selected'
    }
    a += ' value="0">Alle</option>';
    a += '<option';
    if (b == '1') {
        a += ' selected'
    }
    a += ' value="1">Benzin</option>';
    a += '<option';
    if (b == '2') {
        a += ' selected'
    }
    a += ' value="2">Diesel</option>';
    bzFuelTypeSelectBox.append(a)
};

function ResultCaptionBar() {
    var k = parseInt(gup('page_index'));
    var a = $("#bzSearchResulList");
    a.append($('<div></div>').attr("id", "bzSortNav").append('<div>Sorter efter: År:<a href="' + getUrl(k) + '&sc=year&so=asc' + '"><img src="css/biler/buttons/bzButtonAsc.png"/></a><a  href="' + getUrl(k) + '&sc=year&so=desc' + '"><img src="css/biler/buttons/bzButtonDesc.png"/></a> Km.: <a  href="' + getUrl(k) + '&sc=km&so=asc' + '"><img src="css/biler/buttons/bzButtonAsc.png"/></a><a  href="' + getUrl(k) + '&sc=km&so=desc' + '"><img src="css/biler/buttons/bzButtonDesc.png"/></a>Postnr:<a  href="' + getUrl(k) + '&sc=zip&so=asc' + '"><img src="css/biler/buttons/bzButtonAsc.png"/></a><a  href="' + getUrl(k) + '&sc=zip&so=desc' + '"><img src="css/biler/buttons/bzButtonDesc.png"/></a> Pris: <a  href="' + getUrl(k) + '&sc=price&so=asc' + '"><img src="css/biler/buttons/bzButtonAsc.png"/></a><a  href="' + getUrl(k) + '&sc=price&so=desc' + '"><img src="css/biler/buttons/bzButtonDesc.png"/></a></div>'))
}

function bzLoadResult() {
    var k = gup('sc');
    var l = gup('so');
    var d = parseInt(gup('page_index')) + 1;
    var e = parseInt(gup('page_index')) - 1;
    var f = 0;
    var g, last;
    var h = $('<div></div>').attr("id", "bzResultListNav");
    var m = $("#bzSearchResulList");
    $.getJSON("http://ws.bilzonen.dk/partnersites.asmx/SearchSortable?format=json&partnerID=" + partnerID + "&bodyTypeID=" + gup('bodytype') + "&make=" + gup('make') + "&model=" + gup('model') + "&fuelTypeID=" + gup('fuelTypeID') + "&engineSize=" + gup('engineSize') + "&priceFrom=" + gup('priceFrom') + "&priceTo=" + gup('priceTo') + "&kmFrom=" + gup('kmFrom') + "&kmTo=" + gup('kmTo') + "&yearFrom=" + gup('yearFrom') + "&yearTo=" + gup('yearTo') + "&zipcode=" + gup('z') + "&version=" + gup('v') + "&newAds=" + gup('na') + "&autoGear=" + gup('ag') + "&esp=" + gup('esp') + "&priceRedux=" + gup('pr') + "&airCon=" + gup('ac') + "&pageIndex=" + gup('page_index') + "&sop=" + gup('sop') + "&pageSize=" + numberOfItemsInResultList + "&sortColumn=" + k + "&sortOrder=" + l + "&jsonp=?", function (a) {
        var j = Math.ceil((parseInt(a.AdCarsTotal) / numberOfItemsInResultList));
        if (a.AdCarsTotal != -1) {
            if (e != 0) {
                h.append($('<div></div>').click(function () {
                    location.href = getUrl(1) + '&sc=' + k + '&so=' + l
                }).html('<< &nbsp;').attr("id", "firstResultLink"));
                h.append($('<div></div>').click(function () {
                    location.href = getUrl(e) + '&sc=' + k + '&so=' + l 
                }).html('< forrige').attr("id", "prevResultLink"))
            }
            if (parseInt(a.AdCarsTotal) / gup('page_index') > numberOfItemsInResultList) {
                f = numberOfItemsInResultList
            } else {
                f = parseInt(gup('page_index')) * numberOfItemsInResultList - parseInt(a.AdCarsTotal);
                if (f > 0) {
                    f = numberOfItemsInResultList - f
                }
            }
            if (f < numberOfItemsInResultList) {
                last = f;
                if (gup('page_index') != 1) {
                    last = a.AdCarsTotal
                }
            } else {
                last = parseInt(gup('page_index')) * numberOfItemsInResultList;
                h.append($('<div></div>').click(function () {
                    location.href = getUrl(j) + '&sc=' + k + '&so=' + l
                }).html('&nbsp; >>').attr("id", "lastResultLink"));
                h.append($('<div></div>').click(function () {
                    location.href = getUrl(d) + '&sc=' + k + '&so=' + l
                }).html('næste >').attr("id", "nextResultLink"))
            }
            if (e == 0) {
                g = 1
            } else {
                g = e * numberOfItemsInResultList + 1
            }
            h.append($('<div></div>').html('viser ' + g + ' til ' + last + ' af ' + a.AdCarsTotal).attr("id", "currentResult"));
            var b = $('<div></div>');
            h.clone(true).appendTo(b);
            m.append(h);
            var c = '';
            for (var i = 0; i < gup('page_size'); i++) {
                if (i < f) {
                    try {
                        m.append(renderBzHtml(a.adCarsSimple[i], i, g, a.AdCarsTotal))
                    } catch(err) {}
                    c += a.adCarsSimple[i].ad_car_id + ','
                }
            }
            c = c.substring(0, c.length - 1);
            m.append('<img src="http://stat.bilzonen.dk/log.gif?t=' + getLogDate() + '&amp;d=1|' + c + '|101&amp;r=' + getLogRandom() + '" />');
            m.append(b)
        } else {
            m.append($('<div></div>').attr("id", "bzNoCarsFoundDiv").html(noCarsFoundMessage))
        }
    })
};

function loadInitResultList() {
    $("#bzSearchResult h1").html("De nyeste biler på BilZonen.dk");
    var b = $("#bzSearchResulList");
    $.getJSON("http://ws.bilzonen.dk/partnersites.asmx/CarsNews?format=json&partnerID=" + partnerID + "&numberOfItems=" + numberOfItemsInResultList + "&priceFrom=10000&priceTo=1000000&jsonp=?", function (a) {
        if (a.AdCarsTotal != -1) {
            var c = '';
            for (var i = 0; i < 10; i++) {
                try {
                    b.append(renderBzHtml(a.adCarsSimple[i], i, 1, numberOfItemsInResultList))
                } catch(err) {}
                c += a.adCarsSimple[i].ad_car_id + ','
            }
            c = c.substring(0, c.length - 1);
            b.append('<img src="http://stat.bilzonen.dk/log.gif?t=' + getLogDate() + '&amp;d=1|' + c + '|101&amp;r=' + getLogRandom() + '" />')
        } else {
            b.append($('<div></div>').attr("id", "bzNoCarsFoundDiv").html(noCarsFoundMessage))
        }
    })
};

function renderBzHtml(b, c, d, e) {
    var f = $('<div></div>').addClass("bzSearchResultCarBox");
    if ((c % 2) > 0) {
        f.addClass("even")
    } else {
        f.addClass("odd")
    }
    f.mouseover(function () {
        f.addClass("listItemOver")
    }).mouseout(function () {
        f.removeClass("listItemOver")
    });
    var g = b.ad_car_id;
    var h = c + d;
    $.getJSON("http://ws.bilzonen.dk/partnersites.asmx/GetGalleryMainPhoto?format=json&adCarID=" + g + "&jsonp=?", function (a) {
        if (a.adCarPhotos.length != 0) {
            f.append($('<img></img>').attr("id", "bzResultListCarImage").attr("src", "http://billeder.bilzonen.dk/Car/" + a.adCarPhotos[0].sellerType + "/" + resultListImageSize + "/FFF/" + a.adCarPhotos[0].photoID + ".jpg").attr("alt", a.adCarPhotos[0].photoID + ".jpg"))
        } else {
            f.append($('<img></img>').attr("id", "bzResultListCarImage").attr("src", "http://billeder.bilzonen.dk/Car/Pro/" + resultListImageSize + "/FFF/" + g + ".jpg").attr("alt", "Der er intet billede på denne annonce"))
        }
    });
    var i = $('<div></div>').attr("id", "bzSpecs");
    var j = b.name_make + ' ' + b.name_model + ' ' + b.name_version;
    if (j.length > 35) {
        j = j.substring(0, 35) + '...'
    }
    var k = b.description;
    if ((k.substring(0, 1) == ",") || (k.substring(0, 1) == ";") || (k.substring(0, 1) == "-")) {
        k = k.substring(1, k.length)
    }
    if (k.length > 250) {
        k = k.substring(0, 250) + '...'
    }
    f.append($('<span></span>').attr("id", "bzCarNamePlaceHolder").append($('<h3></h3>').html(j))).append($('<span></span>').attr("id", "bzCarDescriptionPlaceHolder").append(k));
    i.append($('<span></span>').attr("id", "bzCarYearPlaceHolder").html('<strong>Årgang:</strong> ').append(FormatString(b.year_registration, '-1', '--'))).append($('<span></span>').attr("id", "bzCarKmPlaceHolder").html(' <strong>km.:</strong> ').append(FormatString(FormatNumber(b.km), '-1', '--'))).append($('<span></span>').attr("id", "bzCarPricePlaceHolder").html(' <strong>Pris:</strong> ').append('kr. ' + FormatString(FormatNumber(b.price), '-1', 'Ring for pris'))).append($('<span></span>').attr("id", "bzCarZipCodePlaceHolder").html(' <strong>Postnr.:</strong> ').append(b.dealer_zip_code));
    f.click(function () {
        var a = getUrl(gup('page_index')) + "&ad_car_id=" + g + "&ci=" + h + "&t=" + e + '&sc=' + gup('sc') + '&so=' + gup('so') + '&dealerID=' + b.DealerID;
        location.href = a
    });
    f.append(i);
    return f
};

function renderBZHtmlCar(b) {
    var c = $('<div></div>').attr("id", "bzCarDetailBox");
    var d = '';
    var e = $('<div></div>').attr("id", "bzCarDetailNavigation");
    var f = $('<div></div>').attr("id", "detail-container");
    e.append($('<div></div>').attr("style", "float:left;width:100%; left:10px; top:2px;position:relative; height:30px;").append(backToResultList).attr("style", "width:170px;cursor:pointer;font-weight:bold;float:left;").click(function () {
        location.href = getUrl(gup('page_index')) + '&sc=' + gup('sc') + '&so=' + gup('so')
    }));
    $.getJSON("http://ws.bilzonen.dk/partnerSites.asmx/GetCarDetail?format=json&adCarID=" + b + "&partnerSiteID=" + partnerID + "&jsonp=?", function (a) {
        f.append(('<h1 id="carName">' + a.name_make + ' ' + a.name_model + ' ' + a.name_version + '</h1>' + '<div id="addescription">' + '<table><tr><th></th><td></td></tr>' + '<tr><th>Kørt km</th>' + '<td align="right">' + FormatString(FormatNumber(a.km), '-1', '--') + '</td>' + '</tr>' + '<tr>' + '<th>Første registrering</th>' + '<td align="right">' + FormatString(a.month_registration, '-1', '--') + '/' + FormatString(a.year_registration, '-1', '--') + '</td>' + '</tr>' + '<tr>' + '<th>Farve</th>' + '<td align="right">' + a.color_name + '</td>' + '</tr>' + '<tr>' + '<th>Leveringsomkostninger</th>' + '<td align="right">' + FormatString(FormatNumber(a.cost_delivery), '-1', '--') + '</td>' + '</tr>' + '<tr>' + '<th class="price">' + '<h3><span class="highlighted">Pris</span></h3>' + '</th>' + '<td class="price">' + '<h3>Kr. ' + FormatString(FormatNumber(a.price), '-1', 'Ring for pris') + '</h3>' + '</td>' + '</tr>' + '</table>' + '<h3>Beskrivelse</h3>' + '<p style="overflow:hidden;">' + a.misc_description + '</p>' + '</div>' + '<div id="bilzonenInfo"><h2>På BilZonen.dk kan du:</h2>' + '<ul id="bilzonenLinks2">' + '<li><a href="http://www.bilzonen.dk/find-din-bil/kviknr?ad_car_id=' + b + '" target="_blank">Se specifikationer</a></li>' + '<li><a href="http://www.bilzonen.dk/find-din-bil/kviknr?ad_car_id=' + b + '" target="_blank">Beregne finansering</a></li>' + '<li><a href="http://www.bilzonen.dk/find-din-bil/kviknr?ad_car_id=' + b + '" target="_blank">Beregne forsikring</a></li>' + '</ul></div>' + '<img src="http://stat.bilzonen.dk/log.gif?t=' + getLogDate() + '&amp;d=1|' + b + '|201&amp;r=' + getLogRandom() + '" />'))
    });
    var g = $('<div></div>').attr("id", "gallery");
    d = $('<div></div>').attr("id", "imgDiv");
    $.getJSON("http://ws.bilzonen.dk/partnersites.asmx/GetGalleryMainPhoto?format=json&adCarID=" + b + "&jsonp=?", function (a) {
        if (a.adCarPhotos.length != '') {
            d.append($('<img></img>').attr("id", "imgLarge").attr("src", "http://billeder.bilzonen.dk/Car/" + a.adCarPhotos[0].sellerType + "/" + detailLargeImageSize + "/FFFFFF/" + a.adCarPhotos[0].photoID + ".jpg").attr("alt", a.adCarPhotos[0].photoID + ".jpg").click(function () {
                window.open('http://www.bilzonen.dk/annonce-galleri?ad_car_id=' + b + '&selectedimage=1', 'gallerywindow', 'height=643,width=764')
            }).addClass("clickable").attr("title", "Klik for at se større billeder"));
            g.append(d)
        } else {
            d.append($('<img></img>').attr("id", "imgLarge").attr("src", "http://billeder.bilzonen.dk/Car/Pro/" + detailLargeImageSize + "/FFFFFF/" + b + ".jpg").attr("alt", "Der er intet billede på denne annonce"));
            g.append(d)
        }
    });
    var h = $('<div></div>').attr("class", "boxed-due-to-boxmodel");
    var j = $('<ul></ul>').attr("id", "BzGalleryList").attr("class", "gallerylist");
    $.getJSON("http://ws.bilzonen.dk/partnersites.asmx/GetGalleryPhotoList?format=json&adCarID=" + b + "&jsonp=?", function (a) {
        var i = -1;
        for (i = 0; i < a.adCarPhotos.length; i++) {
            j.append($('<li></li>').append($('<img></img>').attr("id", a.adCarPhotos[i].photoID + "+" + a.adCarPhotos[i].sellerType).attr("src", "http://billeder.bilzonen.dk/Car" + a.adCarPhotos[i].sellerType + "" + detailSmallImageSize + "/FFFFFF/" + a.adCarPhotos[i].photoID + ".jpg").attr("alt", a.adCarPhotos[i].photoID + ".jpg").bind("mouseover", function () {
                setImgLarge(this.id)
            })));
            h.append(j)
        }
        if (i > 0) {
            $('#imgDiv').after(h)
        }
    });
    $.getJSON("http://ws.bilzonen.dk/partnersites.asmx/GetDealerInfo?format=json&adCarID=" + b + "&jsonp=?", function (a) {
        g.append('<div class="dealerMailBox">' + '<div class="dealerName">' + '<div>' + '<h3>' + a.name + '</h3>' + '</div>' + '<div class="address">' + a.address + ' ' + a.zipcode + ' ' + a.city + '</div>' + '<div class="contacts">' + a.phone + '<br>' + '<a href="http://' + a.website + '" target="_blank">' + a.website + '</a>' + '</div>' + '</div>' + '<div style="float:left; clear:both; padding-top:15px; width:100%;">' + '<div class="mailBoxTitle" id="mailBoxTitle">' + 'Kontakt sælger' + '</div>' + '</div>' + '<div id="messageSent" class="messageSent" style="display:none;">' + 'Din besked er nu sendt til sælger' + '<br><hr style="color:#C52008"><br><div style="font-weight:normal;font-size:12px;"><b>Vær opmærksom på uægte annoncer!</b><br><br>' + 'Da vi desværre oplever forsøg på bedrageri og svindel igennem falske-annoncer, oprettet på BilZonen, skal du være opmærksom på følgende når du handler bil:<br><br>' + '- Priser der ligger markant under gennemsnitsprisen på lignende modeller.<br>' + '- Sælgere der kræver depositum eller forudbetaling tidligt i processen eller ved afsendelse af bilen.<br>' + '- Folk der kommunikerer på på engelsk, altid lige er flyttet fra landet, eller når bilen står i udlandet.<br><br>' + 'Vi anbefaler at betale kontant ved besigtigelse eller igennem sikre betalingssystemer. <br>' + 'Alternativt er du velkommen til at kontakte vores support-afdeling, hvis du er i tvivl om ægtheden af en annonce:' + 'support@bilzonen.dk eller <br>tlf. 70 20 56 78 ' + '</div>' + '</div>' + '<div class="mailForm" id="mailForm"><input type="text" id="senderName" value="Dit navn" onclick="this.value= \'\'"><input type="text" id="senderEmail" value="Din e-mail" onclick="this.value= \'\'" ><input type="text" id="senderPhone" value="Dit telefonnummer" onclick="this.value= \'\'"><textarea id="messageText" style="text-align:left;" onkeyup="textAreaKeyUp(this)" onclick="this.value= \'\'">Din besked til sælger (max. 250 karakterer)' + '</textarea>' + '<div class="mailBoxFooter" id="mailBoxFooter"><span onclick="javascript:validateMailFields();" class="clickable" style="float: right; padding-top: 15px; padding-right: 5px; padding-bottom: 5px;"><button>Kontakt</button></span>' + '</div></div>')
    });
    var k = $('<div></div>').attr("style", "float:right;").append(' Næste >>');
    var l = $('<div></div>').attr("style", "float:right;").append('<< Forrige ');
    var m = $('<div></div>').attr("style", "float:right;").append(' &nbsp;viser ' + gup('ci') + ' af ' + gup('t') + '&nbsp;');
    if ((parseInt(gup('ci')) + 1) <= parseInt(gup('t'))) {
        k.addClass("clickable");
        k.click(function () {
            $.getJSON("http://ws.bilzonen.dk/partnersites.asmx/getNextResultSortable?format=json&partnerID=" + partnerID + "&bodyTypeID=" + gup('bodytype') + "&make=" + gup('make') + "&model=" + gup('model') + "&fuelTypeID=" + gup('fuelTypeID') + "&engineSize=" + gup('engineSize') + "&priceFrom=" + gup('priceFrom') + "&priceTo=" + gup('priceTo') + "&kmFrom=" + gup('kmFrom') + "&kmTo=" + gup('kmTo') + "&yearFrom=" + gup('yearFrom') + "&yearTo=" + gup('yearTo') + "&zipcode=" + zipcode + "&version=" + version + "&newAds=" + newAds + "&autoGear=" + autoGear + "&esp=" + esp + "&priceRedux=" + priceRedux + "&manualGear=" + manualGear + "&airCon=" + airCon + "&sop=" + gup('sop') + "&sortColumn=" + gup('sc') + "&sortOrder=" + gup('so') + "&pageIndex=" + (parseInt(gup('ci')) + 1) + "&pageSize=1&jsonp=?", function (a) {
                nextAdCarID = a.adCarID;
                location.href = getUrl(gup('page_index')) + "&ad_car_id=" + nextAdCarID + "&ci=" + (parseInt(gup('ci')) + 1) + "&t=" + a.adCarsTotal + '&sc=' + gup('sc') + '&so=' + gup('so') + "&dealerID=" + a.DealerID
            })
        })
    }
    if (0 > parseInt(gup('ci')) || parseInt(gup('ci')) <= parseInt(gup('t'))) {
        if (parseInt(gup('ci')) - 1 > 0) {
            l.addClass("clickable");
            l.click(function () {
                $.getJSON("http://ws.bilzonen.dk/partnersites.asmx/getNextResultSortable?format=json&partnerID=" + partnerID + "&bodyTypeID=" + gup('bodytype') + "&make=" + gup('make') + "&model=" + gup('model') + "&fuelTypeID=" + gup('fuelTypeID') + "&engineSize=" + gup('engineSize') + "&priceFrom=" + gup('priceFrom') + "&priceTo=" + gup('priceTo') + "&kmFrom=" + gup('kmFrom') + "&kmTo=" + gup('kmTo') + "&yearFrom=" + gup('yearFrom') + "&yearTo=" + gup('yearTo') + "&zipcode=" + zipcode + "&version=" + version + "&newAds=" + newAds + "&autoGear=" + autoGear + "&esp=" + esp + "&priceRedux=" + priceRedux + "&manualGear=" + manualGear + "&airCon=" + airCon + "&sop=" + gup('sop') + "&sortColumn=" + gup('sc') + "&sortOrder=" + gup('so') + "&pageIndex=" + (parseInt(gup('ci')) - 1) + "&pageSize=1&jsonp=?", function (a) {
                    prevAdCarID = a.adCarID;
                    location.href = getUrl(gup('page_index')) + "&ad_car_id=" + prevAdCarID + "&ci=" + (parseInt(gup('ci')) - 1) + "&t=" + a.adCarsTotal + '&sc=' + gup('sc') + '&so=' + gup('so') + '&dealerID=' +  a.DealerID
                })
            })
        }
    }
    if ((gup('ci') != '') && (gup('bodytype') != '')) {
        e.append(k);
        e.append(m);
        e.append(l)
    }
    f.append(e);
    f.append(g);
    c.append(f);
    $("#bzInnerContent").html(c)
};

function validateEmail(a) {
    var b = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    return b.test(a)
};

function validatePhone(a) {
    var b = new RegExp("\\d{8}", "g");
    return b.test(a)
};

function textAreaKeyUp(a) {
    bodyFilled = (a.value != '');
    if (a.value.length > 250) {
        a.value = a.value.substring(0, 249)
    }
};

function validateMailFields() {
    var a = $('#senderEmail').val();
    var b = $('#senderName').val();
    var c = $('#messageText').val();
    var d = $('#senderPhone').val();
    if (!validateEmail(a)) {
        currentInputId = 'senderEmail';
        alert('Du skal indstaste en gyldig email-adresse');
        return
    }
    if (!validatePhone(d)) {
        currentInputId = 'senderPhone';
        alert('Du skal indtaste dit tlf.nr. (8 cifre uden mellemrum)');
        return
    }
    contactDealer()
};

function contactDealer() {
    $.getJSON("http://ws.bilzonen.dk/partnersites.asmx/ContactDealer?format=json&partnerID=" + partnerID + "&adcarID=" + gup('ad_car_id') + "&name=" + $('#senderName').val() + "&mail=" + $('#senderEmail').val() + "&phone=" + $('#senderPhone').val() + "&mailMessage=" + $('#messageText').val() + "&carName=" + $('#carName').html() + "&jsonp=?");
    $('#messageSent').attr("style", "display:inline");
    $('#mailForm').attr("style", "display:none")
};

function setImgLarge(a) {
    $("#imgLarge").attr("src", "http://billeder.bilzonen.dk/Car" + a.split("+")[1] + "" + detailLargeImageSize + "/FFFFFF/" + a.split("+")[0] + ".jpg");
    $("#imgLarge").attr("alt", a.split("+")[0] + ".jpg")
};

function bzSearch() {
    bodyTypeID = $("#bzBodyTypeSelectBox").val();
    make = $("#bzMakeSelectBox").val();
    model = $("#bzModelSelectBox").val();
    fuelTypeID = $("#bzFuelTypeSelectBox").val();
    engineSize = $('#bzEngineSize').val();
    if (engineSize == '') {
        engineSize = ' '
    }
    priceFrom = $('#bzPriceFrom').val();
    priceFrom = priceFrom.replace(".", "").replace(".", "").replace(".", "");
    if ((priceFrom == 'Fra') || priceFrom == '') {
        priceFrom = 1
    }
    priceTo = $('#bzPriceTo').val();
    priceTo = priceTo.replace('.', "").replace('.', "").replace('.', "");
    if ((priceTo == 'Til') || priceTo == '') {
        priceTo = 1000000
    }
    kmFrom = $('#bzKmFrom').val();
    kmFrom = kmFrom.replace(".", "").replace(".", "").replace(".", "");
    if ((kmFrom == 'Fra') || kmFrom == '') {
        kmFrom = 1
    }
    kmTo = $('#bzKmTo').val();
    kmTo = kmTo.replace(".", "").replace(".", "").replace(".", "");
    if ((kmTo == 'Til') || kmTo == '') {
        kmTo = 999999
    }
    yearFrom = $("#bzYearFromSelectBox").val();
    if (yearFrom == 'Fra') {
        yearFrom = 1950
    }
    yearTo = $("#bzYearToSelectBox").val();
    if (yearTo == 'Til') {
        yearTo == 2025
    }
    var b = gup('so');
    var c = gup('sc');
    if (b == '') {
        b = 'asc'
    }
    if (c == '') {
        c = 'make'
    }
    zipcode = $("#bzZipCode").val();
    version = $("#bzVersion").val();
    if ((zipcode == 'na') || (zipcode == '')) {
        zipcode = -1
    }
    if (version == '') {
        version = 'na'
    }
    if ($("#bzNewAds").is(':checked')) {
        newAds = 'true'
    } else {
        newAds = 'false'
    }
    if ($("#bzAutomatGear").is(':checked')) {
        autoGear = 'true'
    } else {
        autoGear = 'false'
    }
    if ($("#bzEsp").is(':checked')) {
        esp = 'true'
    } else {
        esp = 'false'
    }
    if ($("#bzNewPrice").is(':checked')) {
        priceRedux = 'true'
    } else {
        priceRedux = 'false'
    }
    if ($("#bzAirCon").is(':checked')) {
        airCon = 'true'
    } else {
        airCon = 'false'
    }
    if ($("#bzOnlyWithPics").is(':checked')) {
        showOnlyWithPics = 'true'
    } else {
        showOnlyWithPics = 'false'
    }
    var a = carSearchUrl + "bodytype=" + bodyTypeID + "&make=" + make + "&model=" + model + "&fuelTypeID=" + fuelTypeID + "&engineSize=" + engineSize + "&priceFrom=" + priceFrom + "&priceTo=" + priceTo + "&yearFrom=" + yearFrom + "&yearTo=" + yearTo + "&kmFrom=" + kmFrom + "&kmTo=" + kmTo + "&v=" + version + "&z=" + zipcode + "&na=" + newAds + "&ag=" + autoGear + "&esp=" + esp + "&pr=" + priceRedux + "&ac=" + airCon + "&page_size=" + numberOfItemsInResultList + "&sop=" + showOnlyWithPics + "&ad_car_id=" + $('#bzKvikNo').val() + "&sc=" + c + "&so=" + b + "&page_index=" + 1;
    location.href = a
};

function bzSearchAndResult() {
    $('#bzContent').ajaxStart(function () {
        $('#bzContent').append($('<div></div>').attr("id", "galleryLoading").addClass("loading"))
    });
    $('#bzContent').ajaxStop(function () {
        $('#galleryLoading').remove()
    });
    $('#bzAdvancedSearchOptions').hide();
    $("a[href$=#advancedLink]").click(function () {
        $("#bzAdvancedSearchOptions").slideToggle(200)
    });
    $("h1:contains('Søg')").click(function () {
        $("#bzSearchBoxColumns").slideToggle(200);
        if ($("#bzArrow").attr("alt") == 'closed') {
            $("#bzArrow").attr("alt", "open");
            $("#bzArrow").addClass("bzArrowOpen").removeClass("bzArrowClosed")
        } else {
            $("#bzArrow").attr("alt", "closed");
            $("#bzArrow").addClass("bzArrowClosed").removeClass("bzArrowOpen")
        }
    });
    $.mask.masks.kmMsk = {
        mask: '999.999',
        type: 'reverse',
        setSize: true
    };
    $.mask.masks.priceMsk = {
        mask: '999.999.99.',
        type: 'reverse',
        setSize: true
    };
    $.mask.masks.engineSizeMsk = {
        mask: '9,9',
        type: 'reverse',
        setSize: true
    };
    $.mask.masks.kvikNrMsk = {
        mask: '999999',
        type: 'reverse',
        setSize: true
    };
    $.mask.masks.zipCodeMsk = {
        mask: '9999',
        type: 'reverse',
        setSize: true
    };
    $('input:text').setMask();
    if (gup('ad_car_id') == '') {
        $("#bzFuelTypeSelectBox").val(gup('fuelTypeID'));
        $("#bzEngineSize").val(setTextBoxValues("engineSize", ""));
        $("#bzKmFrom").val(setTextBoxValues("kmFrom", ""));
        $("#bzKmTo").val(setTextBoxValues("kmTo", ""));
        $("#bzPriceFrom").val(setTextBoxValues("priceFrom", ""));
        $("#bzPriceTo").val(setTextBoxValues("priceTo", ""));
        if (gup('v') != 'na') {
            $("#bzVersion").val(setTextBoxValues("v", ""))
        }
        if (gup('z') > '1') {
            $("#bzZipCode").val(setTextBoxValues("z", ""))
        }
        if (gup('na') == 'true') {
            $("#bzNewAds").attr("checked", "true")
        }
        if (gup('ag') == 'true') {
            $("#bzAutomatGear").attr("checked", "true")
        }
        if (gup('esp') == 'true') {
            $("#bzEsp").attr("checked", "true")
        }
        if (gup('pr') == 'true') {
            $("#bzNewPrice").attr("checked", "true")
        }
        if (gup('ac') == 'true') {
            $("#bzAirCon").attr("checked", "true")
        }
        if (gup('sop') == 'true') {
            $("#bzOnlyWithPics").attr("checked", "true")
        }
        bzPopulateBodyTypeSelect();
        $("#bzBodyTypeSelectBox").change(function () {
            bzPopulateMakeSelect();
            return false
        });
        bzPopulateMakeSelect();
        $("#bzMakeSelectBox").change(function () {
            bzPopulateModelSelect();
            return false
        });
        $("#bzModelSelectBox").attr("disabled", true);
        bzPopulateYearFromSelect();
        $("#bzSearchButton").click(function (a) {
            bzSearch()
        });
        $("#bzClearAllButton").click(function () {
            location.href = '?'
        })
    }
    if (gup('ad_car_id') != '') {
        $("#bzInnerContent").empty();
        renderBZHtmlCar(gup('ad_car_id'))
    } else if (gup('make') != '') {
        $("#bzSearchResulList").empty();
        ResultCaptionBar();
        bzLoadResult();
        $("#bzSearchBoxColumns").hide()
    } else {
        loadInitResultList()
    }
};