
var xmlhttp = false;
var feld = '';
var nurbild = '';
var action = '';

function ajax_start()
{
	xmlhttp = false;

	if (window.XMLHttpRequest)
	{
		xmlhttp = new XMLHttpRequest();
	}
	else if (window.ActiveXObject)
	{
		try
		{
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			try
			{
				xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {}
    	}
	}

	if (!xmlhttp)
	{
	    alert('Fehler');
	    return false;
	}

	if (xmlhttp.overrideMimeType)
	{
		xmlhttp.overrideMimeType('text/xml; charset=ISO-8859-1');
	}
}


function ajax_open(url, tmp_feld, type, setaction)
{
  if(setaction) action = setaction;
	feld = tmp_feld;
	ajax_start();
	try {
		xmlhttp.abort();

		if(type == 1) xmlhttp.onreadystatechange = ajax_setvalue;
		else if(type == 2) xmlhttp.onreadystatechange = ajax_setvaluesplit;

		xmlhttp.open("GET", url, true);
		xmlhttp.setRequestHeader("Content-Type", "text/html; charset=ISO-8859-1");
		xmlhttp.send(null);
	}
	catch(e)
	{
	}
}


function setvalue(feld, wert)
{
	if(wert != '%')
	{
		try {
		if(top.document.getElementById)
		{
			eval("top.document.getElementById(feld).innerHTML = wert;");
		}
		else if(top.document.all)
		{
			eval("top.document.all." + feld + ".innerHTML = wert;");
		}
		} catch(e) {}
	}
}


function ajax_setvaluesplit()
{
	xmlhttp.onreadystatechange = function ()
	{
        if( xmlhttp.readyState == 4 && xmlhttp.status == 200)
		{
			var value = xmlhttp.responseText;
			var values = value.split('||x||');

			for(var i=0; i < feld.length; i++)
			{
				ajax_ungrau(feld[i]);
				if(isEl('A_' + feld[i])) { elClass('A_' + feld[i], 'h1 offen'); }
				if(values[i] == undefined) values[i] = '';
				setvalue(feld[i], values[i]);
				elSet(feld[i], 'height', 'auto');
			}
        }
    }
}

function ajax_setvalue()
{
	xmlhttp.onreadystatechange = function ()
	{
        if( xmlhttp.readyState == 4 )
		{
			if(feld != '')
			{
				if( xmlhttp.status == 200)
				{
					ajax_ungrau(feld);
					if(isEl('A_' + feld)) { elClass('A_' + feld, 'h1 offen'); }
					setvalue(feld, '<root>' + xmlhttp.responseText + '</root>');
		    }
				else
				{
					setvalue(feld, 'FEHLER: ' + xmlhttp.status);
				}
			}
		}
		else
		{
		}
	}
}


function ajax_grau(obj)
{
	try {
		ajax_ungrau(obj);
		document.getElementById(obj).className += ' ausgrauen';
	}
	catch(e) {}
}

function ajax_ungrau(obj)
{
	try {
		var attr = document.getElementById(obj).className;
		attr = attr.replace(/ausgrauen/, '');
		document.getElementById(obj).className = attr;
	}
	catch(e) {}
}

function ajax_wait(tmp_feld, nografik)
{
	if(document.getElementById(tmp_feld))
	{
		feld = tmp_feld;

		if(!nografik)
		{
			document.getElementById(feld).style.display = 'block';
			var height = document.getElementById(feld).offsetHeight - 5;
			if(!height) height = 25;
		}

		var grafik = '<div style="padding-top: 5px;';
		if(nografik) grafik += 'display: inline;';
		else grafik += 'height: ' + height + 'px';
		grafik += '">';
		grafik += '<div class="loading" style="display: inline !important;';
		if(tmp_feld == 'dzus' || tmp_feld == 'dmark') grafik += 'margin-left: 40px;';
    grafik += '">';
		if(!nografik) grafik += '<img src="img/loader.gif" width="16" height="16" align="top" alt="" /> &nbsp; ';
		grafik += 'bitte warten';
		if(nografik) grafik += ' ...';
		grafik += '</div></div>';

		if(top.document.getElementById)
		{
			eval("document.getElementById(feld).innerHTML = grafik;");
		}
		else if(top.document.all)
		{
			eval("document.all." + feld + ".innerHTML = '" + grafik + "';");
		}
		else if(top.document.layers)
		{
			eval("document.comments.document.open();");
			eval("document." + feld + ".document.write('" + grafik + "');");
			eval("document.comments.document.close();");
		}
	}
}

function ajax_setwait_nb(tmp_feld)
{
	nurbild = 1;
	ajax_setwait(tmp_feld);
	nurbild = '';
}

