/**
 * @deprec Funktionen zum Auslesen von Eintraegen aus der Datenbank und Anzeigen als Liste
 * @deprec um schon geloggte Call auszuwaehlen und zu uebernehmen  
 *
 * @package Web-Logbuch 
 * @version V4.00
 * @subpackage Javascript
 *
 * @author Tobias Nowack DG1ATN
 * @author Detlef Karau DL4NTC (Anpassungen an IE)
 *
 * @version $Id: autocomplete.js 1018 2010-07-23 10:13:47Z dl4ntc $
 *
*/

var input_id = "rufz";
var qrzKey_id = "qrzKey";

/**
 * die Function nicht autocomplete benennen, da der IE damit nicht klar kommt
 */
function autocom()
{
	var input_element = document.getElementById(this.input_id);
	var input_value = input_element.value;

	//resetFields();
	var param = "rufz=" + input_value;
	
	// Anzeigen der Variablen param für das Debugging
	//document.getElementById('debug').innerHTML = param + '<br/>';
	
	if (input_value.length > 2)
	{
		request(param, "xml/input_autocomplete.php", requestDone);
		request(param, "xml/online_check.php", requestDoneOnlineCheck);
		request(param, "xml/tt_online_check.php", requestDoneOnlineChecktt);
	} 
	else
	{
		document.getElementById('onlineCheck').innerHTML = '';
		 resetFields();
	}
	var elem = document.getElementById('qsl_via');
	if (elem)
		elem.value = '';	
}

function request(param, url, result)
{
	//document.getElementById('debug').innerHTML = result + '<br/>';
	//var url = "xml/input_autocomplete.php";
	var ajax = new Ajax.Request(
    	url,
        {
        	method: 'post',
            parameters: param,
            onSuccess: result,
            on200: result,
            on404: requestError404,
            onFailure: requestFailure
        }
	);

}

function request2(param, url, result)
{
	var ajax = new Ajax.Request(
    	url,
        {
        	method: 'post',
            parameters: param,
            onSuccess: result,
            on200: result,
            on404: requestError404,
            onFailure: requestFailure
        }
	);

}




function requestDoneOnlineCheck(req)
{
	document.getElementById('onlineCheck').innerHTML = req.responseText;
}

function requestDoneOnlineChecktt(req)
{
	document.getElementById('onlineChecktt').innerHTML = req.responseText;
}

function requestDone(req)
{
//	document.getElementById('debug').innerHTML = req.responseText + '<br/>';
	var xmlDocument = req.responseXML;
    if (xmlDocument)
    {
		var doc = xmlDocument.getElementsByTagName("qso")[0];
//		document.getElementById('debug').innerHTML = 'hurz';
		var array = ["gridsquare", "dok", "dxcc", "namen", "qth", "qsl_via", "iota", "ldk", "dig"];
//        document.getElementById('debug').innerHTML = document.getElementById('debug').innerHTML + "<br /> length " + array.length;

		for (var x=0; x<array.length; x++)
		{
			var elem = doc.getElementsByTagName(array[x])[0];
//			document.getElementById('debug').innerHTML = document.getElementById('debug').innerHTML + "<br /> processing element " + array[x] + " elem " + elem;
			if(elem.firstChild != null)
				this.fillField(array[x], elem.firstChild.nodeValue, "text");
		}
	}
}

function fillField(field_id, field_value, field_type)
{
	var field = document.getElementById(field_id);
	if (field)
		switch(field_type)
		{
			case 'text':
				field.value = field_value;
			case 'option':
				// add code to fill option field
		}
}

function requestError404(req)
{
	alert(req.responseText);
}

function requestFailure(req)
{
	alert(req.responseText);
}

function resetFields()
{
	var array = ["gridsquare", "dok", "dxcc", "namen", "qth", "qsl_via", "iota", "ldk", "dig"];
	for (var x=0; x<array.length; x++)
	{
		this.fillField(array[x], "", "text");
	}
}

function init_autocomplete_list()
{
	new Ajax.Autocompleter('rufz', 'autocomplete_choices', 'xml/input_auto_list.php', {minChars:2});
}

