    // common new/used stuff
    ////////////////////////
    
    function Year(yearName) {
        this.yearName = yearName;
    }
    
    function Model(modelId, modelName) {
        this.modelId = modelId;
        this.modelName = modelName;    
        this.years = new Array();
    }
    
    function Make(makeId, makeName) {
        this.makeId = makeId;
        this.makeName = makeName;
        this.models = new Array();
    }

    // used stuff
    ////////////////////////
    function loadMake(makeId, makeName) {
        var make = new Make(makeId, makeName);
        makes.push(make);
    }
    
    function getMake(makeId) {
        for (var i=0; i<makes.length; i++) {
       		var make = makes[i];
       		if (make.makeId == makeId) {
       			return make;	
       		}
        }
    }

    function loadModel(makeId, modelId, modelName) {
        var make = getMake(makeId);
        make.models.push(new Model(modelId, modelName));
    }
    
    function populateMakes() {
        var makeSelect = document.used_search.make;
        makeSelect.options.length = 0;
        var optionNum = 0;
        makeSelect.options[optionNum++] = new Option("-- All Makes --", 0);
        for (var i=0; i<makes.length; i++) {
       		var make = makes[i];
       		makeSelect.options[optionNum++] = new Option(make.makeName, make.makeId);
        }
    }
    
    function populateModels(makeId) {
        var modelSelect = document.used_search.model;
        modelSelect.options.length = 0;
        var optionNum = 0;
        //modelSelect.options[optionNum++] = new Option("-- All Models --", 0);
        if (makeId>0) {
            modelSelect.options[optionNum++] = new Option("All Models", -1);
        }
        var make = getMake(makeId);
        var models = make.models;
        for (var i=0; i<models.length; i++) {
       		var model = models[i];
       		modelSelect.options[optionNum++] = new Option(model.modelName, model.modelId);
        }
    }
    
    function selectMake(makeId) {
        var makeSelect = document.used_search.make;
        for (i=0;i<makeSelect.options.length;i++) {
            if (makeSelect.options[i].value == makeId) {
                makeSelect.options[i].selected = true;
            }
        }
    }
    
    function selectModel(modelId) {
        var modelSelect = document.used_search.model;
        for (i=0;i<modelSelect.options.length;i++) {
            if (modelSelect.options[i].value == modelId) {
                modelSelect.options[i].selected = true;
            }
        }
    }
    
    
    
    // used drop-downs on photo-lot page
    ////////////////////////////////////
    function populateMakesPhotoLot() {
        var makeSelect = document.photo_lot.make;
        makeSelect.options.length = 0;
        var optionNum = 0;
        makeSelect.options[optionNum++] = new Option("-- All Makes --", 0);
        for (var i=0; i<makes.length; i++) {
       		var make = makes[i];
       		makeSelect.options[optionNum++] = new Option(make.makeName, make.makeId);
        }
    }
    
    function populateModelsPhotoLot(makeId) {
        var modelSelect = document.photo_lot.model;
        modelSelect.options.length = 0;
        var optionNum = 0;
        modelSelect.options[optionNum++] = new Option("-- All Models --", 0);
        //if (makeId>0) {
        //    modelSelect.options[optionNum++] = new Option("All", -1);
        //}
        var make = getMake(makeId);
        var models = make.models;
        for (var i=0; i<models.length; i++) {
       		var model = models[i];
       		modelSelect.options[optionNum++] = new Option(model.modelName, model.modelId);
        }
    }
    
    function selectMakePhotoLot(makeId) {
        var makeSelect = document.photo_lot.make;
        for (i=0;i<makeSelect.options.length;i++) {
            if (makeSelect.options[i].value == makeId) {
                makeSelect.options[i].selected = true;
            }
        }
    }
    
    function selectModelPhotoLot(modelId) {
        var modelSelect = document.photo_lot.model;
        for (i=0;i<modelSelect.options.length;i++) {
            if (modelSelect.options[i].value == modelId) {
                modelSelect.options[i].selected = true;
            }
        }
    }
    
    
    
    
    // new stuff
    ////////////////////////
    function loadNewMake(makeId, makeName) {
        var make = new Make(makeId, makeName);
        newMakes.push(make);
    }
    
    function getNewMake(makeId) {
        for (var i=0; i<newMakes.length; i++) {
       		var make = newMakes[i];
       		if (make.makeId == makeId) {
       			return make;	
       		}
        }
    }

    function loadNewModel(makeId, modelId, modelName) {
        var make = getNewMake(makeId);
        make.models.push(new Model(modelId, modelName));
    }
    
    function populateNewMakes() {
        var makeSelect = document.new_search.make;
        makeSelect.options.length = 0;
        var optionNum = 0;
        makeSelect.options[optionNum++] = new Option("-- All Makes --", 0);
        for (var i=0; i<newMakes.length; i++) {
       		var make = newMakes[i];
       		makeSelect.options[optionNum++] = new Option(make.makeName, make.makeId);
        }
    }
    
    function populateNewModels(makeId) {
        var modelSelect = document.new_search.model;
        modelSelect.options.length = 0;
        var optionNum = 0;
        var make = getNewMake(makeId);
        // if make array does not contain make, return graceful
        if (make == null) {
        	modelSelect.options[optionNum] = new Option("-- All Models --", 0);
        	return;
        }
        
        
        var models = make.models;
        for (var i=0; i<models.length; i++) {
       		var model = models[i];
       		modelSelect.options[optionNum++] = new Option(model.modelName, model.modelId);
        }
    }
    
    function selectNewMake(makeId) {
        var makeSelect = document.new_search.make;
        for (i=0;i<makeSelect.options.length;i++) {
            if (makeSelect.options[i].value == makeId) {
                makeSelect.options[i].selected = true;
            }
        }
    }
    
    function selectNewModel(modelId) {
        var modelSelect = document.new_search.model;
        for (i=0;i<modelSelect.options.length;i++) {
            if (modelSelect.options[i].value == modelId) {
                modelSelect.options[i].selected = true;
            }
        }
    }
    
    
    // review-new stuff
    ////////////////////////
    function loadReviewNewMake(makeId, makeName) {
        var make = new Make(makeId, makeName);
        reviewNewMakes.push(make);
    }
    
    function getReviewNewMake(makeId) {
        for (var i=0; i<reviewNewMakes.length; i++) {
       		var make = reviewNewMakes[i];
       		if (make.makeId == makeId) {
       			return make;	
       		}
        }
    }
    
    function getReviewNewModel(models, modelId) {
        for (var i=0; i<models.length; i++) {
       		var model = models[i];
       		if (model.modelId == modelId) {
       			return model;	
       		}
        }
    }

    function loadReviewNewModel(makeId, modelId, modelName) {
        var make = getReviewNewMake(makeId);
        make.models.push(new Model(modelId, modelName));
    }
    
    function loadReviewNewYear(makeId, modelId, yearName) {
        var make = getReviewNewMake(makeId);
        var model = getReviewNewModel(make.models, modelId);
        model.years.push(new Year(yearName));
    }
    
    function populateReviewNewMakes() {
        var makeSelect = document.review_new_search.make;
        makeSelect.options.length = 0;
        var optionNum = 0;
        makeSelect.options[optionNum++] = new Option("-- All Makes --", 0);
        for (var i=0; i<reviewNewMakes.length; i++) {
       		var make = reviewNewMakes[i];
       		makeSelect.options[optionNum++] = new Option(make.makeName, make.makeId);
        }
    }
    
    function populateReviewNewModels(makeId) {
        var modelSelect = document.review_new_search.model;
        modelSelect.options.length = 0;
        var optionNum = 0;
        var make = getReviewNewMake(makeId);
        // if make array does not contain make, return graceful
        if (make == null) {
        	modelSelect.options[optionNum] = new Option("-- All Models --", 0);
        	return;
        }
        var models = make.models;
        for (var i=0; i<models.length; i++) {
       		var model = models[i];
       		modelSelect.options[optionNum++] = new Option(model.modelName, model.modelId);
        }
    }
    
    function populateReviewNewYears(modelId) {
        var yearSelect = document.review_new_search.year;
        yearSelect.options.length = 0;
        var optionNum = 0;
        
        // get make object
        var makeSelect = document.review_new_search.make;
        var makeId = makeSelect[makeSelect.selectedIndex].value;
        var make = getReviewNewMake(makeId);
                
        // get model object
        var model = getReviewNewModel(make.models, modelId);
        
        // if model array does not contain model, return graceful
        if (model == null) {
        	yearSelect.options[optionNum] = new Option("-- All Years --", 0);
        	return;
        }
        
        // populate years select
        var years = model.years;
        for (var i=0; i<years.length; i++) {
       		var year = years[i];
       		yearSelect.options[optionNum++] = new Option(year.yearName, year.yearName);
        }
    }
    
    function populateReviewNewModelsYears(makeId) {
        // populate model drop-down
        populateReviewNewModels(makeId);  
        
        // get selected model
        var modelSelect = document.review_new_search.model;
        var modelId = modelSelect[modelSelect.selectedIndex].value;   
        
        // populate year drop-down
        populateReviewNewYears(modelId);
    }
    
    function selectReviewNewMake(makeId) {
        var makeSelect = document.review_new_search.make;
        for (i=0;i<makeSelect.options.length;i++) {
            if (makeSelect.options[i].value == makeId) {
                makeSelect.options[i].selected = true;
            }
        }
    }
    
    function selectReviewNewModel(modelId) {
        var modelSelect = document.review_new_search.model;
        for (i=0;i<modelSelect.options.length;i++) {
            if (modelSelect.options[i].value == modelId) {
                modelSelect.options[i].selected = true;
            }
        }
    }
    
    function selectReviewNewYear(yearName) {
        var yearSelect = document.review_new_search.year;
        for (i=0;i<yearSelect.options.length;i++) {
            if (yearSelect.options[i].value == yearName) {
                yearSelect.options[i].selected = true;
            }
        }
    }
    
    
    
    // review stuff
    ////////////////////////
    function loadReviewMake(makeId, makeName) {
        var make = new Make(makeId, makeName);
        reviewMakes.push(make);
    }
    
    function getReviewMake(makeId) {
        for (var i=0; i<reviewMakes.length; i++) {
       		var make = reviewMakes[i];
       		if (make.makeId == makeId) {
       			return make;	
       		}
        }
    }
    
    function getReviewModel(models, modelId) {
        for (var i=0; i<models.length; i++) {
       		var model = models[i];
       		if (model.modelId == modelId) {
       			return model;	
       		}
        }
    }

    function loadReviewModel(makeId, modelId, modelName) {
        var make = getReviewMake(makeId);
        make.models.push(new Model(modelId, modelName));
    }
    
    function loadReviewYear(makeId, modelId, yearName) {
        var make = getReviewMake(makeId);
        var model = getReviewModel(make.models, modelId);
        model.years.push(new Year(yearName));
    }
    
    function populateReviewMakes() {
        var makeSelect = document.review_search.make;
        makeSelect.options.length = 0;
        var optionNum = 0;
        makeSelect.options[optionNum++] = new Option("-- All Makes --", 0);
        for (var i=0; i<reviewMakes.length; i++) {
       		var make = reviewMakes[i];
       		makeSelect.options[optionNum++] = new Option(make.makeName, make.makeId);
        }
    }
    
    function populateReviewModels(makeId) {
        var modelSelect = document.review_search.model;
        modelSelect.options.length = 0;
        var optionNum = 0;
        var make = getReviewMake(makeId);
        // if make array does not contain make, return graceful
        if (make == null) {
        	modelSelect.options[optionNum] = new Option("-- All Models --", 0);
        	return;
        }
        var models = make.models;
        for (var i=0; i<models.length; i++) {
       		var model = models[i];
       		modelSelect.options[optionNum++] = new Option(model.modelName, model.modelId);
        }
    }
    
    function populateReviewYears(modelId) {
        var yearSelect = document.review_search.year;
        yearSelect.options.length = 0;
        var optionNum = 0;
        
        // get make object
        var makeSelect = document.review_search.make;
        var makeId = makeSelect[makeSelect.selectedIndex].value;
        var make = getReviewMake(makeId);
                
        // get model object
        var model = getReviewModel(make.models, modelId);
        
        // if model array does not contain model, return graceful
        if (model == null) {
        	//yearSelect.options[optionNum] = new Option("-- All Years --", 0);
        	//return;
        	// just get the 1st one in the list
        	model = make.models[0];
        }
        
        // populate years select
        var years = model.years;
        for (var i=0; i<years.length; i++) {
       		var year = years[i];
       		yearSelect.options[optionNum++] = new Option(year.yearName, year.yearName);
        }
    }
    
    function populateReviewModelsYears(makeId) {
        // populate model drop-down
        populateReviewModels(makeId);  
        
        // get selected model
        var modelSelect = document.review_search.model;
        var modelId = modelSelect[modelSelect.selectedIndex].value;   
        
        // populate year drop-down
        populateReviewYears(modelId);
    }
    
    function selectReviewMake(makeId) {
        var makeSelect = document.review_search.make;
        for (i=0;i<makeSelect.options.length;i++) {
            if (makeSelect.options[i].value == makeId) {
                makeSelect.options[i].selected = true;
            }
        }
    }
    
    function selectReviewModel(modelId) {
        var modelSelect = document.review_search.model;
        for (i=0;i<modelSelect.options.length;i++) {
            if (modelSelect.options[i].value == modelId) {
                modelSelect.options[i].selected = true;
            }
        }
    }
    
    function selectReviewYear(yearName) {
        var yearSelect = document.review_search.year;
        for (i=0;i<yearSelect.options.length;i++) {
            if (yearSelect.options[i].value == yearName) {
                yearSelect.options[i].selected = true;
            }
        }
    }
    
    
    ////////////////////////////////////////////////////////////////////////////
    ////////////////////////////////////////////////////////////////////////////
    
    
    function render() {
       window.scrollTo(0,0);
       showMessage();
       setTimeout('renderList()',500);
    }
        
    function showMessage() {
        var msgbox = document.getElementById('messagebox');
        if (msgbox != null) {
            //msgbox.style.left  = Math.round((document.body.clientWidth - msgbox.offsetWidth) / 2) + "px" ;
            //msgbox.style.top   = Math.round(((document.body.clientHeight - msgbox.offsetHeight) / 3) + document.body.scrollTop) + "px";
            msgbox.style.display = 'block';
        }
    }
    
    function hideMessage() {
        var msgbox = document.getElementById('messagebox');
        if (msgbox != null) {
            msgbox.style.display = 'none';
        }
    }


    function addCommas(nStr) {
		nStr += '';
		var x = nStr.split('.');
		var x1 = x[0];
		var x2 = x.length > 1 ? '.' + x[1] : '';
		var rgx = /(\d+)(\d{3})/;
		while (rgx.test(x1)) {
			x1 = x1.replace(rgx, '$1' + ',' + '$2');
		}
		return x1 + x2;
	}

	function sortByPriceASC(a, b) {
		var x = a.price;
		var y = b.price;
		if (x == 0) return 1;
		if (y == 0) return -1;
		if (x == 0 && y == 0) return 0;
		return ((x < y) ? -1 : ((x > y) ? 1 : 0));
	}
	
	function sortByPriceDESC(a, b) {
		var x = a.price;
		var y = b.price;
		return ((x < y) ? 1 : ((x > y) ? -1 : 0));
	}
	
	function sortByDistanceASC(a, b) {
		var x = a.distance;
		var y = b.distance;
		return ((x < y) ? -1 : ((x > y) ? 1 : 0));
	}
	
	function sortByDistanceDESC(a, b) {
		var x = a.distance;
		var y = b.distance;
		return ((x < y) ? 1 : ((x > y) ? -1 : 0));
	}
	
	function sortByDateASC(a, b) {
		var x = a.date;
		var y = b.date;
		return ((x < y) ? 1 : ((x > y) ? -1 : 0));
	}
	
	function sortByDateDESC(a, b) {
		var x = a.date;
		var y = b.date;
		return ((x < y) ? -1 : ((x > y) ? 1 : 0));
	}
	
	function sortByMileageASC(a, b) {
		var x = a.mileage;
		var y = b.mileage;
		if (x == 0) return 1;
		if (y == 0) return -1;
		if (x == 0 && y == 0) return 0;
		return ((x < y) ? -1 : ((x > y) ? 1 : 0));
	}
	
	function sortByMileageDESC(a, b) {
		var x = a.mileage;
		var y = b.mileage;
		return ((x < y) ? 1 : ((x > y) ? -1 : 0));
	}
	
	function sortByYearASC(a, b) {
		var x = a.year;
		var y = b.year;
		if (x == 0) return 1;
		if (y == 0) return -1;
		if (x == 0 && y == 0) return 0;
		return ((x < y) ? -1 : ((x > y) ? 1 : 0));
	}
	
	function sortByYearDESC(a, b) {
		var x = a.year;
		var y = b.year;
		return ((x < y) ? 1 : ((x > y) ? -1 : 0));
	}

	/*
	function escapeQuotes(string) {
		return string.replace(/('|")/g, "\\$1");	
	}
	*/
	
	function Car(id, title, posted, color, seller, location,
	             year, price, mileage, condition, numimages, image, transmission, distance, date, saved) {
    	this.id = id;
        this.title = title;
        this.posted = posted;
        this.color = color;
		this.seller = seller;
		this.location = location;
		this.year = year;
		this.price = price;
		this.mileage = mileage;
		this.condition = condition;
		this.numimages = numimages;
		this.image = image;
		this.transmission = transmission;
		this.distance = distance;
		this.date = date;
		this.saved = saved;
   	}
   		
   	
   	function setMaxDistance(distance) {
        var maxDistance = document.getElementById('storeMaxDistance');
        maxDistance.value = distance;
    }
    function getMaxDistance() {
        var maxDistance = document.getElementById('storeMaxDistance');
        return maxDistance.value;
    }
    
    function setMaxPrice(price) {
        var maxPrice = document.getElementById('storeMaxPrice');
        maxPrice.value = price;
    }
    function getMaxPrice() {
        var maxPrice = document.getElementById('storeMaxPrice');
        return maxPrice.value;
    }
    
    function setMaxMileage(mileage) {
        var maxMileage = document.getElementById('storeMaxMileage');
        maxMileage.value = mileage;
    }
    function getMaxMileage() {
        var maxMileage = document.getElementById('storeMaxMileage');
        return maxMileage.value;
    }
    
    function setVids(vids) {
        var vidsElement = document.getElementById('vids');
        vidsElement.value = vids;
    }
    function getVids() {
        var vidsElement = document.getElementById('vids');
        return vidsElement.value;
    }
    
    
	function distanceHandler(value) {
		//maxDistance = value;
		setMaxDistance(value);
		$('distanceDisplay').innerHTML=value + ' miles away';
		render();
	}

	
	function priceHandler(v, priceMinMarker, priceMaxMarker, eventType) {
		var value = Math.round(v);
		$('priceDisplay').innerHTML='$' + addCommas(value);
		if (eventType == "change") {
		    setMaxPrice(value);
		    render();
		}
	}
	
	
	function mileageHandler(value) {
		//maxMileage = value;
		setMaxMileage(value);
		$('milesDisplay').innerHTML=addCommas(value) + '';
		render();
	}
	
	function popup(url) {
	    var options = "height=530,width=640,toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,left=100,top=5";
	    win2 = window.open(url, 'Auto_Photo', options);
	    win2.focus();
	}

	function toggleNewSearch() {
        var box = document.getElementById('newSearchBox');
        var icon = document.getElementById('newSearchIcon');
        if (box != null && icon != null) {
            if (box.style.display == 'none') {
                box.style.display = 'block';
                icon.src = '/images/minus.gif'
                //Effect.Appear('newSearchBox',{duration:.5});
            } else {
                box.style.display = 'none';
                //Effect.SlideUp('newSearchBox',{duration:.5});
                icon.src = '/images/plus.gif'
            }
        }
    }
    
    /*
	function openNewWindow(name, url, width, height) {
	    var args = "title=" + name + ",width=" + width + ",height=" + height +
	        ",location=no,menubar=no,resizable=yes,toolbar=no,status=no,scrollbars=yes";
	    var newWin = window.open(url, 'name', args);
	    if (newWin == null) { alert("Popup blocker?"); }
	    else { newWin.focus(); }
	}
	*/
   
	
	function showPhotoBox(imageUrl) {
        var msgbox = document.getElementById('photobox');
        if (msgbox != null) {
            msgbox.innerHTML = "<img title=\"Click to close\" src=" + imageUrl + ">";
            Effect.Appear('photobox');
            
            // hide google map
            var map = document.getElementById('map');
            if (map != null) {
                map.style.display = 'none';
            }
        }
    }
    
    function hidePhotoBox() {
        var msgbox = document.getElementById('photobox');
        if (msgbox != null) {
            msgbox.style.display = 'none';
        }
        
        // show google map
        var map = document.getElementById('map');
        if (map != null) {
            map.style.display = 'block';
        }
            
    }
    
    
    function isInteger(val){
	    if (isBlank(val)) {
	        return false;
	    }
	    for(var i=0;i<val.length;i++){
	    	if(!isDigit(val.charAt(i))){
	    	    return false;
	    	}
	    }
	    return true;
	}
		
	function isDigit(num) {
	    if (num.length > 1) {
	        return false;
	    }
	    var string="1234567890";
	    if (string.indexOf(num) != -1){
	        return true;
	    }
	    return false;
	}

	function isBlank(val){
		if (val==null) {
		    return true;
		}
		for(var i=0;i<val.length;i++) {
			if ( (val.charAt(i)!=' ') &&
			     (val.charAt(i)!="\t") &&
			     (val.charAt(i)!="\n") &&
			     (val.charAt(i)!="\r")){
	            return false;
			}
		}
		return true;
	}
	
	function LTrim(value)  {	
    	var re = /\s*((\S+\s*)*)/;
    	return value.replace(re, "$1");	
    }
    
    function RTrim(value) {	
    	var re = /((\s*\S+)*)\s*/;
    	return value.replace(re, "$1");	
    }
    
    function Trim(value) {	
    	return LTrim(RTrim(value));	
    }
	
	function loanPopUrl(url) {
		sealWin=window.open(url,"win",'toolbar=0,location=0,directories=0,status=1,menu bar=0,scrollbars=1,width=600,height=600');
		self.name = "mainWin"; 
	}
	
    
    function urlRewrite(form) {
        // all the forms have make/model
        var makeSelect = form.make;
        var modelSelect = form.model;
        var makeName = makeSelect.options[makeSelect.selectedIndex].text;
        var modelName = modelSelect.options[modelSelect.selectedIndex].text;
        var makeId = makeSelect.options[makeSelect.selectedIndex].value;
        var modelId = modelSelect.options[modelSelect.selectedIndex].value;
    

        var link = ""
        if (form.name == "used_search") {
            var zip = form.zip.value;
            var radiusSelect = form.radius;
            var radius = radiusSelect.options[radiusSelect.selectedIndex].value;
            //link = "/" + makeId + "/" + modelId + "/" + zip + "/" + radius + "/" + makeName.replace(" ", "-") + "/" + modelName.replace(" ", "-") + "/used-cars";
            //link = "used-cars/?make=" + makeId + "&model=" + modelId + "&zip=" + zip + "&radius=" + radius;
            
            makeNameLink = makeName.replace(/-/g, "_");
            makeNameLink = makeNameLink.replace(/ /g, "-");
            
            modelNameLink = modelName.replace(/-/g, "_");
            modelNameLink = modelNameLink.replace(/ /g, "-");

            link = "/used-cars/"+((zip != '')?zip+"/"+radius+"/":"") + makeNameLink + ((modelId>0)?"/"+modelNameLink:"");
            
         if(form.yeara != null) {
            var yeara = form.yeara.value;
			var yearb = form.yearb.value;
			var pricea = form.pricea.value;
			var priceb = form.priceb.value;
            
            if(yeara != '' || yearb != '' || pricea != '' || priceb != '') {
            	link += '/:' + yeara + ':' + yearb + ':' + pricea + ':' + priceb + ':';
            }
          }
            
        } else if (form.name == "new_search") {
            var zip = form.zip.value;
            link = "/" + makeId + "/" + modelId + "/" + zip + "/new-cars/price-quote/" + makeName.replace(" ", "-") + "/" + modelName.replace(" ", "-");
            
        } else if (form.name == "review_search" || form.name == "review_new_search") {
            var yearSelect = form.year;
            var year = yearSelect.options[yearSelect.selectedIndex].value;
            link = "/" + makeId + "/" + modelId + "/" + year + "/" + makeName.replace(" ", "-") + "/" + modelName.replace(" ", "-") + "/reviews/overview";
        }
        
        // validate
        if (form.name == "used_search" || form.name == "new_search") {
            if ((zip.length != 5 || !isInteger(zip)) && zip != '') {
                alert("Please enter a valid Zip");
                return false;
            }
            if(makeId == 0) {
            	alert("Please select Make");
                return false;
            }
        }
        
        // send
        location.href=link;
        
        /*
        hiddenField = document.createElement('input');
        hiddenField.setAttribute('type','');
        hiddenField.setAttribute('name', '');
        hiddenField.setAttribute('value', '');
        form.appendChild(hiddenField);
        */
        
        return false;
    }