
var checked_products = new Array();

document.write('<style>.noScriptButton{display: none}</style>');

function checkedArrayToString(){
	var output = "";
	for(var i=0; i< checked_products.length; i++){
		if(checked_products[i] === true){
			output += i+",";
		}
	}
	return output;
}

function stripNonNumeric( str ){
	str += '';
	var rgx = /^\d|\.|-$/;
	var out = '';
	for( var i = 0; i < str.length; i++ ){
		if( rgx.test( str.charAt(i) ) ){
			if( !( ( str.charAt(i) == '.' && out.indexOf( '.' ) != -1 ) ||
			       ( str.charAt(i) == '-' && out.length != 0 ) ) ){
				out += str.charAt(i);
			}
		}
	}
	return out;
}

function onlyNumeric(field, e){
	if (!e) var e = window.event;
	var keynum;
	var keychar;
	var numcheck;
	if(window.event){ // IE
		keynum = e.keyCode;
	}
	else if(e.which){ // Netscape/Firefox/Opera
		keynum = e.which;
	}
	if(keynum==8 || keynum==17) return true;
	keychar = String.fromCharCode(keynum);
	var new_val = field.value + keychar;
	return stripNonNumeric(new_val) == new_val;
}

function update_data(){

	var url = INCLUDES_DIR+'selector.ajax.php';
	var pars = new Hash();
	pars.set('do','updateProductTable');
	pars.set('selector_wattage',escape($F('selector_wattage')));
	pars.set('selector_inlet',escape($F('selector_inlet')));
	pars.set('selector_exhaust',escape($F('selector_exhaust')));
	pars.set('selector_SCFM',escape($F('selector_SCFM')));
	pars.set('selector_PSIG',escape($F('selector_PSIG')));
	pars.set('selector_order_by',escape($F('selector_order_by')));
	pars.set('selector_order_dir',escape($F('selector_order_dir')));
	pars.set('comparing',escape($F('comparing')));

	//preserve checked rows
	pars.set('checked_products', checkedArrayToString());

	var target = 'selector';
	var myAjax = new Ajax.Updater(target, url, {method: 'post',evalScripts: true, parameters: pars.toObject()});

}
function update_sort_order(order_by, order_dir){

	var url = INCLUDES_DIR+'selector.ajax.php';
	var pars = new Hash();
	pars.set('do','updateProductTable');
	pars.set('selector_wattage',escape($F('selector_wattage')));
	pars.set('selector_inlet',escape($F('selector_inlet')));
	pars.set('selector_exhaust',escape($F('selector_exhaust')));
	pars.set('selector_SCFM',escape($F('selector_SCFM')));
	pars.set('selector_PSIG',escape($F('selector_PSIG')));
	pars.set('comparing',escape($F('comparing')));
	pars.set('selector_order_by',order_by);
	pars.set('selector_order_dir',order_dir);
	$('selector_order_by').value = order_by;
	$('selector_order_dir').value = order_dir;

	//preserve checked rows
	pars.set('checked_products', checkedArrayToString());

	var target = 'selector';
	var myAjax = new Ajax.Updater(target, url, {method: 'post',evalScripts: true, parameters: pars.toObject()});

	//track product selector sorting clicks
	pageTracker._trackEvent('Determine Your Heater', 'Sort Table',order_by+' '+order_dir);
}

function reset_selector(){
	var url = INCLUDES_DIR+'selector.ajax.php';
	var pars = new Hash();
	pars.set('do','updateProductTable');
	pars.set('selector_wattage', null);
	pars.set('selector_inlet',null);
	pars.set('selector_exhaust',null);
	pars.set('selector_SCFM',null);
	pars.set('selector_PSIG',null);
	pars.set('selector_order_by',null);
	pars.set('selector_order_dir',null);
	pars.set('comparing',escape($F('comparing')));

	$('selector_wattage').value = '';
	$('selector_inlet').value = '';
	$('selector_exhaust').value = '';
	$('selector_SCFM').value = '';
	$('selector_PSIG').value = '';
	$('selector_order_by').value = '';
	$('selector_order_dir').value = '';


	//preserve checked rows
	pars.set('checked_products', checkedArrayToString());

	var target = 'selector';
	var myAjax = new Ajax.Updater(target, url, {method: 'post',evalScripts: true, parameters: pars.toObject()});

	//track product selector reset clicks
	pageTracker._trackEvent('Determine Your Heater', 'Reset');
}


function hide_unselected(){

	var num_checked = $$('input:checked').size();
	if(num_checked < 2){
		alert('You must compare at least 2 products, not '+num_checked+'.');
		return;
	}

	$$('input.unchecked').invoke('up').invoke('up').invoke('fade', { duration: 0.8 });

	//$('selector_show_all').show();

	$('comparing').value='true';

	//track product selector comparing clicks
	pageTracker._trackEvent('Determine Your Heater', 'Compare Selected', null,num_checked);
}

function show_all(){
	$('comparing').value='false';

	$$('tr.product_selector_row').invoke('appear', { duration: 0.8 });

	//update_data();
	//$('selector_show_all').hide();

	//track product selector comparing clicks
	pageTracker._trackEvent('Determine Your Heater', 'Show All');
}

function checkbox_clicked(checkbox, id){
	if($F(checkbox) == null){
		checkbox.addClassName('unchecked');
		checked_products[id] = false;
		$('row_'+id).removeClassName('checked');
	}
	else{
		checkbox.removeClassName('unchecked');
		checked_products[id] = true;
		$('row_'+id).addClassName('checked');
	}
}

