var hub_id		= 0;
var program_id 	= 0;
Event.observe(window,'load',function() {
        Event.observe('productCompare_hub','change',handleHubChange);
});
function handleHubChange(event) {
	if($('productCompare_hub').value!=0) {
		hub_id = $('productCompare_hub').value;
		//do our ajax
		$('productCompare_programDrop').innerHTML =	'';
		$('productCompare_productGrid').innerHTML =	'';		
		doAjaxHubChange('/ajax/product-compare','hub_id='+$('productCompare_hub').value + '&program_id=0&do=changeHub');
	}
}
function handleProgramChange(event) {	
	if($('productCompare_hub').value!=0) {
		program_id = $('productCompare_program').value;
		//do our ajax
		$('productCompare_productGrid').innerHTML =	'';	
		doAjaxProgramChange('/ajax/product-compare','hub_id='+hub_id + '&program_id='+$('productCompare_program').value + '&do=changeProgram');
	}
}
function doAjaxHubChange(url,ipars) {
		//show loading
        ajaxLoad('show');
        var pars = ipars
        var myAjax = new Ajax.Request (url, {method: 'get', parameters: pars,
        onComplete: showCompleteCompare, onSuccess: showSuccessHubChange,
        onFailure: showFailureCompare, onException: showExceptionCompare});
}
function doAjaxProgramChange(url,ipars) {
		//show loading
        ajaxLoad('show');
        var pars = ipars
        var myAjax = new Ajax.Request (url, {method: 'get', parameters: pars,
        onComplete: showCompleteCompare, onSuccess: showSuccessProgramChange,
        onFailure: showFailureCompare, onException: showExceptionCompare});
}
function showSuccessHubChange(resultObj) {
        var dataObj = eval("(" + resultObj.responseText + ")");
        	//there is a program we need to show before the grid  		
            if(dataObj.program == true) {
				$('productCompare_programDrop').innerHTML = dataObj.programHTML;
				//listen for another change
				Event.observe('productCompare_program','change',handleProgramChange);
				ajaxLoad('hide');
            }
            //no program, show the grid
            if(dataObj.grid == true) {
            	//we need to show the grid now, there is no program
				$('productCompare_productGrid').innerHTML = dataObj.gridHTML;
				ajaxLoad('hide');               	
            }
}
function showSuccessProgramChange(resultObj) {
	var dataObj = eval("(" + resultObj.responseText + ")");
        //show the grid
        if(dataObj.grid == true) {
        	//we need to show the grid now
			$('productCompare_productGrid').innerHTML = dataObj.gridHTML;
			Event.observe('productCompare_program','change',handleProgramChange);
			ajaxLoad('hide');               	
        } else {
        	//show an error
        }
}
function showCompleteCompare(resultObj) {
}
function showFailureCompare(resultObj) {
}
function showExceptionCompare(instance,exception) {
}

