// @(#) $Id: projectAjax2.js,v 1.6 2011-03-28 15:59:43 bernard Exp $

// these 3 variables should be defined in parent script:
//   formName
//   inputFieldName
//   outputDivName

var ty = false;
var oldValue="";
var outputFieldName = "proj_list";

function doAction() {
	var formKeysAndValues = $(formName).serialize(true);
	var myAjax = new Ajax.Request(projectAjaxCgi+"?"+inputFieldName+"+"+searchPublicProjectsFieldName+"+"+personProjects+"+"+targetScript,
		{method: 'post'
		,parameters: formKeysAndValues
		,onComplete: populateValues} );
}

function populateValues (originalRequest) {
	if ($(outputDivName) != undefined)
	{
		$(outputDivName).innerHTML = originalRequest.responseText;
		if (typeof getDirectoryMatches != 'undefined') {
			getDirectoryMatches();
		}
		//new Effect.Highlight($(outputDivName).parentNode, { startcolor: '#ffff99', endcolor: '#ffffff' });
	}
}

function dink() {
	otherItemTimeout();
	if (ty)return;
	if ($("projectSearchString") == undefined || $("projectSearchString").value.length < 3)
	{
		if ($(outputDivName) != undefined) {
			$(outputDivName).innerHTML="";
			oldValue = "";
			if (typeof getDirectoryMatches != 'undefined') {
				getDirectoryMatches();
			}
		}
	}
	else
	{
		if (oldValue != $("projectSearchString").value) {
			doAction();
			oldValue = $("projectSearchString").value;
		}
	}
	return;
}
function otherItemTimeout(){setTimeout("dink()", 1000); }
function doneTyping(){ ty=false; }
function Typing(){
	ty=true;
	setTimeout("doneTyping()", 1000);
} 
