﻿var browser=navigator.appName;
var b_version=navigator.appVersion;
var version=parseFloat(b_version);
var isIE = browser=="Microsoft Internet Explorer";

// COMMON
function linkF(Id,imgUrl){try{document.images[Id].src=imgUrl;}catch(e){}}
function linkF2(Id,display){try{document.getElementById(Id).style.display=display;}catch(e){}}
function setCssClass(Id,cssClass){try{var obj=document.getElementById(Id);obj.setAttribute('class',cssClass);obj.setAttribute('className',cssClass);}catch(e){}}
function setPhoto(obj, pic) { obj.src = pic; }

function linkF3(Id, display) {
    var obj = document.getElementById('s'+Id);
    var objT = document.getElementById('t'+Id);
    if(!obj || !objT) return;
    
    linkF2('s'+Id, display);
    
    var top = objT.parentNode.offsetTop + 122 + 91;
    var left = objT.parentNode.offsetLeft + 1;
    if(isIE)
        top -= 10;
    obj.style.top = top + 'px';
    obj.style.left = left + 'px';
}

// SHOW ROOM - CAR PAGE
var ar = {};
var currentType;
var imageUrlBase;
var panelId, cColorPanel, bigImgId, descId, colorImgPrefix, cTypePrefix, minInt, maxInt, minExt, maxExt;
var featurePanelId, specPanelId, enqPanelId, enqSentPanelId;

function InitType(type) {
    var obj = document.getElementById(cColorPanel);
    var minC = type=='int'?minInt:minExt;
    var maxC = type=='int'?maxInt:maxExt;
    obj.innerHTML='';
    for(i=minC; i<=maxC; i++) {
        obj.innerHTML += '<a href="javascript:show(\''+type+'\','+i+');" onmouseover="show(\''+type+'\','+i+');" id="cC'+i+'"><img alt="" src="' + imageUrlBase + ar[type+i].smallImg + '" /></a>  ';
    }
    setCssClass(cColorPanel,cColorPanel+type);

    currentType = type;
}

function show(type, color) {
    if(currentType != type) {
        InitType(type);
    }
    linkF2(panelId, 'block');
    linkF2(specPanelId, 'none');
    linkF2(featurePanelId, 'none');
    linkF2(enqPanelId, 'none');
    linkF2(enqSentPanelId, 'none');
    
    var otherType = type=='int'?'ext':'int'; 
    setCssClass(cTypePrefix+type,'');
    setCssClass(cTypePrefix+otherType,'cTypeOff');
    
    var selected = ar[type+color];
    document.images[bigImgId].src=imageUrlBase+selected.bigImg;
    document.getElementById(descId).innerHTML = selected.desc;
    
    // This could be enhanced by looping associated array, the technique which I knew after I had written this code.
    //    for(var i in arr) {   // i is the key, e.g. (i == "int1")
    //	    var value = arr[i];
    //	    alert(i =") "+ value);
    //    }
    var i;
    var minC = type=='int'?minInt:minExt;
    var maxC = type=='int'?maxInt:maxExt;
    for(i=minC; i<=maxC; i++) {
        setCssClass(colorImgPrefix+i,color==i?'cCSelected':'');
    }
}

function showFeatures() {
    linkF2(panelId, 'none');
    linkF2(specPanelId, 'none');
    linkF2(featurePanelId, 'block');
    linkF2(enqPanelId, 'none');
    linkF2(enqSentPanelId, 'none');
}

function showSpecs() {
    linkF2(panelId, 'none');
    linkF2(specPanelId, 'block');
    linkF2(featurePanelId, 'none');
    linkF2(enqPanelId, 'none');
    linkF2(enqSentPanelId, 'none');
}

function showEnq() {
    linkF2(panelId, 'none');
    linkF2(specPanelId, 'none');
    linkF2(featurePanelId, 'none');
    linkF2(enqPanelId, 'block');
    linkF2(enqSentPanelId, 'none');
}

function close(){
    linkF2(panelId, 'none');
    linkF2(specPanelId, 'none');
    linkF2(featurePanelId, 'none');
    linkF2(enqPanelId, 'none');
    linkF2(enqSentPanelId, 'none');
}


// SHOW ROOM
var currG, currGA, currF, currC, imgRoot;
var f = {};
var g = {};

function SetCar(id,url) {
    currC = id;
    linkF(id,imgRoot+url);
}

function addGroup(groupId, img, imgHover) {
    g[groupId] = { 'img' : img, 'imgHover' : imgHover };
    
    // group events
    var objLI = document.getElementById(groupId+'_li');
    objLI.onmouseover = function() {
        displayGroup(groupId);
    }
    
    // group img events
    var objA = document.getElementById(groupId+'_a');
    objA.onmouseover = function() {
        displayGI(groupId);
    }
}

function addFamily(familyId, groupId, img, imgHover) {
    f[familyId] = { 'Group' : groupId, 'img' : img, 'imgHover' : imgHover };
    
    // family events
    var objF = document.getElementById(familyId+'_li');
    objF.onclick = function() {
        displayFamily(familyId,'block');
    }
    
    // family img events
    var objA = document.getElementById(familyId+'_a');
    objA.onmouseover = function() {
        displayFI(familyId);
    }
    objA.onmouseout = function() {
        hideFI(familyId);
    }
}

function displayGroup(id) {
    if(id == currG) return;
    
    linkF2(currG, 'none');
    linkF2(id, 'block');
    currG = id;
    /*if(currF) {
        linkF2(currF,'none');
        currF = null;
    }*/
}

function displayFamily(id) {
    if(id == currF) return;
    
    linkF2(currF, 'none');
    linkF2(id, 'block');
    displayFI(id);
    if(currF) 
        linkF(currF+'_img', imgRoot+f[currF].img);
    currF = id;
}

function displayGI(groupId) {
    if(groupId == currGA) return;
    
    if(currGA)
        linkF(currGA+'_img', imgRoot+g[currGA].img);
    linkF(groupId+'_img', imgRoot+g[groupId].imgHover);
    currGA = groupId;
}

function displayFI(familyId) {
    if(familyId == currF) return;
    
    linkF(familyId+'_img', imgRoot+f[familyId].imgHover);
}

function hideFI(familyId) {
    if(familyId == currF) return;
    
    linkF(familyId+'_img', imgRoot+f[familyId].img);
}

function hideCar(carId,url) {
    if(currC == carId)
        return;
    linkF(carId,url);
}


/* ONLINE SHOP */
var subCats = {};
var catId;
var subCatId; 

function addSubCats(id, args) {
    subCats[id] = args;
}

function InitOnlineShop() {
    var obj=document.getElementById(catId);
    if(obj) {
        obj.onchange = function() {
            UpdateSubCat();
        }
    }
}

function UpdateSubCat() {
    var ddlSub=document.getElementById(subCatId);
    for(var i=ddlSub.length; i>=1; i--) 
        ddlSub.remove(i);
    
    var id;
    var ddl = document.getElementById(catId);
    if(ddl.value.indexOf(',')==-1)
        id=ddl.value/1;

    if(!id)
        return;
    for(var i=0; i<subCats[id].length; i++) {
        var o = document.createElement('option');
        o.text = subCats[id][i];
        o.value = subCats[id][i];
        try {ddlSub.add(o, null);} catch(ex) {ddlSub.add(o); }
    }
}

/* CAR SALES SEARCH/ iFRAME */
function IFrame() {
    var pathname = window.location.pathname;

    if (pathname == "/pre-owned/default.aspx") {

        var v = $(".columns .rightColumn").remove();
        $('div.middle').css('width', 710);
        $('#leftImgs').removeAttr("style");

    }
}

