// globale Instanz von XMLHttpRequest
var xmlHttp = false;

// XMLHttpRequest-Instanz erstellen
// ... für Internet Explorer
try {
    xmlHttp  = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
    try {
        xmlHttp  = new ActiveXObject("Microsoft.XMLHTTP");
    } catch(e) {
        xmlHttp  = false;
    }
}
// ... für Mozilla, Opera und Safari
if (!xmlHttp  && typeof XMLHttpRequest != 'undefined') {
    xmlHttp = new XMLHttpRequest();
}

function get_amazon_infos()
{
	if (document.getElementById('asin').value != '') 
	{
		document.getElementById('asin_get').value = 'Laden...';
		document.getElementById('asin_get').disabled = true;
		xmlHttp.open("GET", 'index.php?sect=gamedb&act=get_amazon_infos&asin=' + document.getElementById('asin').value, true);
		xmlHttp.onreadystatechange = function() 
		{
			if (xmlHttp.readyState == 4)
			{
				var info = xmlHttp.responseText.split('|~|');
				document.getElementById('name').value = info[0];
				document.getElementById('packshot').value = info[1];
				document.getElementById('releasedate').value = info[2];
				document.getElementById('buy_link').value = info[3];
				document.getElementById('price').value = info[4];
				document.getElementById('description').innerHTML = info[5];
				document.getElementById('asin_get').value = 'Infos laden';
				document.getElementById('asin_get').disabled = false;
			}
		}
	}
	else alert('Bitte ASIN eintragen.'); 
	
	xmlHttp.send(null);
	return false;
}

function save_developer()
{
	if (document.getElementById('new_developer').value != '') 
	{
		document.getElementById('asin_get').disabled = true;
		xmlHttp.open("GET", 'index.php?sect=gamedb&act=save_developer&name=' + document.getElementById('new_developer').value, true);
		xmlHttp.onreadystatechange = function() 
		{
			if (xmlHttp.readyState == 4)
			{
				if (xmlHttp.responseText == 'false')
					alert('Fehler: Ein Entwickler mit diesem Namen existiert bereits.');
				else
				{
					document.getElementById('developer').innerHTML = xmlHttp.responseText;
					alert('Es wird empfohlen, die Entwickler-URL nachzutragen.');
				}
					
				document.getElementById('asin_get').disabled = false;
			}
		}
		document.getElementById('new_developer').value = '';
	}
	else alert('Bitte Entwicklernamen eintragen.'); 
	
	xmlHttp.send(null);
	return false;
}

function save_publisher()
{
	if (document.getElementById('new_publisher').value != '') 
	{
		xmlHttp.open("GET", 'index.php?sect=gamedb&act=save_publisher&name=' + document.getElementById('new_publisher').value, true);
		xmlHttp.onreadystatechange = function() 
		{
			if (xmlHttp.readyState == 4)
			{
				if (xmlHttp.responseText == 'false')
					alert('Fehler: Ein Publisher mit diesem Namen existiert bereits.');
				else
				{
					document.getElementById('publisher').innerHTML = xmlHttp.responseText;
					alert('Es wird empfohlen, die Publisher-URL nachzutragen.');
				}
			}
		}
		document.getElementById('new_publisher').value = '';
	}
	else alert('Bitte Publishernamen eintragen.'); 
	
	xmlHttp.send(null);
	return false;
}

function get_entries()
{
	if (document.getElementById('db_name').value != '') 
	{
		xmlHttp.open("GET", 'index.php?sect=gameblog&act=get_db_entries&db=' + document.getElementById('db_name').value, true);
		xmlHttp.onreadystatechange = function() 
		{
			if (xmlHttp.readyState == 4)
			{
				document.getElementById('db_entry').innerHTML = xmlHttp.responseText;
			}
		}
	}
	else document.getElementById('db_entry').innerHTML = '&nbsp;Bitte Datenbank w&auml;hlen.'; 
	
	xmlHttp.send(null);
	return false;
}

// search
var interval = "";
var lastsearch = "";

function searchit()
{	
	var sect = document.getElementById('sect').value;
	var act = document.getElementById('act').value;
	var keyword = escape(document.getElementById('search').value);
	if (keyword == window.lastsearch) return false;
		
	xmlHttp.open("GET", 'index.php?sect=' + sect + '&act=' + act + '&search=' + keyword + '&ajax=true', true);
	xmlHttp.onreadystatechange = function() 
	{
		if (xmlHttp.readyState == 4)
		{
			document.getElementById('ajax_' + act).innerHTML = xmlHttp.responseText;
			window.lastsearch = keyword;
		}
	}
	xmlHttp.send(null);
	return false;
}

function toggle_search(box)
{
	if (box.checked == true)
		window.interval = setInterval("searchit()",500);
	else
		clearInterval(window.interval);
}


// template saving
function save_tpl()
{	
	var name = document.getElementById('tpl_name').value;
	var code = document.getElementById('code').value;

	// Request öffnen
	xmlHttp.open('post', 'index.php?sect=management&act=save_template&name=' + name, true);
	// Requestheader senden
	xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	// Request senden
	xmlHttp.send('code=' + code);
	// Request auswerten
	xmlHttp.onreadystatechange = function() 
	{
		if (xmlHttp.readyState == 4)
		{
			alert('Inhalt des Templates "' + name + '" wurde gespeichert.');
		}
	}
}