/*** My ajax function sample ***/

function CriteriaChange(Page, SearchType)
{
	DisableFilters();
	UrlArray = new Array();
	
	if($(FilterArray[1]) != null && $(FilterArray[1]).value != '')	
	{
		UrlArray[1] = $(FilterArray[1]).value;
	}
	
	if('filter' == SearchType && $('query'))
	{
		$('query').value = '';
	}
	
	if('' == SearchType) 
	{
		if($('query') != null && $('query').value != '')
			SearchType = 'freetext';
		else
			SearchType = 'filter';
	}

	
	switch(SearchType)
	{
		case 'filter':
			if(0 == UrlArray.length || 1 == UrlArray.length)
			{
				for(i = 0; i<FilterArray.length; i++)
				{
					UrlArray[i] = 0;
				}
			}
			UrlArray[2] = 'filter';
			
			for(i = 3; i < FilterArray.length; i++)
			{
				if($(FilterArray[i]) != null && $(FilterArray[i]).value != '')	
				{
					UrlArray[i] = $(FilterArray[i]).value;
				}
			}
			break;
			
		case 'freetext':
			UrlArray[2] = 'freetext';
			if($('query') != null && $('query').value != '')	
				{
					UrlArray[3] = $('query').value;
				}
			break;
	}
	
	if(Page != '')
	{
		UrlArray[0] = Page;
	}
	else
	{
		UrlArray[0] = '1';
	}
	

	UrlArrayString = UrlArray.join('/');

	new Ajax.Request(window.UrlBase + '/' +UrlArrayString, {
		onComplete: function(transport){
	  	$('results_listing').innerHTML = transport.responseText;
	  	EnableFilters();
	  	
	  	}
	});
}

function UpdateCategoryDropdown(Division)
{
	new Ajax.Request('/ajax/catalogue/updatecategs/'+Division, 
	{
		onComplete: function(transport)
		{
	  		$('division_controlled').innerHTML = transport.responseText;
		}
	});
}

function UpdateColourDropDown(Category)
{
	new Ajax.Request('/ajax/catalogue/updatechoices/colour/'+Category, 
	{
		onComplete: function(transport)
		{
	  		$('category_controlled_colours').innerHTML = transport.responseText;
		}
	});
}

function UpdateSizeDropDown(Category)
{
	new Ajax.Request('/ajax/catalogue/updatechoices/size/'+Category, 
	{
		onComplete: function(transport)
		{
	  		$('category_controlled_sizes').innerHTML = transport.responseText;
		}
	});
	
}

function DisableFilters()
{
	//only disable filters and show loading if there are other filters than page and sort
	if(2 < FilterArray.length)
	{
		for(i = 3; i < FilterArray.length; i++)
		{
			$(FilterArray[i]).disabled = 'disabled';
		}
		$('results_listing').hide();
		$('loading').show();
	}
}

function EnableFilters()
{
	if(2 < FilterArray.length)
	{
		for(i = 3; i < FilterArray.length; i++)
		{
			$(FilterArray[i]).disabled = false;
		}

		$('loading').hide();
		$('results_listing').show();
	}
}