﻿// Comparator.js File

var CheckBoxSelectionLimiter = Class.create({
	initialize: function(options) {
	    this.options = Object.extend({
		    container:'divCheckBoxContainer',
			checkbox_classname:'span.checkbox input'
		}, options || { });
		this.create_checkbox_selection_limiter(this.options);
	},
	destroy: function() {
		this.destroy_dialog();
	},
	process_checkbox_queue: function() {
        if(3 <= this.ix) {
            this.ix--;
            var cb = this.checked_checkboxs.shift();
            cb.checked = false;
        }
        var continue_button = $('ctl00_cph_btnContinue');
        if(this.ix<0)
            continue_button.hide();
        else
            continue_button.show();
	},
	create_checkbox_selection_limiter: function(options) {
		this.ix = -1;
		this.container = $(this.options.container);
		if(this.container) {
		    this.checkboxs = this.container.getElementsBySelector(this.options.checkbox_classname);
		    this.checked_checkboxs = new Array();
	        var me = this;
	        me.checkboxs.each(function(h,i) {
	            if(h.checked) {
	                me.ix++;
			        me.checked_checkboxs.push(h);
			    }
		    });
		    me.checkboxs.each(function(h,i) {
                var ix = i;
                var checkbox = h;
                checkbox.onclick = function(){
			        if(checkbox && checkbox.checked) {
                        me.ix++;
                        me.checked_checkboxs.push(checkbox);
                    }
                    else {
                        var rix = -1;
                        me.checked_checkboxs.each(function(h,i) {
                            if(h==checkbox)
                                rix = i;
                        });
                        me.checked_checkboxs.splice(rix,1);
                        me.ix--;
                    }
			        me.process_checkbox_queue();
			    }
		    });
		    me.process_checkbox_queue();
		}
	}
});

function showAvailableCompetitorVehicles(showVehicles, showMessage, messageText)
{
    if (showVehicles) {
        document.getElementById('divCompetitorVehiclesContainer').style.display = 'block';
    } else {
        document.getElementById('divCompetitorVehiclesContainer').style.display = 'none';
    }
    
    if (showMessage) {
        document.getElementById('divCompetitorVehiclesMessage').style.display = 'block';
        document.getElementById('divCompetitorVehiclesMessage').innerHTML = messageText;
    } else {
        document.getElementById('divCompetitorVehiclesMessage').style.display = 'none';
        document.getElementById('divCompetitorVehiclesMessage').innerHTML = '';
    }
    
    if (showVehicles || showMessage) {
        document.getElementById('divShowAdditionalComparisonVehiclesButtonContainer').style.display = 'block';
        new CheckBoxSelectionLimiter();
    } else {
        document.getElementById('divShowAdditionalComparisonVehiclesButtonContainer').style.display = 'none';
        $('ctl00_cph_btnContinue').hide();
    }
}

function showComparison(display)
{
    if (display) {
        document.getElementById('divConfigure').style.display = 'none';
        document.getElementById('divComparison').style.display = 'block';
        document.getElementById('divShowAdditionalComparisonVehiclesButtonContainer').style.display = 'none';
        document.getElementById('divAdditionalCompetitorVehiclesSelector').style.display = 'none';
    } else {
        document.getElementById('divConfigure').style.display = 'block';
        document.getElementById('divComparison').style.display = 'none';
        document.getElementById('divShowAdditionalComparisonVehiclesButtonContainer').style.display = 'block';
    }
}

//function runThirdPartyTrackingCode()
//{
//    var axel = Math.random()+"";
//    var a = axel * 10000000000000;
//    document.write('<iframe src="http://fls.doubleclick.net/activityi;src=1379492;type=vwcaa682;cat=vwcom055;ord='+ a + '?" width=1 height=1 frameborder=0></iframe>');
//}