/*
**	SZTAKI Dictionary Acronym Finder AJAX support
**
**	pataki@dsd.sztaki.hu
*/

var acronymForceUpdateOnInit = true;			
var acronymDelayEmptyResult = false;			
var searchObj = null;

/*
**	Callback from dictautotable when a key is pressed in the input field.
*/
function
acronymOnKeypress(v, extraParams)
{
	// When key pressed in the field reset paging in both the autocomplete extra params and the form.
	$("form[@name=search] input[@name=from]").val(0)
	extraParams['from'] = 0;
}

/*
**	Callback from dictautotable when new content is loaded but before displayed.
**	Gives a chance to update new content or process is it.
*/
function formatResult(result)
{
	$("div.pager a").click(
		function(){								
			acronymForceUpdateOnInit = true;
			acronymDelayEmptyResult = true;
			$("form[@name=search] input[@name=from]").val($.getURLParam("from", this.href));
			$("form[@name=search] input[@name=limit]").val($.getURLParam("limit", this.href));
			doSearch();
			return false;
		})
}


/*	
**	Starts a new dictautotable search session
*/
function doSearch()
{	
	var obj = $("#ac_me");
	obj.unbind();
	obj.dictautotable("ac.php", { resultElement:"#acronym_result", forceUpdate:acronymForceUpdateOnInit, delayEmptyResult:acronymDelayEmptyResult, minChars:1, matchSubset:1, matchContains:1, cacheLength:10, formatResult:formatResult, onKeyPress:acronymOnKeypress, selectOnly:1, extraParams:{"type":$("form[@name=search] input[@name=type][@checked]").val(), "charset":$("form[@name=search] input[@name=charset]").val(), "from":$("form[@name=search] input[@name=from]").val(), "limit":$("form[@name=search] input[@name=limit]").val() } });
	
	$('#ac_me').setSelection('*');				
}

/*
**	Called when the opction radios are clicked.
*/
function selectItem(what) {
	acronymForceUpdateOnInit = true;
	acronymDelayEmptyResult = false;
	$("form[@name=search] input[@name=from]").val(0);
	$("form[@name=search] input[@name=type]").val(what)	;
	
	doSearch();
}

/*
**	Called on page load to set up AJAX search.
*/
function acronymOnLoad()
{
	doSearch();
	$('#ac_me').setSelection('*');
	$('#ac_me').keydown(function(){$('#about_acronym_long').hide()});
}

/*
**	Load via dynapi or jQuery, depending on dynapi's availability.
*/
if (dynapi) {
	dynapi.onLoad(function() {
		acronymOnLoad();
	});
}
else {
	$(document).ready(function() {			
		acronymOnLoad();
	});
}
