﻿/* Custom Built for Sites Created & Powered by timeMarketingInc ONLY */

var dealerlocationcentral = {
    hpActiveSelect: "dlOption0",

    dealerDB: new Array(
    // [(0):Brand, (1):State, (2):Name, (3):Address, (4):Tel, (5):Website],
        ["Chevrolet", "AL", "Landers McLarty Chevrolet", "4930 university Drive.<br/>Huntsville, AL 35816", "(256) 830-1600", "http://www.landersmclartychevrolet.com"],
        ["Ford|Dodge|Chrysler|Jeep", "AR", "Landers Mclarty Ford Dodge Chrysler Jeep", "2609 S. Walton Blvd.<br/>Bentonville, AR  72712", "(479) 273-9022", "http://www.landersmclarty.com"],
        ["Nissan", "AR", "Landers McLarty Nissan", "2501 SE Moberly Lane<br/>Bentonville, AR 72712", "(479) 845-8484", "http://www.bentonvillenissan.com"],
        ["Toyota", "TN", "Landers McLarty Toyota", "2970 Huntsville HWY<br/>Fayetteville, TN 37334", "(931) 438-6234", "http://www.landersmclartytoyota.com"],
        ["Scion", "TN", "Landers McLarty Scion", "2970 Huntsville HWY<br/>Fayetteville, TN 37334", "(931) 438-6234", "http://www.landersmclartyscion.com"],
        ["Dodge|Chrysler|Jeep", "KS", "Olathe Dodge Chrysler Jeep", "15500 W. 117th Street<br/>Olathe, KS 66062", "(913) 780-3700", "http://www.olathedodgechryslerjeep.com"],
       	["Dodge|Chrysler|Jeep", "MO", "Lees Summit Dodge Chrysler Jeep", "1051 Southeast Oldham PKWY<br/>Lees Summit, MO  64081", "(816) 525-9825", "http://www.leessummitdodgechryslerjeep.com"],
        ["Dodge|Chrysler|Jeep", "LA", "Landers Dodge Chrysler Jeep", "2701 Benton Road<br/>Bossier City, LA 71111", "(318) 797-1233", "http://www.golanders.com"],
       	["Ford|Chrysler|Dodge|Jeep", "MO", "Tri-lakes Motors", "180 ST. Hwy F<br/>Branson, MO 65616", "(888) 235-2247", "http://www.trilakesmotors.com"],
        ["Dodge|Chrysler|Jeep", "AL", "Landers McLarty Dodge Chrysler Jeep", "6533 University Drive NW<br/>Huntsville, AL 35804", "(256) 830-6450", "http://www.landersmclartydcj.com"],
		["Subaru", "AL", "Landers McLarty Subaru", "5790 University Drive<br/>Huntsville, AL 35806", "(256) 382-2425", "http://www.landersmclartysubaru.com"],
		["Fiat", "AL", "Landers McLarty Fiat", "6533 University Drive NW<br/>Huntsville, AL 35804", "(256) 830-6450", "http://www.fiatofhuntsville.com"],
        ["Nissan", "MO", "Lees Summit Nissan", "1025 SE Oldham<br/>Parkway, MO 64081", "(816) 977-7858", "http://www.lsnissan.com"],
        ["Harley Davidson", "AR", "Landers Harley Davidson", "10210 I-30<br/>Little Rock, AR 72209", "(501) 568-3160", "http://www.landersharleydavidson.com"],
        ["Harley Davidson", "AR", "Landers Harley Davidson", "1110 Collier Dr. Conway, AR 72032", "(501) 327-0817", "http://www.landersharleydavidson.com"],
        ["Harley Davidson", "AR", "Landers Harley Davidson", "4446 Central Avenue<br/>Hot Springs, AR 71913", "(501) 525-7468", "http://www.landersharleydavidson.com"],
        ["Buick|GMC", "TX", "Waxahachie Buick GMC", "1800 West Highway 287 Bypass<br/>Waxahachie, TX 75167", "(888) 221-2059", "http://www.waxahachiebpg.com"],
        ["Ford", "TX", "Waxahachie Ford", "2401 North I-35 East<br/>Waxahachie TX, 75167", "(888) 221-2154", "http://www.waxahachieford.com"],
        ["Dodge|Chrysler|Jeep", "TX", "Waxahachie Dodge Chrysler Jeep", "2401 North I-35 East<br/>Waxahachie, TX 75167", "(972) 425-4500", "http://www.waxahachiedodgechryslerjeep.com"],
        ["Nissan", "TX", "Nissan of Ft Worth", "3451 West Loop 820 S.<br/>Fort Worth, TX 76116", "(888) 228-0629", "http://www.nissanofftw.com"],
        ["Nissan", "AL", "Landers McLarty Nissan", "6520 University Drive<br/>Huntsville, AL 35806", "(856) 837-5752", "http://www.landersmclartynissanhuntsville.com"],
        ["Mercedes Benz", "AL", "Mercedes Benz of Huntsville", "6520 University Drive NW<br/>Huntsville, AL 35806-1718", "(256) 837-5752", "http://www.mercedesbenzofhuntsville.com"],
        ["Honda", "MD", "Bel Air Honda", "1800 Belair Rd. <br/>Fallston, MD 21047", "(410)-893-0600", "http://www.belairhonda.com"],
        ["Dodge|Chrysler|Jeep", "AL", "Landers McLarty Dodge Chrysler Jeep", "5080 Academy Ln<br/>Bessemer, AL 35022", "(888)-417-4307", "http://www.landersmclartydodgechryslerjeep.net"],
		["Fiat", "LA", "Landers Fiat", "1330 E. Bert Kouns Loop<br/>Shreveport, LA 71105", "(318) 626-0081", "http://www.fiatusaofshreveport.com"],
		["Fiat", "KS", "Olathe Fiat", "15500 W. 117th Street<br/>Olathe, KS 66062", "(913) 780-3700", "http://www.fiatusa.com"]
    ),

    iStates: new Array(
        ["Ar", "Arkansas"],
        ["al", "Alabama"],
		["md", "Maryland"],
		["mo", "Missouri"],
		["ks", "Kansas"],
		["tx", "Texas"],
		["tn", "Tennessee"],
		["la", "Louisiana"]
    ),

    iBrands: new Array(
        ["Nissan"],
        ["Subaru"],
		["Buick"],
		["Jeep"],
		["Toyota"],
		["Harley Davidson"],
		["Scion"],
        ["Chrysler"],
        ["Ford"],
        ["Honda"],
        ["Chevrolet"],
        ["Mercedes Benz"],
        ["Dodge"],
		["Fiat"],
		["GMC"]
    ),

    init: function () {
        if (/state=([\w]{2})/.test(location.href)) {
            this.chooseView(RegExp.$1);
        }
        else if (/brand=(\d+)?/.test(location.href)) {
            this.chooseView(parseInt(RegExp.$1), true);
        }
        else if (/dealerid=(\d+)?/.exec(location.href)) {
            this.chooseView(parseInt(RegExp.$1), "false");
        }
        else {
            this.buildList(this.dealerDB.sort(this.sortState), 'All Dealerships');
        }
    },

    onLoad: function () {
        if (/(dealerid|state|brand)=/.test(location.href)) {
            $(".list-opener").click();
        }
    },

    resetDD: function () {
        this.hpActiveSelect = arguments[0].value;
    },

    hpSearch: function () {
        location.href = this.hpActiveSelect;
    },

    sortBrand: function (a, b) {
        a = a[0];
        b = b[0];
        return a == b ? 0 : (a < b ? -1 : 1)
    },

    sortState: function (a, b) {
        a = a[1];
        b = b[1];
        return a == b ? 0 : (a < b ? -1 : 1)
    },

    tidyUpNameRE: function () {
        var tempArray = arguments[0].split('|');

        for (var t in tempArray) {
            if (new RegExp(tempArray[t]).test(arguments[1])) {
                tempArray.splice(t, 1);
                break;
            }
        }

        return tempArray.join("|");
    },

    chooseView: function () {
        var foundArrary = new Array();
        var iIndex = (arguments[1]) ? 0 : 1;
        var control = (arguments[1]) ? this.iBrands[arguments[0]] : arguments[0];

        for (var w in this.dealerDB) {
            if (arguments[1] && arguments[1] === "false" && new RegExp(arguments[0]).test(w)) {
                switch (arguments[0]) {
                    case 11:
                        foundArrary.push(this.dealerDB[12]);
                        foundArrary.push(this.dealerDB[13]);
                        break;
                    case 9:
                        foundArrary.push(this.dealerDB[21]);
                        break;
                    default:
                        break;
                }
                foundArrary.push(this.dealerDB[w]);
                break;
            }
            else if (new RegExp(this.dealerDB[w][iIndex].toLowerCase()).test(control.toString().toLowerCase())) {
                if (arguments[1]) {
                    var iPattern = new RegExp(this.tidyUpNameRE(this.dealerDB[w][0], control), "gi");
                    this.dealerDB[w][2] = this.dealerDB[w][2].replace(iPattern, "");
                }
                foundArrary.push(this.dealerDB[w]);
            }
        }

        if (foundArrary.length == 0) {
            this.buildList(this.dealerDB.sort(this.sortState), "All Dealerships");
        }
        else {
            if (arguments[1]) {
                this.buildList(foundArrary, (arguments[1] && arguments[1] === "false") ? "Dealership" : control);
            }
            else {
                var stateName = "";
                for (var s in this.iStates) {
                    if (new RegExp(this.iStates[s][0].toLowerCase()).test(control)) {
                        stateName = this.iStates[s][1];
                        break;
                    }
                }
                this.buildList(foundArrary, stateName);
            }
        }
    },

    buildList: function () {
        var iHTML = "";
        var iCol = iCount = 0; var iRow = 1;
        var iArray = arguments[0];

        iHTML += '<li class="slide-item"><div class="box-holder"><div class="box"><h2>' + arguments[1] + '</h2>';
        for (var f in iArray) {
            iHTML += '<a href="' + iArray[f][5] + '" target="_blank" class="info"><strong>' + iArray[f][2] + '</strong></a><br/>';
            iHTML += '<span style="font-size: 11px;">' + iArray[f][3] + '</span>';
            iHTML += '<div class="add-area"><span>' + iArray[f][4] + '</span>';
            //iHTML += '<ul><li><a href="' + iArray[f][5] + '" target="_blank" class="info">info</a></li>';
            //iHTML += '<li><a href="mailto:sbradley@mclarty.com" class="mail">mail</a></li>'
            //iHTML += '<li><a href="' + iArray[f][5] + '" target="_blank" class="computer">computer</a></li></ul>';
            iHTML += '</div>';
            iRow++;
            iCount++;

            if (iRow == 3) {
                iRow = 0;
                iCol++;
                iHTML += '</div><div class="box">';
            }

            if (iCol == 3) {
                iHTML += '</div></div></li>';
                if (iCount != arguments[0].length) {
                    iHTML += '<li class="slide-item"><div class="box-holder"><div class="box">';
                    iCol = 0;
                }
                else {
                    break;
                }
            }
            else if (iCount == arguments[0].length) {
                iHTML += '</div></div></li>';
                break;
            }
        }
        document.write(iHTML);
    }
}

$(document).ready(function() {
    dealerlocationcentral.onLoad();

    $("#homepageSearch").click(function() {
        dealerlocationcentral.hpSearch();
    });
});
