/* $Id: na_common.js,v 1.9 2009/04/28 05:00:26 diptidhruve Exp $ */

// This method is Used in Simple Search and Vehicle Post forms.
var textureName='';
var optChar='';
var optGroup='';
var textureGroup='';
var make_opt='';

/** ---- Car Functions ---- **/
function car_vehicleTypeChange(vehicleid,v2,curval,cond,v3)
{
    var bflag=1;

    /** If browser is IE but version is not 6.0 then flag will be false */
    if(navigator.appVersion.indexOf('MSIE') != -1 && navigator.appVersion.indexOf('MSIE 6.0') == -1 && navigator.appVersion.indexOf('MSIE 7.0') == -1)
        bflag=0;
    if(navigator.appName == 'Netscape' && !(parseFloat(navigator.appVersion) >= 4.8))
        bflag=0;

    if(isNaN(curval))
        var id_make='';
    else
        var id_make=curval;

    textureName='';
    if(vehicleid != '')     /** Vehicle Type is selected */
    {
        v2.length=1;
        var j=1;

        if(v2.length != 0)
            v2.selectedIndex=0;

        for(i=0; i < car_m1.length; i++)
        {
            goFlag=0;
            arrMakeInfo=(car_m1[i]).split('#');
            arrMakeTypeInfo=(arrMakeInfo[3]).split(',');

            for(k=0; k < arrMakeTypeInfo.length; k++)
            {
                if(arrMakeTypeInfo[k] == vehicleid)
                    goFlag=1;
            }
            if(goFlag == 0)
                continue;

            var make_value=arrMakeInfo[0];
            var make_text=arrMakeInfo[1];

            /** Changes has been made for displaying makes in option group wise. */
            /** i.e. Starting with char A will listed below A Group, same as for B to Z. */
            if(make_text.match(/^[A-Za-z]{1}/) && (!(navigator.userAgent.match(/Opera/))) && bflag == 1)
            {
                optChar='';
                optChar=make_text.substr(0,1);
                optGroup='T';

                if(textureName != optChar)
                {
                    textureName=optChar;
                    textureGroup=document.createElement('optgroup');
                    textureGroup.label=textureName;
                    v2.appendChild(textureGroup);
                }
            }
            else
                optGroup='F';

            if(optGroup != 'F' && textureName != '')
            {
                make_opt=document.createElement('option');
                make_opt.value=make_value;

                if(navigator.userAgent.match(/IE/))
                {
                    if(id_make == make_value)
                        make_opt.setAttribute("selected","selected");

                    make_opt.innerText=make_text;
                }
                else
                    make_opt.text=make_text;

                textureGroup.appendChild(make_opt);
            }
            else
            {
                makeOpt=new Option(make_text,make_value);
                eval('v2.options[j]=makeOpt');
            }

            /** Option group part ends here */
            if(id_make == make_value)
                v2.selectedIndex=j;

            j++;
        }
        if(v2.selectedIndex == ''  || v2.selectedIndex < 1)
            v2.selectedIndex=0;
    }
    else
    {
        /** When Vehicle Type is not selected (Simple Search) */
        v2.length=1;
        var j=1;

        for(i=0; i < car_m1.length; i++)
        {
            arrMakeInfo=(car_m1[i]).split('#');

            var make_value=arrMakeInfo[0];
            var make_text=arrMakeInfo[1];

            /** Changes has been made for displaying makes in option group wise. */
            /** i.e. Starting with char A will listed below A Group, same as for B to Z. */
            if(make_text.match(/^[A-Za-z]{1}/) && (!(navigator.userAgent.match(/Opera/))) && bflag == 1)
            {
                optChar='';
                optChar=make_text.substr(0,1);
                optGroup='T';

                if(textureName != optChar)
                {
                    textureName=optChar;
                    textureGroup=document.createElement('optgroup');
                    textureGroup.label=textureName;
                    v2.appendChild(textureGroup);
                }
            }
            else
                optGroup='F';

            if(optGroup != 'F' && textureName != '')
            {
                make_opt=document.createElement('option');
                make_opt.value=make_value;

                if(navigator.userAgent.match(/IE/))
                    make_opt.innerText=make_text;
                else
                    make_opt.text=make_text;

                textureGroup.appendChild(make_opt);
            }
            else
            {
                makeOpt=new Option(make_text,make_value);
                eval('v2.options[j]=makeOpt');
            }

            /** Option group part ends here */
            if(id_make == make_value)
                v2.selectedIndex=j;

            j++;
        }
    }
}

// Used in Simple Search, Advance Search and Vehicle Post forms.
function car_makeChange(v1,v2,curval,cond,vehicleid)
{
    if(v1.selectedIndex > -1)
        var makeid=new String(v1.options[v1.selectedIndex].value)
    else
        var makeid='';

    if(isNaN(curval))
        var id_model='';
    else
        var id_model=curval;

    if(makeid != '' && makeid !='none')
    {
        if(cond == 'Y' || (v2.length > 0 && v2.options[0].value == ''))
        {
            v2.length=1;
            var j=1;
        }
        else    /** Posting Vehicle */
        {
            v2.length=0;
            var j=0;
        }
        if(cond == 'ADV')
        {
            /** Remove first element which is just blank */
            v2.length=0;
            var j=0;
        }

        if(v2.length != 0)
            v2.selectedIndex=0;

        if(car_m[makeid].length > 0)
        {
            if(cond == 'POST' || cond == 'ADV')
            {
                var make_value=v1.options[v1.selectedIndex].value+'#'+v1.options[v1.selectedIndex].text;
                var make_text=v1.options[v1.selectedIndex].text+': '+anyModel;

                if(cond == 'POST')
                {
                    var make_value='none';
                    var make_text=selectModel;
                }

                modelOpt=new Option(make_text,make_value);
                eval('v2.options[j++]=modelOpt');
            }
            arrModel=(car_m[makeid]).split(',');

            prvFchar=model_series_value='';
            var createSeriesFlag=false;

            for(i=0; i < arrModel.length; i++)
            {
                var model_id=arrModel[i];
                arrModelInformation=(car_c[model_id]).split('#');
                var model_value=model_id;
                var model_text=arrModelInformation[1];
                var goFlag=0;

                if(vehicleid != '')
                {
                    /** Vehicle Posting */
                    arrVehicleTypeCounter=arrModelInformation[3].split(/[@,]/);

                    for(k=0; k < arrVehicleTypeCounter.length; k++,k++)
                    {
                        if(arrVehicleTypeCounter[k]==vehicleid && arrVehicleTypeCounter[k+1] >= 0)
                        {
                            goFlag=1;
                            break;
                        }
                    }
                }
                else    /** Admin -> Normal Vehicle Search (Without Vehicle Type) */
                    goFlag=1;

                if(goFlag == 1)
                {
                    modelOpt=new Option(model_text,model_value);
                    eval('v2.options[j]=modelOpt');

                    if(id_model == model_value)
                        v2.selectedIndex=j;

                    j++;
                }
            }
        }
        if(cond != 'ADV')
        {
            if(v2.selectedIndex == ''  || v2.selectedIndex < 1)
                v2.selectedIndex=0;
        }
    }
    else
    {
        v2.length=1;
        var j=1;

        if(cond == 'ADV')
        {
            //selOpt=new Option('                                          ','');
			selOpt=new Option('','');
            eval('v2.options[0]=selOpt');
        }
        if(cond == 'POST')
        {
            selOpt=new Option(selectModel,'none');
            eval('v2.options[0]=selOpt');
        }
    }
}

// Function to add selected values from 'Model' fields
// into 'Selected models' field, used in Advanced search page
function addCarModel(v1,v2)
{
    if(!(v1.id_model.selectedIndex >= 0))
        return;

    if(v1.id_model[v1.id_model.selectedIndex].value != '')
    {
        if (v2.length > 0)
        {
            if(v2.options[0].value == '')
                document.adv.id_sel_model.length--;
        }

        if(v2.selectedIndex == 1)
            v2.selectedIndex=0;

        var tot=v2.length;
        var dup=0;

        for(o=0; o < tot; o++)
        {
            var tmpValue2=v2.options[o].value;
            var tmpValue=v1.id_model[v1.id_model.selectedIndex].value;

            if(tmpValue == tmpValue2)
            {
                dup=1;
                alert(msgDupSelected);
                break;
            }
            else if(tmpValue.match(/^([0-9]{1,})$/i) && tmpValue2.match(/^([0-9]{1,})#/i))
            {
                var makeid=tmpValue2.substr(0,tmpValue2.indexOf('#'));
                var make=tmpValue2.substr(tmpValue2.indexOf('#')+1,tmpValue2.length);

                arrModel=(car_m[makeid]).split(',');

                for(i=0; i < arrModel.length; i++)
                {
                    if(tmpValue == arrModel[i])
                    {
                        dup=1;
                        alert(makeAllSelected);
                        break;
                    }
                }
            }
            else if(tmpValue.match(/^([0-9]{1,})#/i))
            {
                var makeid=tmpValue.substr(0,tmpValue.indexOf('#'));
                var make=tmpValue.substr(tmpValue.indexOf('#')+1,tmpValue.length);

                arrModel=(car_m[makeid]).split(',');

                for(i=0; i < arrModel.length; i++)
                {
                    var model_value=new String(arrModel[i]);

                    for(h=0; h < tot; h++)
                    {
                        var v2Value=v2.options[h].value;

                        if(v2Value == model_value)
                        {
                            var j=0;

                            for(var r=h; r<tot;r++)
                            {
                                j=r+1;

                                if(j > (tot-1))
                                    j=tot-1;

                                var disp=v2.options[j].text;
                                var val=v2.options[j].value;

                                selOpt=new Option(disp,val);
                                eval('v2.options[r]=selOpt');
                            }
                            v2.length=tot-1;
                            tot=v2.length;
                        }
                    }
                }
            }
        }
        if(dup != 1)
        {
            if((v1.id_model[v1.id_model.selectedIndex].value).match(/^([0-9]{1,})#/i) )
                selOpt=new Option(v1.id_model[v1.id_model.selectedIndex].text,v1.id_model[v1.id_model.selectedIndex].value);
            else
            {
                str1=v1.id_model[0].text;
                selOpt=new Option(str1.slice(0,str1.indexOf(":"))+'-'+v1.id_model[v1.id_model.selectedIndex].text,v1.id_model[v1.id_model.selectedIndex].value);
            }

            eval('v2.options[tot]=selOpt');
        }
    }
}
/** ---- Car Functions  Over ---- **/

/** ---- New Car Functions ---- **/
function nw_vehicleTypeChange(v1,v2,curval,cond,v3)
{
    var vehicleid='';
    var bflag=1;

    /** If browser is IE but version is not 6.0 then flag will be false */
    if(navigator.appVersion.indexOf('MSIE') != -1 && navigator.appVersion.indexOf('MSIE 6.0') == -1 && navigator.appVersion.indexOf('MSIE 7.0') == -1)
        bflag=0;
    if(navigator.appName == 'Netscape' && !(parseFloat(navigator.appVersion) >= 4.8))
        bflag=0;

    if(isNaN(curval))
        var id_make='';
    else
        var id_make=curval;

    /** While posting, if vehicle type is changed change Make and Model as well */
    if(cond == 'POST' && v3.length > 0)
        v3.length=1;
    else if(cond == 'Y') /** Simple Search */
        v3.length=1;

    if(v1)
    {
        if(v1.length)
        {
            if(v1.selectedIndex > -1)
                var vehicleid=new String(v1.options[v1.selectedIndex].value);
            else
                var vehicleid='';
        }
        else
            var vehicleid=v1;
    }
    textureName='';

    if(vehicleid != '')     /** Vehicle Type is selected */
    {
        if(cond == 'Y' || (v2.length > 0 && v2.options[0].value == ''))
        {
            v2.length=1;
            var j=1;
        }
        else                /** Posting Vehicle */
        {
            v2.length=1;
            var j=1;
        }
        if(v2.length != 0)
            v2.selectedIndex=0;

        for(i=0; i < nw_m1.length; i++)
        {
            goFlag=0;
            arrMakeInfo=(nw_m1[i]).split('#');
            arrMakeTypeInfo=(arrMakeInfo[3]).split(',');

            for(k=0; k < arrMakeTypeInfo.length; k++)
            {
                if(arrMakeTypeInfo[k] == vehicleid)
                    goFlag=1;
            }
            if(goFlag == 0)
                continue;

            var make_value=arrMakeInfo[0];
            var make_text=arrMakeInfo[1];

            if(cond == 'POST' || arrMakeInfo[2] > 0)    /** Posting Vehicle && Simple Search */
            {
                /** Changes has been made for displaying makes in option group wise. */
                /** i.e. Starting with char A will listed below A Group, same as for B to Z. */
                if(make_text.match(/^[A-Za-z]{1}/) && (!(navigator.userAgent.match(/Opera/))) && bflag == 1)
                {
                    optChar='';
                    optChar=make_text.substr(0,1);
                    optGroup='T';

                    if(textureName != optChar)
                    {
                        textureName=optChar;
                        textureGroup=document.createElement('optgroup');
                        textureGroup.label=textureName;
                        v2.appendChild(textureGroup);
                    }
                }
                else
                    optGroup='F';

                if(optGroup != 'F' && textureName != '')
                {
                    make_opt=document.createElement('option');
                    make_opt.value=make_value;

                    if(navigator.userAgent.match(/IE/))
                    {
                        if(id_make == make_value)
                            make_opt.setAttribute("selected","selected");

                        make_opt.innerText=make_text;
                    }
                    else
                        make_opt.text=make_text;

                    textureGroup.appendChild(make_opt);
                }
                else
                {
                    makeOpt=new Option(make_text,make_value);
                    eval('v2.options[j]=makeOpt');
                }

                /** Option group part ends here */
                if(id_make == make_value)
                    v2.selectedIndex=j;

                j++;
            }
        }
        if(v2.selectedIndex == ''  || v2.selectedIndex < 1)
            v2.selectedIndex=0;

        if(cond == 'POST' && v2.length > 0) // Posting Vehicle
            newCar_makeChange(v2,v3,'','',v1);
    }
    else
    {
        /** When Vehicle Type is not selected (Simple Search) */
        v2.length=1;
        var j=1;

        for(i=0; i < nw_m1.length; i++)
        {
            arrMakeInfo=(nw_m1[i]).split('#');

            if(arrMakeInfo[2] > 0 || cond == 'ADV')
            {
                var make_value=arrMakeInfo[0];
                var make_text=arrMakeInfo[1];

                /** Changes has been made for displaying makes in option group wise. */
                /** i.e. Starting with char A will listed below A Group, same as for B to Z. */
                if(make_text.match(/^[A-Za-z]{1}/) && (!(navigator.userAgent.match(/Opera/))) && bflag == 1)
                {
                    optChar='';
                    optChar=make_text.substr(0,1);
                    optGroup='T';

                    if(textureName != optChar)
                    {
                        textureName=optChar;
                        textureGroup=document.createElement('optgroup');
                        textureGroup.label=textureName;
                        v2.appendChild(textureGroup);
                    }
                }
                else
                    optGroup='F';

                if(optGroup != 'F' && textureName != '')
                {
                    make_opt=document.createElement('option');
                    make_opt.value=make_value;

                    if(navigator.userAgent.match(/IE/))
                        make_opt.innerText=make_text;
                    else
                        make_opt.text=make_text;

                    textureGroup.appendChild(make_opt);
                }
                else
                {
                    makeOpt=new Option(make_text,make_value);
                    eval('v2.options[j]=makeOpt');
                }

                /** Option group part ends here */
                if(id_make == make_value)
                    v2.selectedIndex=j;

                j++;
            }
        }
    }
}

// Used in Simple Search, Advance Search and Vehicle Post forms.
function nw_makeChange(v1,v2,curval,cond,v3)
{
    var vehicleid='';

    if(v1.selectedIndex > -1)
        var makeid=new String(v1.options[v1.selectedIndex].value)
    else
        var makeid='';

    if( isNaN(curval))
        var id_model='';
    else
        var id_model=curval;

    if(v3)
    {
        if(v3.length)
        {
            if(v3.selectedIndex > -1)
                var vehicleid=new String(v3.options[v3.selectedIndex].value)
            else
                var vehicleid='';
        }
        else
            var vehicleid=v3;
    }
    if(makeid != '')
    {
        if(cond == 'Y' || (v2.length > 0 && v2.options[0].value == ''))
        {
            v2.length=1;
            var j=1;
        }
        else    /** Posting Vehicle */
        {
            v2.length=0;
            var j=0;
        }
        if(cond == 'ADV')
        {
            /** Remove first element which is just blank */
            v2.length=0;
            var j=0;
        }
        if(v2.length != 0)
            v2.selectedIndex=0;

        if(cond == 'ADV')
        {
            if(nw_m[makeid].length > 0)
            {
                var make_value=v1.options[v1.selectedIndex].value+'#'+v1.options[v1.selectedIndex].text;
                var make_text=v1.options[v1.selectedIndex].text+': '+anyModel;

                modelOpt=new Option(make_text,make_value);
                eval('v2.options[j++]=modelOpt');
            }
        }

        arrModel=(nw_m[makeid]).split(',');
        for(i=0; i < arrModel.length; i++)
        {
            var model_value=arrModel[i];
            var model_text=nw_c[arrModel[i]];

            modelOpt=new Option(model_text,model_value);
            eval('v2.options[j]=modelOpt');

            if(id_model == model_value)
                v2.selectedIndex=j;

            j++;
        }

        if(cond != 'ADV')
        {
            if(v2.selectedIndex == ''  || v2.selectedIndex < 1)
                v2.selectedIndex=0;
        }
    }
    else
    {
        v2.length=1;
        var j=1;

        if(cond == 'ADV')
        {
            //selOpt=new Option('                                          ','');
            selOpt=new Option('','');
            eval('v2.options[0]=selOpt');
        }
    }
}

// Function to add selected values from 'Model' fields
// into 'Selected models' field, used in Advanced search page
function addNwModel(v1,v2)
{
    if(!(v1.id_model.selectedIndex >= 0))
        return;

    if(v1.id_model[v1.id_model.selectedIndex].value != '')
    {
        if(v2.options[0].value == '')
            document.adv.id_sel_model.length--;

        if(v2.selectedIndex == 1)
            v2.selectedIndex=0;

        var tot=v2.length;
        var dup=0;

        for(o=0; o < tot; o++)
        {
            var tmpValue2=v2.options[o].value;
            var tmpValue=v1.id_model[v1.id_model.selectedIndex].value;

            if(tmpValue == tmpValue2)
            {
                dup=1;
                alert(msgDupSelected);
                break;
            }
            else if(tmpValue.match(/^([0-9]{1,})$/i) && tmpValue2.match(/^([0-9]{1,})#/i))
            {
                var makeid=tmpValue2.substr(0,tmpValue2.indexOf('#'));
                var make=tmpValue2.substr(tmpValue2.indexOf('#')+1,tmpValue2.length);

                arrModel=(nw_m[makeid]).split(',');

                for(i=0; i < arrModel.length; i++)
                {
                    if(tmpValue == arrModel[i])
                    {
                        dup=1;
                        alert(makeAllSelected);
                        break;
                    }
                }
            }
            else if(tmpValue.match(/^([0-9]{1,})#/i))
            {
                var makeid=tmpValue.substr(0,tmpValue.indexOf('#'));
                var make=tmpValue.substr(tmpValue.indexOf('#')+1,tmpValue.length);

                arrModel=(nw_m[makeid]).split(',');

                for(i=0; i < arrModel.length; i++)
                {
                    var model_value=new String(arrModel[i]);

                    for(h=0; h < tot; h++)
                    {
                        var v2Value=v2.options[h].value;

                        if(v2Value == model_value)
                        {
                            var j=0;

                            for(var r=h; r<tot;r++)
                            {
                                j=r+1;

                                if(j > (tot-1))
                                    j=tot-1;

                                var disp=v2.options[j].text;
                                var val=v2.options[j].value;

                                selOpt=new Option(disp,val);
                                eval('v2.options[r]=selOpt');
                            }
                            v2.length=tot-1;
                            tot=v2.length;
                        }
                    }
                }
            }
        }
        if(dup != 1)
        {
            if((v1.id_model[v1.id_model.selectedIndex].value).match(/^([0-9]{1,})#/i) )
                selOpt=new Option(v1.id_model[v1.id_model.selectedIndex].text,v1.id_model[v1.id_model.selectedIndex].value);
            else
            {
                str1=v1.id_model[0].text;
                selOpt=new Option(str1.slice(0,str1.indexOf(":"))+'-'+v1.id_model[v1.id_model.selectedIndex].text,v1.id_model[v1.id_model.selectedIndex].value);
            }

            eval('v2.options[tot]=selOpt');
        }
    }
}

function nwEngineModel(v1,v2,curval,curmodel)
{
    if(isNaN(curval))
        var id_model='';
    else
        var id_model=curval;

    if(curmodel != '' && curmodel != 0)
        var modelid=curmodel;
    else
    {
        if(v1)
        {
            if(v1.length)
            {
                if(v1.selectedIndex > -1)
                {
                    var modelid=new String(v1.options[v1.selectedIndex].value);
                }
                else
                    var modelid='';
            }
            else
                var modelid=v1;
        }
    }

    if(modelid != '')     //model is selected
    {
        if(v2.length > 0 && v2.options[0].value == '')
        {
            v2.length=1;
            j=1;
        }
        else
        {
            v2.length=0;
            j=0;
        }

        if(v2.length != 0)
            v2.selectedIndex=0;

        if(nw_engine_model[modelid] && nw_engine_model[modelid].length > 0)
        {
            var idEngineModel='';
            var engineModelVal=msgSelectEngModel;

            var modelOpt=new Option(engineModelVal,idEngineModel);
            eval('v2.options[0]=modelOpt');

            var arrEngModelInfo=(nw_engine_model[modelid]).split('#');

            for(var eng=0; eng<arrEngModelInfo.length; eng++)
            {
                var arrEachEngModelInfo=(arrEngModelInfo[eng]).split('|');

                idEngineModel=arrEachEngModelInfo[0];
                engineModelVal=arrEachEngModelInfo[1];

                var modelOpt=new Option(engineModelVal,idEngineModel);
                eval('v2.options[j]=modelOpt');

                if(id_model == idEngineModel)
                    v2.selectedIndex=j;

                j++;
            }
        }
        else
        {
            var idEngineModel='';
            var engineModelVal=msgSelectEngModel;

            var modelOpt=new Option(engineModelVal,idEngineModel);
            eval('v2.options[0]=modelOpt');
        }
    }
    else
    {
        v2.length=1;
        var j=1;

        var selOpt=new Option('','');
        eval('v2.options[0]=selOpt');
    }
}
/** --- New Car Function Over --- **/

/** ---- Bike Functions  Over ---- **/
function bike_vehicleTypeChange(v1,v2,curval,cond,bikeTypeId)
{
    var bflag=1;

    // If browser is IE but version is not 6.0 then flag will be false
    if(navigator.appVersion.indexOf('MSIE') != -1 && navigator.appVersion.indexOf('MSIE 6.0') == -1 && navigator.appVersion.indexOf('MSIE 7.0') == -1)
        bflag=0;
    if(navigator.appName == 'Netscape' && !(parseFloat(navigator.appVersion) >= 4.8))
        bflag=0;

    if(isNaN(curval))
        var id_make='';
    else
        var id_make=curval;

    // While posting, if vehicle type is changed change Make and Model as well
    if(cond == 'POST' && v3.length > 0)
        v3.length=1;
    else if(cond == 'Y') // Simple Search
        v3.length=1;

    if(bikeTypeId != '')     // Bike Type is selected
    {
        v2.length=1;
        var j=1;

        if(v2.length != 0)
            v2.selectedIndex=0;

        for(i=0; i < bike_m1.length; i++)
        {
            goFlag=0;
            arrMakeInfo=(bike_m1[i]).split('#');
            arrMakeTypeInfo=(arrMakeInfo[3]).split(',');

            for(k=0; k < arrMakeTypeInfo.length; k++)
            {
                if(arrMakeTypeInfo[k] == bikeTypeId)
                    goFlag=1;
            }
            if(goFlag == 0)
                continue;

            var make_value=arrMakeInfo[0];
            var make_text=arrMakeInfo[1];

            // Changes has been made for displaying makes in option group wise.
            // i.e. Starting with char A will listed below A Group, same as for B to Z.
            if(make_text.match(/^[A-Za-z]{1}/) && (!(navigator.userAgent.match(/Opera/))) && bflag == 1)
            {
                optChar='';
                optChar=make_text.substr(0,1);
                optGroup='T';

                if(textureName != optChar)
                {
                    textureName=optChar;
                    textureGroup=document.createElement('optgroup');
                    textureGroup.label=textureName;
                    v2.appendChild(textureGroup);
                }
            }
            else
                optGroup='F';

            if(optGroup != 'F' && textureName != '')
            {
                make_opt=document.createElement('option');
                make_opt.value=make_value;

                if(navigator.userAgent.match(/IE/))
                {
                    if(id_make == make_value)
                        make_opt.setAttribute("selected","selected");

                    make_opt.innerText=make_text;
                }
                else
                    make_opt.text=make_text;

                textureGroup.appendChild(make_opt);
            }
            else
            {
                makeOpt=new Option(make_text,make_value);
                eval('v2.options[j]=makeOpt');
            }

            // Option group part ends here
            if(id_make == make_value)
                v2.selectedIndex=j;

            j++;
        }
        if(v2.selectedIndex == ''  || v2.selectedIndex < 1)
            v2.selectedIndex=0;
    }
    else
    {
        // When Bike Type is not selected (Simple Search)
        v2.length=1;
        var j=1;

        for(i=0; i < bike_m1.length; i++)
        {
            arrMakeInfo=(bike_m1[i]).split('#');

            var make_value=arrMakeInfo[0];
            var make_text=arrMakeInfo[1];

            // Changes has been made for displaying makes in option group wise.
            // i.e. Starting with char A will listed below A Group, same as for B to Z.
            if(make_text.match(/^[A-Za-z]{1}/) && (!(navigator.userAgent.match(/Opera/))) && bflag == 1)
            {
                optChar='';
                optChar=make_text.substr(0,1);
                optGroup='T';

                if(textureName != optChar)
                {
                    textureName=optChar;
                    textureGroup=document.createElement('optgroup');
                    textureGroup.label=textureName;
                    v2.appendChild(textureGroup);
                }
            }
            else
                optGroup='F';

            if(optGroup != 'F' && textureName != '')
            {
                make_opt=document.createElement('option');
                make_opt.value=make_value;

                if(navigator.userAgent.match(/IE/))
                    make_opt.innerText=make_text;
                else
                    make_opt.text=make_text;

                textureGroup.appendChild(make_opt);
            }
            else
            {
                makeOpt=new Option(make_text,make_value);
                eval('v2.options[j]=makeOpt');
            }

            // Option group part ends here
            if(id_make == make_value)
                v2.selectedIndex=j;

            j++;
        }
    }
}

// Used in Simple Search, Advance Search and Vehicle Post forms.
function bike_makeChange(v1,v2,curval,cond,bikeTypeId)
{
    if(v1.selectedIndex > -1)
        var makeid=new String(v1.options[v1.selectedIndex].value)
    else
        var makeid='';

    if(isNaN(curval))
        var id_model='';
    else
        var id_model=curval;

    if(makeid != '' && makeid != 'none')
    {
        if(cond == 'Y' || (v2.length > 0 && v2.options[0].value == ''))
        {
            v2.length=1;
            var j=1;
        }
        else    // Posting Vehicle
        {
            v2.length=0;
            var j=0;
        }
        if(cond == 'ADV')
        {
            // Remove first element which is just blank
            v2.length=0;
            var j=0;
        }
        if(v2.length != 0)
            v2.selectedIndex=0;

        if(cond == 'ADV' || cond == 'POST')
        {
            if(bike_m[makeid])
            {
                if(bike_m[makeid].length > 0)
                {
                    var make_value=v1.options[v1.selectedIndex].value+'#'+v1.options[v1.selectedIndex].text;
                    var make_text=v1.options[v1.selectedIndex].text+': '+anyModel;

                    if(cond == 'POST')
                    {
                        var make_value='none';
                        var make_text=selectModel;
                    }

                    modelOpt=new Option(make_text,make_value);
                    eval('v2.options[j++]=modelOpt');
                }
            }
        }
        if(bike_m[makeid])
        {
            arrModel=(bike_m[makeid]).split(',');

            for(i=0; i < arrModel.length; i++)
            {
                var model_id=arrModel[i];
                arrModelInformation=(bike_c[model_id]).split('#');
                var model_value=model_id;
                var model_text=arrModelInformation[0];
                var goFlag=0;

                if(bikeTypeId != '')
                {
                    // Vehicle Posting
                    arrVehicleTypeCounter=arrModelInformation[2].split(/[@,]/);

                    for(k=0; k < arrVehicleTypeCounter.length; k++,k++)
                    {
                        if(arrVehicleTypeCounter[k] == bikeTypeId && arrVehicleTypeCounter[k+1] >= 0)
                        {
                            goFlag=1;
                            break;
                        }
                    }
                }
                else    // Admin -> Normal Vehicle Search (Without Vehicle Type)
                    goFlag=1;

                if(goFlag == 1)
                {
                    modelOpt=new Option(model_text,model_value);
                    eval('v2.options[j]=modelOpt');

                    if(id_model == model_value)
                        v2.selectedIndex=j;

                    j++;
                }
            }
        }
        if(cond != 'ADV')
        {
            if(v2.selectedIndex == ''  || v2.selectedIndex < 1)
                v2.selectedIndex=0;
        }
    }
    else
    {
        v2.length=1;
        var j=1;

        if(cond == 'ADV')
        {
            //selOpt=new Option('                                          ','');
            selOpt=new Option('','');
            eval('v2.options[0]=selOpt');
        }

        if(cond == 'POST')
        {
            selOpt=new Option(selectModel,'none');
            eval('v2.options[0]=selOpt');
        }
    }
}


// Function to add selected values from 'Model' fields
// into 'Selected models' field, used in Advanced search page
function addBikeModel(v1,v2)
{
    if(!(v1.id_model.selectedIndex >= 0))
        return;

    if(v1.id_model[v1.id_model.selectedIndex].value != '')
    {
        if(v2.options[0].value == '')
            document.adv.id_sel_model.length--;

        if(v2.selectedIndex == 1)
            v2.selectedIndex=0;

        var tot=v2.length;
        var dup=0;

        for(o=0; o < tot; o++)
        {
            var tmpValue2=v2.options[o].value;
            var tmpValue=v1.id_model[v1.id_model.selectedIndex].value;

            if(tmpValue == tmpValue2)
            {
                dup=1;
                alert(msgDupSelected);
                break;
            }
            else if(tmpValue.match(/^([0-9]{1,})$/i) && tmpValue2.match(/^([0-9]{1,})#/i))
            {
                var makeid=tmpValue2.substr(0,tmpValue2.indexOf('#'));
                var make=tmpValue2.substr(tmpValue2.indexOf('#')+1,tmpValue2.length);

                arrModel=(bike_m[makeid]).split(',');

                for(i=0; i < arrModel.length; i++)
                {
                    if(tmpValue == arrModel[i])
                    {
                        dup=1;
                        alert(makeAllSelected);
                        break;
                    }
                }
            }
            else if(tmpValue.match(/^([0-9]{1,})#/i))
            {
                var makeid=tmpValue.substr(0,tmpValue.indexOf('#'));
                var make=tmpValue.substr(tmpValue.indexOf('#')+1,tmpValue.length);

                arrModel=(bike_m[makeid]).split(',');

                for(i=0; i < arrModel.length; i++)
                {
                    var model_value=new String(arrModel[i]);

                    for(h=0; h < tot; h++)
                    {
                        var v2Value=v2.options[h].value;

                        if(v2Value == model_value)
                        {
                            var j=0;

                            for(var r=h; r<tot;r++)
                            {
                                j=r+1;

                                if(j > (tot-1))
                                    j=tot-1;

                                var disp=v2.options[j].text;
                                var val=v2.options[j].value;

                                selOpt=new Option(disp,val);
                                eval('v2.options[r]=selOpt');
                            }
                            v2.length=tot-1;
                            tot=v2.length;
                        }
                    }
                }
            }
        }
        if(dup != 1)
        {
            if((v1.id_model[v1.id_model.selectedIndex].value).match(/^([0-9]{1,})#/i) )
                selOpt=new Option(v1.id_model[v1.id_model.selectedIndex].text,v1.id_model[v1.id_model.selectedIndex].value);
            else
            {
                str1=v1.id_model[0].text;
                selOpt=new Option(str1.slice(0,str1.indexOf(":"))+'-'+v1.id_model[v1.id_model.selectedIndex].text,v1.id_model[v1.id_model.selectedIndex].value);
            }

            eval('v2.options[tot]=selOpt');
        }
    }
}

function bikeEngineModel(v1,v2,curval,curmodel)
{
    if(isNaN(curval))
        var id_model='';
    else
        var id_model=curval;

    if(curmodel != '' && curmodel != 0)
    {
        var modelid=curmodel;
    }
    else
    {
        if(v1)
        {
            if(v1.length)
            {
                if(v1.selectedIndex > -1)
                {
                    var modelid=new String(v1.options[v1.selectedIndex].value);
                }
                else
                    var modelid='';
            }
            else
                var modelid=v1;
        }
    }

    if(modelid != '')     //model is selected
    {
        if(v2.length > 0 && v2.options[0].value == '')
        {
            v2.length=1;
            j=1;
        }
        else
        {
            v2.length=0;
            j=1;
        }

        if(v2.length != 0)
            v2.selectedIndex=0;

        if(bike_engine_model[modelid] && bike_engine_model[modelid].length > 0)
        {
            var idEngineModel='0';
            var engineModelVal=msgSelectEngModel;

            var modelOpt=new Option(engineModelVal,idEngineModel);
            eval('v2.options[0]=modelOpt');

            var arrEngModelInfo=(bike_engine_model[modelid]).split('#');

            for(var eng=0; eng<arrEngModelInfo.length; eng++)
            {
                var arrEachEngModelInfo=(arrEngModelInfo[eng]).split('|');

                idEngineModel=arrEachEngModelInfo[0];
                engineModelVal=arrEachEngModelInfo[1];

                var modelOpt=new Option(engineModelVal,idEngineModel);
                eval('v2.options[j]=modelOpt');

                if(id_model == idEngineModel)
                    v2.selectedIndex=j;

                j++;
            }
        }
        else
        {
            var idEngineModel='';
            var engineModelVal=msgSelectEngModel;

            var modelOpt=new Option(engineModelVal,idEngineModel);
            eval('v2.options[0]=modelOpt');
        }
    }
    else
    {
        v2.length=1;
        var j=1;

        var selOpt=new Option(msgSelectEngModel,'');
        eval('v2.options[0]=selOpt');
    }
}
/** ---- Bike Functions  Over ---- **/

/** ---- Caravan Functions  Over ---- **/
function caravan_vehicleTypeChange(v1,v2,curval,cond,caravanTypeId)
{
    var bflag=1;

    // If browser is IE but version is not 6.0 then flag will be false
    if(navigator.appVersion.indexOf('MSIE') != -1 && navigator.appVersion.indexOf('MSIE 6.0') == -1 && navigator.appVersion.indexOf('MSIE 7.0') == -1)
        bflag=0;
    if(navigator.appName == 'Netscape' && !(parseFloat(navigator.appVersion) >= 4.8))
        bflag=0;

    if(isNaN(curval))
        var id_make='';
    else
        var id_make=curval;

    // While posting, if vehicle type is changed change Make and Model as well
    if(cond == 'POST' && v3.length > 0)
        v3.length=1;
    else if(cond == 'Y') // Simple Search
        v3.length=1;

    textureName='';

    if(caravanTypeId != '')     // Caravan Type is selected
    {
        v2.length=1;
        var j=1;

        if(v2.length != 0)
            v2.selectedIndex=0;

        for(i=0; i < caravan_m1.length; i++)
        {
            goFlag=0;
            arrMakeInfo=(caravan_m1[i]).split('#');
            arrMakeTypeInfo=(arrMakeInfo[3]).split(',');

            for(k=0; k < arrMakeTypeInfo.length; k++)
            {
                if(arrMakeTypeInfo[k] == caravanTypeId)
                    goFlag=1;
            }
            if(goFlag == 0)
                continue;

            var make_value=arrMakeInfo[0];
            var make_text=arrMakeInfo[1];

            // Changes has been made for displaying makes in option group wise.
            // i.e. Starting with char A will listed below A Group, same as for B to Z.
            if(make_text.match(/^[A-Za-z]{1}/) && (!(navigator.userAgent.match(/Opera/))) && bflag == 1)
            {
                optChar='';
                optChar=make_text.substr(0,1);
                optGroup='T';

                if(textureName != optChar)
                {
                    textureName=optChar;
                    textureGroup=document.createElement('optgroup');
                    textureGroup.label=textureName;
                    v2.appendChild(textureGroup);
                }
            }
            else
                optGroup='F';

            if(optGroup != 'F' && textureName != '')
            {
                make_opt=document.createElement('option');
                make_opt.value=make_value;

                if(navigator.userAgent.match(/IE/))
                {
                    if(id_make == make_value)
                        make_opt.setAttribute("selected","selected");

                    make_opt.innerText=make_text;
                }
                else
                    make_opt.text=make_text;

                textureGroup.appendChild(make_opt);
            }
            else
            {
                makeOpt=new Option(make_text,make_value);
                eval('v2.options[j]=makeOpt');
            }

            // Option group part ends here
            if(id_make == make_value)
                v2.selectedIndex=j;

            j++;
        }
        if(v2.selectedIndex == ''  || v2.selectedIndex < 1)
            v2.selectedIndex=0;
    }
    else
    {
        // When Vehicle Type is not selected (Simple Search)
        v2.length=1;
        var j=1;

        for(i=0; i < caravan_m1.length; i++)
        {
            arrMakeInfo=(caravan_m1[i]).split('#');

            var make_value=arrMakeInfo[0];
            var make_text=arrMakeInfo[1];

            // Changes has been made for displaying makes in option group wise.
            // i.e. Starting with char A will listed below A Group, same as for B to Z.
            if(make_text.match(/^[A-Za-z]{1}/) && (!(navigator.userAgent.match(/Opera/))) && bflag == 1)
            {
                optChar='';
                optChar=make_text.substr(0,1);
                optGroup='T';

                if(textureName != optChar)
                {
                    textureName=optChar;
                    textureGroup=document.createElement('optgroup');
                    textureGroup.label=textureName;
                    v2.appendChild(textureGroup);
                }
            }
            else
                optGroup='F';

            if(optGroup != 'F' && textureName != '')
            {
                make_opt=document.createElement('option');
                make_opt.value=make_value;

                if(navigator.userAgent.match(/IE/))
                    make_opt.innerText=make_text;
                else
                    make_opt.text=make_text;

                textureGroup.appendChild(make_opt);
            }
            else
            {
                makeOpt=new Option(make_text,make_value);
                eval('v2.options[j]=makeOpt');
            }

            // Option group part ends here
            if(id_make == make_value)
                v2.selectedIndex=j;

            j++;
        }
    }
}

// Used in Simple Search, Advance Search and Vehicle Post forms.
function caravan_makeChange(v1,v2,curval,cond,caravanTypeId)
{
    if(isNaN(curval))
        var id_model='';
    else
        var id_model=curval;

    if(v1.selectedIndex > -1)
        var makeid=new String(v1.options[v1.selectedIndex].value)
    else
        var makeid='';

    if(makeid != '' && makeid != 'none')
    {
        if(cond == 'Y' || (v2.length > 0 && v2.options[0].value == ''))
        {
            v2.length=1;
            var j=1;
        }
        else    // Posting Vehicle
        {
            v2.length=0;
            var j=0;
        }
        if(cond == 'ADV')
        {
            // Remove first element which is just blank
            v2.length=0;
            var j=0;
        }
        if(v2.length != 0)
            v2.selectedIndex=0;

        if(cond == 'ADV' || cond == 'POST')
        {
            if(caravan_m[makeid])
            {
                if(caravan_m[makeid].length > 0)
                {
                    var make_value=v1.options[v1.selectedIndex].value+'#'+v1.options[v1.selectedIndex].text;
                    var make_text=v1.options[v1.selectedIndex].text+': '+anyModel;

                    if(cond == 'POST')
                    {
                        var make_value='none';
                        var make_text=selectModel;
                    }

                    modelOpt=new Option(make_text,make_value);
                    eval('v2.options[j++]=modelOpt');
                }
            }
        }

        if(caravan_m[makeid])
        {
            arrModel=(caravan_m[makeid]).split(',');

            for(i=0; i < arrModel.length; i++)
            {
                var model_id=arrModel[i];

                arrModelInformation=(caravan_c[model_id]).split('#');
                var model_value=model_id;
                var model_text=arrModelInformation[0];
                var goFlag=0;

                if(caravanTypeId != '')
                {
                    // Vehicle Posting
                    arrVehicleTypeCounter=arrModelInformation[2].split(/[@,]/);

                    for(k=0; k < arrVehicleTypeCounter.length; k++,k++)
                    {
                        if(arrVehicleTypeCounter[k] == caravanTypeId && arrVehicleTypeCounter[k+1] >= 0)
                        {
                            goFlag=1;
                            break;
                        }
                    }
                }
                else    // Admin -> Normal Vehicle Search (Without Vehicle Type)
                    goFlag=1;

                if(goFlag == 1)
                {
                    modelOpt=new Option(model_text,model_value);
                    eval('v2.options[j]=modelOpt');

                    if(id_model == model_value)
                        v2.selectedIndex=j;

                    j++;
                }
            }
        }
        if(cond != 'ADV')
        {
            if(v2.selectedIndex == ''  || v2.selectedIndex < 1)
                v2.selectedIndex=0;
        }
    }
    else
    {
        v2.length=1;
        var j=1;

        if(cond == 'ADV')
        {
            selOpt=new Option('                                          ','');
            eval('v2.options[0]=selOpt');
        }

        if(cond == 'POST')
        {
            selOpt=new Option(selectModel,'none');
            eval('v2.options[0]=selOpt');
        }
    }
}

// Function to add selected values from 'Model' fields
// into 'Selected models' field, used in Advanced search page
function addCaravanModel(v1,v2)
{
    if(!(v1.id_model.selectedIndex >= 0))
        return;

    if(v1.id_model[v1.id_model.selectedIndex].value != '')
    {
        if(v2.options[0].value == '')
            document.adv.id_sel_model.length--;

        if(v2.selectedIndex == 1)
            v2.selectedIndex=0;

        var tot=v2.length;
        var dup=0;

        for(o=0; o < tot; o++)
        {
            var tmpValue2=v2.options[o].value;
            var tmpValue=v1.id_model[v1.id_model.selectedIndex].value;

            if(tmpValue == tmpValue2)
            {
                dup=1;
                alert(msgDupSelected);
                break;
            }
            else if(tmpValue.match(/^([0-9]{1,})$/i) && tmpValue2.match(/^([0-9]{1,})#/i))
            {
                var makeid=tmpValue2.substr(0,tmpValue2.indexOf('#'));
                var make=tmpValue2.substr(tmpValue2.indexOf('#')+1,tmpValue2.length);

                arrModel=(caravan_m[makeid]).split(',');

                for(i=0; i < arrModel.length; i++)
                {
                    if(tmpValue == arrModel[i])
                    {
                        dup=1;
                        alert(makeAllSelected);
                        break;
                    }
                }
            }
            else if(tmpValue.match(/^([0-9]{1,})#/i))
            {
                var makeid=tmpValue.substr(0,tmpValue.indexOf('#'));
                var make=tmpValue.substr(tmpValue.indexOf('#')+1,tmpValue.length);

                arrModel=(caravan_m[makeid]).split(',');

                for(i=0; i < arrModel.length; i++)
                {
                    var model_value=new String(arrModel[i]);

                    for(h=0; h < tot; h++)
                    {
                        var v2Value=v2.options[h].value;

                        if(v2Value == model_value)
                        {
                            var j=0;

                            for(var r=h; r<tot;r++)
                            {
                                j=r+1;

                                if(j > (tot-1))
                                    j=tot-1;

                                var disp=v2.options[j].text;
                                var val=v2.options[j].value;

                                selOpt=new Option(disp,val);
                                eval('v2.options[r]=selOpt');
                            }
                            v2.length=tot-1;
                            tot=v2.length;
                        }
                    }
                }
            }
        }

        if(dup != 1)
        {
            if((v1.id_model[v1.id_model.selectedIndex].value).match(/^([0-9]{1,})#/i) )
                selOpt=new Option(v1.id_model[v1.id_model.selectedIndex].text,v1.id_model[v1.id_model.selectedIndex].value);
            else
            {
                str1=v1.id_model[0].text;
                selOpt=new Option(str1.slice(0,str1.indexOf(':'))+'-'+v1.id_model[v1.id_model.selectedIndex].text,v1.id_model[v1.id_model.selectedIndex].value);
            }
            eval('v2.options[tot]=selOpt');
        }
    }
}

/** ----- Common Functions ---- **/
function removeModel(v1)
{
    var p=v1.id_sel_model.selectedIndex;
    var j=0;
    var tot=v1.id_sel_model.options.length;

    if(tot > p)
    {
        for(i=p; i <= tot; i++)
        {
            j=i+1;

            if(j > (tot-1))
                j=tot-1;

            var disp=v1.id_sel_model[j].text;
            var val=v1.id_sel_model[j].value;

            selOpt=new Option(disp,val);
            eval('v1.id_sel_model.options[i]=selOpt');
        }
    }
    v1.id_sel_model.length=tot-1;

    // If no option is there then add "any" as default
    if(v1.id_sel_model.options.length == 0)
    {
        selOpt=new Option('                                                      ','');
        eval('v1.id_sel_model.options[0]=selOpt');
    }
}

/** Change subType according to Vehicle Type */
function subTypeChange(vtype,subtype,curval,page)
{
    if(vtype)
    {
        if(vtype.length)
        {
            if(vtype.selectedIndex > -1)
                var vehicleid=new String(vtype.options[vtype.selectedIndex].value);
            else
                var vehicleid='';
        }
        else
            var vehicleid=vtype;
    }
    if(page == 'POST')
    {
        subtype.length=1;
        j=1;
    }
    else
    {
        subtype.length=1;
        j=1;
    }
    if(vehicleid != '')
    {
        if(sid[vehicleid])
        {
            for(i=0; i < sid[vehicleid].length; i++)
            {
                var svalue=new String(sid[vehicleid][i]);
                var stext=new String(stype[vehicleid][i]);

                sOpt=new Option(stext,svalue);
                eval('subtype.options[j]=sOpt');

                if(sid[vehicleid][i] == curval)
                    subtype.selectedIndex=j;

                j++;
            }
        }
    }
    else
    {
        /** When Vehicle Type is not selected (Simple Search) */
        var lstSubType='';

        for(z=0; z < vtype.length; z++)
        {
            if(sid[vtype.options[z].value])
            {
                for(i=0; i < sid[vtype.options[z].value].length; i++)
                {
                    var svalue=new String(sid[vtype.options[z].value][i]);

                    if((lstSubType.search('#'+svalue+'#')) == -1)
                    {
                        var stext=new String(stype[vtype.options[z].value][i]);

                        sOpt=new Option(stext,svalue);
                        eval('subtype.options[j]=sOpt');

                        if(curval == svalue)
                            subtype.selectedIndex=j;

                        j++;

                        lstSubType = lstSubType+'#'+svalue+'#,';
                    }
                }
            }
        }
    }
}

// Function to change year list box options
function yearChange(v1,v2,curval)
{
    var tot=v1.selectedIndex+1;

    if(tot == 1)
        tot=v1.options.length-1;

    if(curval == '' && v2.selectedIndex > 0)
        curval=v2.options[v2.selectedIndex].value;

    v2.length=1;

    for(i=1,j=1; i<tot; j++,i++)
    {
        temp=new Option(v1.options[i].value,v1.options[i].value);
        eval('v2.options[j]=temp');

        if(curval == v1.options[i].value)
            v2.selectedIndex=j;
    }
}

// Function to change price list box options
// sign argument is to display sign after the text
function priceChange(v1,v2,curval,sign)
{
    if(v1.selectedIndex < 1)
        var st=1;
    else
        var st=v1.selectedIndex;

    var tot=v1.length;
    v2.length=1;

    for(i=st,j=1; i < tot; j++,i++)
    {
        if(parseInt(v1.options[i].value) >= 1000)
        {
            var len=v1.options[i].value.length;
            var disp=v1.options[i].value;
            var disp1=disp.substr(0,len-3);
            var disp2=disp.substr(len-3,len);

            disp=disp1+' '+disp2+' '+sign;
        }
        else
            var disp=v1.options[i].value+' '+sign;

        temp=new Option(disp.replace('&euro;','?'),v1.options[i].value);
        eval('v2.options[j]=temp');

        if(curval == v1.options[i].value)
            v2.selectedIndex=j;
    }
}

// Function to change mileage list box options
function mileageChange(v1,v2,curval)
{
    if(v1.selectedIndex < 1)
        var st=1;
    else
        var st=v1.selectedIndex;

    var tot=v1.length;
    v2.length=1;

    for(i=st,j=1; i < tot; j++,i++)
    {
        temp=new Option(v1.options[i].value,v1.options[i].value);
        eval('v2.options[j]=temp');

        if(curval == v1.options[i].value)
            v2.selectedIndex=j;
    }
}

// Function to change engine size list box options
function engineChange(v1,v2,curval)
{
    if(v1.selectedIndex < 1)
        var st=1;
    else
        var st=v1.selectedIndex;

    var tot=v1.length;
    v2.length=1;

    for(i=st,j=1; i < tot; j++,i++)
    {
        temp=new Option(v1.options[i].value,v1.options[i].value);
        eval('v2.options[j]=temp');

        if(curval == v1.options[i].value)
            v2.selectedIndex=j;
    }
}

//Function to change the Length,Power and Price list box options
function listboxChange(v1,v2,curval,sign)
{
    if(v1.selectedIndex < 1)
        var st=1;
    else
        var st=v1.selectedIndex;

    if(curval == '' && v2.selectedIndex > 0)
        curval=v2.options[v2.selectedIndex].value;

    var tot=v1.length;
    v2.length=1;

    for(i=st,j=1; i < tot; j++,i++)
    {
        if (parseInt(v1.options[i].value) >= 1000)
        {
            var len=v1.options[i].value.length;
            var disp=v1.options[i].value;
            var disp1=disp.substr(0,len-3);
            var disp2=disp.substr(len-3,len);
            disp=disp1+' '+disp2;
        }
        else
            var disp=v1.options[i].value;

        if(sign != '')
            disp=disp+' '+sign;

        temp=new Option(disp,v1.options[i].value);
        eval("v2.options[j]=temp");

        if(curval == v1.options[i].value)
            v2.selectedIndex=j;
    }
}

function RemoveGroups(selectId,v2,make_txt)
{
    var lChars=new Array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');

    for(var chr=0; chr < lChars.length; chr++)
    {
        RemoveGroup(lChars[chr],selectId);
    }
}
function RemoveGroup(groupLabel,selectId)
{
    try
    {
        if(document.getElementById(selectId))
        {
            var selectList=document.getElementById(selectId);
            var eachGroup=selectList.firstChild;

            while(groupLabel != eachGroup.label)
            {
                eachGroup=eachGroup.nextSibling;
            }
            selectList.removeChild(eachGroup);
        }
    }
    catch(er){}
}

function categoryChange(category,subcategory,curval)
{
    if(category)
    {
        if(category.length)
        {
            if(category.selectedIndex > -1)
            {
                idCat=new String(category.options[category.selectedIndex].value);
            }
            else
                idCat='';
        }
        else
            idCat=category;
    }

    subcategory.length=0;
    j=0;

    if(idCat != '')
    {
        if(sId[idCat])
        {
            for(i=0; i < c.length; i++)
            {
                if(sCnt[idCat][i] > 0)
                {
                    if(sAvail[idCat][i].match(/NA/))
                    {
                        cvalue=new String(sId[idCat][i]);
                        ctext=new String(sName[idCat][i]);

                        cOpt=new Option(ctext,cvalue);
                        eval("subcategory.options[j]=cOpt");

                        if(sId[idCat][i] == curval)
                            subcategory.selectedIndex=j;
                        j++;
                    }
                }
            }
        }
    }
    else
    {
        j=0;
        subcategory.length=0;
    }
}
 /** Select DriveType using Selected Model in Posting page */
function carModelChange(vmodel,dType,selectedDType)
{
    dType.length=0;

    if(vmodel.selectedIndex >= 1 )
    {
        arrModelInfo=(car_c[vmodel[vmodel.selectedIndex].value]).split('#');
        arrIdDriveType=arrModelInfo[0].split(',');

        for(d=0; d < arrIdDriveType.length; d++)
        {
            var val=arrIdDriveType[d];
            var disp=driveType[val];

            selOpt=new Option(disp,val);
            eval('dType.options[d]=selOpt');

            if(selectedDType == val)
                dType.selectedIndex=d;
        }
    }
}