
        function load_selCriteria1(product) {

            var selBox1 = document.getElementById("selCriteria1"); //car: models, mc: mc category

            hide_selCriteria2();
            hide_selCriteria3();

            if (product=='CAR') {
                var url = '/hace/carModels.page?NPRICUST=268&CLANGISO=EN&LBLDOORS=D';
            } else {
                var url = '/hace/mcModelCategory.page?NPRICUST=268&CLANGISO=EN';
            }
            
            new Ajax.Request(url, {
                onSuccess: function(transport) {
                    var re = new RegExp("(\<select(.*?)\>)(.*?)(\<\/select\>)","i");
                    //get the default option from the dropdown, otherwise it gets lost
                    var sDefOpt= "<option value=\"\">"+$(selBox1).options[0].text+"</option>";
                    
                    $(selBox1).innerHTML = sDefOpt + transport.responseText;

                    if($(selBox1).outerHTML)
                    $(selBox1).outerHTML = $(selBox1).outerHTML.replace(re, "$1"+sDefOpt+transport.responseText+"$4");
                }
            });
            
            return 0;
        }

        function load_selCriteria2(product) {

            var selBox1 = document.getElementById("selCriteria1"); //car: models, mc: mc category
            var selBox2 = document.getElementById("selCriteria2"); //car: grades, mc: models
            var selBox3 = document.getElementById("selCriteria3");

            if (selBox3.style.visibility != 'hidden') {
                hide_selCriteria3();
            }

            if (product=='CAR') {
                var url = '/hace/carGrades.page?NPRICUST=268&CLANGISO=EN&NMOD='+selBox1.value.split(';')[0];
            } else {
                //var url = '/hace/mcModels.page?NPRICUST=268&CLANGISO=EN&CPRODHRCHGRP='+selBox1.value;
				var url = '/hace/mcModels.page?NPRICUST=268&CLANGISO=EN&CPRODHRCHGRP='+selBox1.value.split(';')[0]+'&CSGM='+selBox1.value.split(';')[1];
                document.getElementById("selSubmit").style.visibility='visible';
            }

            new Ajax.Request(url, {
                onSuccess: function(transport) {
                    //alert(transport.responseText);
                    var re = new RegExp("(\<select(.*?)\>)(.*?)(\<\/select\>)","i");

                    var sDefOpt= "<option value=\"\">"+$(selBox2).options[0].text+"</option>";
                    
                    $(selBox2).innerHTML = sDefOpt + transport.responseText;
                    
                    if($(selBox2).outerHTML)
                    $(selBox2).outerHTML = $(selBox2).outerHTML.replace(re, "$1"+sDefOpt+transport.responseText+"$4");
                }
            });
                
            show_selCriteria2(product);
            return 0;
        }

        function load_selCriteria3(product) {

            var selBox1 = document.getElementById("selCriteria1"); //car: models, mc: mc category
            var selBox2 = document.getElementById("selCriteria2"); //car: grades, mc: models
            var selBox3 = document.getElementById("selCriteria3");
                        
            if (product=='CAR') {
                var url = '/hace/carAccCategory.page?NPRICUST=268&CLANGISO=EN&NMOD='+selBox1.value.split(';')[0]+'&NGRADE='+selBox2.value;
            } else {
                var url = '/hace/mcAccCategory.page?NPRICUST=268&CLANGISO=EN&NMOD='+selBox2.value.split(';')[0];
            }

            new Ajax.Request(url, {
                onSuccess: function(transport) {
                    //alert(transport.responseText);
                    var re = new RegExp("(\<select(.*?)\>)(.*?)(\<\/select\>)","i");
                    
                    var sDefOpt= "<option value=\"\">"+$(selBox3).options[0].text+"</option>";

                    $(selBox3).innerHTML = sDefOpt + transport.responseText;
                    
                    if($(selBox3).outerHTML)
                    $(selBox3).outerHTML = $(selBox3).outerHTML.replace(re, "$1"+sDefOpt+transport.responseText+"$4");
                }
            });            

            show_selCriteria3();
            return 0;
        }
        
        function onchange_selCriteria1(product) {

            var selBox1 = document.getElementById("selCriteria1"); //car: models, mc: mc category
            var selBox2 = document.getElementById("selCriteria2"); //car: grades, mc: models
            var selBox3 = document.getElementById("selCriteria3");

            var resultDiv = document.getElementById('searchResult');
            var qlDiv = document.getElementById('quicklinks');

            if($(resultDiv).style.visibility=='visible') {
                $(resultDiv).style.visibility='hidden';
            }

            if($(qlDiv).style.visibility=='visible') {
                $(qlDiv).style.visibility='hidden';
            }

            if (document.getElementById('menu')) { 
                if (product=='CAR') {
                    document.getElementById('menu').setCar(selBox1.value.split(';')[0]);
                } else {
                    //document.getElementById('menu').setMcCategory(selBox1.value);
					document.getElementById('menu').setMcCategory(selBox1.value.split(';')[0]+"_"+selBox1.value.split(';')[1]);
                }
            }
            
            if (selBox3.style.visibility != 'hidden')
                hide_selCriteria3();
            if (selBox3.length > 0) 
                clear_selCriteria3();
            if (selBox1.value != '') {
                if (product=='M/C') {
                    document.getElementById("selSubmit").style.visibility='visible';
                }
                clear_selCriteria2();
                load_selCriteria2(product);
            } else {
                if (selBox2.length > 0) {
                    hide_selCriteria2();
                    clear_selCriteria2();
                }
                if (product=='M/C') {
                    document.getElementById("selSubmit").style.visibility='hidden';
                }
            }
            return 0;
        }
        
        function onchange_selCriteria2(product) {
            var selBox1 = document.getElementById("selCriteria1"); //car: models, mc: mc category
            var selBox2 = document.getElementById("selCriteria2"); //car: grades, mc: models

            var resultDiv = document.getElementById('searchResult');
            var qlDiv = document.getElementById('quicklinks');

            if($(resultDiv).style.visibility=='visible') {
                $(resultDiv).style.visibility='hidden';
            }

            if($(qlDiv).style.visibility=='visible') {
                $(qlDiv).style.visibility='hidden';
            }

            if (selBox1.value != '' && selBox2.value != '') {
                clear_selCriteria3();
                load_selCriteria3(product);
            } else {
                hide_selCriteria3(product);
                clear_selCriteria3();
            }
            return 0;
        }

        function onchange_selCriteria3() {
            var resultDiv = document.getElementById('searchResult');
            var qlDiv = document.getElementById('quicklinks');

            if($(resultDiv).style.visibility=='visible') {
                $(resultDiv).style.visibility='hidden';
            }
            if($(qlDiv).style.visibility=='visible') {
                $(qlDiv).style.visibility='hidden';
            }
        }

        function show_selCriteria2() {

            document.getElementById("selCriteria2").style.visibility='visible';
            return 0;
        }

        function show_selCriteria3() {
            document.getElementById("selCriteria3").style.visibility='visible';
            document.getElementById("selSubmit").style.visibility='visible';
            document.getElementById("lblKeySearch").style.visibility='visible';
            document.getElementById("txtKeywords").style.visibility='visible';
            document.getElementById("keySubmit").style.visibility='visible';

            return 0;
        }

        function hide_selCriteria2() {

            document.getElementById("selCriteria2").style.visibility='hidden';
            return 0;
        }

        function hide_selCriteria3(product) {

            document.getElementById("selCriteria3").style.visibility='hidden';
            if (product!='M/C' || document.getElementById("selCriteria1").value=='') {
                document.getElementById("selSubmit").style.visibility='hidden';
            }
            document.getElementById("lblKeySearch").style.visibility='hidden';
            document.getElementById("txtKeywords").style.visibility='hidden';
            document.getElementById("keySubmit").style.visibility='hidden';

            return 0;
        }

        function clear_selCriteria2() {
            var selBox2 = document.getElementById("selCriteria2");
        
            for (var n=selBox2.length-1; n>=1; n--) {
                selBox2.remove(n);
            }
            return 0;
        }

        function clear_selCriteria3() {
            var selBox3 = document.getElementById("selCriteria3");
        
            for (var n=selBox3.length-1; n>=1; n--) {
                selBox3.remove(n);
            }
            return 0;
        }

        function clearResult() {
            $(resultDiv).innerHTML = ""; 
                    
            if($(resultDiv).outerHTML)
                $(resultDiv).outerHTML = "";
        }	

        function setCar(modId) {
            var selBox1 = document.getElementById("selCriteria1");

            for (var i=0; i<selBox1.options.length; i++) { 
                if (selBox1.options[i].value.split(';')[0] == modId) {
                    selBox1.options[i].selected = true;
                    load_selCriteria2('CAR');
                    alert('Please select a grade');
                }
            }
            return 0;
        }

        function setMcCategory(catId) {
            var selBox1 = document.getElementById("selCriteria1");

            for (var i=0; i<selBox1.options.length; i++) { 
			  //if (selBox1.options[i].value.split(';')[0] == catId) {
				if ((selBox1.options[i].value.split(';')[0] == catId.split("_")[0]) && (selBox1.options[i].value.split(';')[1] == catId.split("_")[1])) {
                    selBox1.options[i].selected = true;
                    load_selCriteria2('M/C');
                    alert('Please select a model');
                }
            }
            return 0;
        }
