var ns4 = (document.layers) ? true : false;
var ie4 = document.all;
var ns6 = document.getElementById && !document.all;
oldLink = '';

function getId(the_id)
{
	if(ns4) 
	{
	  getIt = document[the_id];
	} 
	else if(ns6) 
	{
	  getIt = document.getElementById(the_id);
	} 
	else if(ie4) 
	{
	  getIt = document.all[the_id];
	}
	return getIt;
}

function msg(place, message, relative)
{
	var tmsg = Builder.node("div", {id:'msgC', className:'msg', style:'display:none'}, [
		Builder.node("div", {id:'msg'}, "")
	]);

	if(!place)
		document.getElementsByTagName("body")[0].appendChild(tmsg);
	else
	{
		if(!relative)
			$(place).parentNode.style.position	= "relative";
		$(place).appendChild(tmsg);
	}

	if(message)
		$('msg').innerHTML = message;
	else
		$('msg').innerHTML = "<img src='img/l_il.gif' alt='Lade...' />";

	new Effect.Appear('msgC', {to:0.85, duration: 0.2});
}

function setMsg(message, close)
{
	if(!close)
	{
		message	= message + "<p><a href=\"#\" onclick=\"{killMsg();return false;}\">Schließen</a></p>";
		close	= true;
	}
	$('msg').innerHTML = message;
}

function killMsg()
{
	new Effect.Fade('msgC', {to: 0, duration: 0.3});
//	setTimeout("$('msgC').innerHTML = '';", 320);
}

function getXML(tag, req)
{
	return req.responseXML.getElementsByTagName(tag)[0].firstChild.nodeValue;
}

function setCategory(cat, p)
{
	for(i=0; i<7; i++) {
		document.getElementsByTagName("a")[i].className = false;
	}
	cat.className												= "active";
	document.getElementsByName("search")[0].select();
	document.getElementsByName("search")[0].style.background	= "white url('img/sym/" + (p ? "s_" : "") + (cat.title ? cat.title : cat.innerHTML) + ".gif') no-repeat 3px 3px";
	document.getElementsByName("place")[0].value				= cat.title ? cat.title : cat.innerHTML;
	document.getElementsByTagName("button")[0].innerHTML		= "<em>&raquo;</em> <b>" + cat.innerHTML + "</b>";
}

function ajaxSet(field, parameters, load, done)
{
	var load	= Builder.node("img", {src:"img/"+(typeof load == "undefined"?"l_ca.gif":load),id:"load"+field.id,alt:"lade...",style:"vertical-align:middle;margin-left:4px;"});
	var done	= Builder.node("img", {src:"img/"+(typeof done == "undefined"?"sym/ok_16.png":done),id:"done"+field.id,alt:"gespeichert!",style:"vertical-align:middle;margin-left:4px;"});

	if(typeof field.disabled != "undefined")
		field.disabled	= true;

	if($("load"+field.id))
		$("load"+field.id).style.display	= "inline";
	else
		field.parentNode.appendChild(load);
	
	new Ajax.Request("james.php"+(typeof parameters != "undefined"?"?"+parameters:""), {parameters:"key="+field.id+"&value="+field.value,onComplete:parseResponse});
	
	function parseResponse(req)
	{
		resp = req.responseText;
	
		field.value								= resp;
		
		if(field.disabled == true)
			field.disabled						= false;
		$("load"+field.id).style.display		= "none";
		
		if($("done"+field.id))
			$("done"+field.id).style.display	= "inline";
		else
			field.parentNode.appendChild(done);
		
		setTimeout('new Effect.Fade("done'+field.id+'");', 250);
	}
}

function addEngine()
{
  if((typeof window.sidebar == "object") && (typeof window.sidebar.addSearchEngine == "function"))
  {
    window.sidebar.addSearchEngine(
      "http://collectr.net/collectr-opensearch.xml",
      "http://collectr.net/favicon.ico",
      "collectr-opensearch.xml",
      "collectr" );
    document.cookie = "button=hide; expires=Tue, 07 Oct 2008 17:01:10 GMT;";
  }
  else
    alert("Fehler!");
}

function setDetails(id, date, host)
{
	$("date"+id).innerHTML	= date;
	
	if(typeof host == "undefined")
		host = "n/a";
	$("host"+id).innerHTML	= host;
	$("host"+id).title		= "Download über: "+host;
}

function showOpt(id)
{
	$("id"+id).onmouseout		= function(){hideOpt(id);};
	$("navi"+id).style.display	= "inline";
}

function hideOpt(id)
{
	$("navi"+id).style.display	= "none";
}

dflt = new Array();

function setContent(field, id)
{
	if(typeof id == "undefined")
		id = 0;

	if(!dflt[id])
	{
		field.onblur = function() { setContent(field, id); }
		dflt[id] = field.value;
	}
	
	if(field.value == dflt[id])
		field.value = '';
	else
		if(!field.value)
			field.value = dflt[id];
}