
	var gAjax = function()
	{
	
	}

	var gPanel = function()
	{

	}
	var gList = function()
	{
	}

	var gDocument = function()
	{
	}


	gDocument.fn = gDocument.prototype =
	{
		document: null,
		init: function()
		{


		},
		append: function(element)
		{
			if(this.document == null)
			{
				
			}
		}
	}

	gPanel.fn = gPanel.prototype = 
	{
		element: null,
		height: 100,
		width: 100,
		name: "unnamed",
		init: function(height, width)
		{
			this.element = document.createElement("div");
			this.element.style.position = 'absolute';
			this.element.style.top = 100;
			this.element.style.left = 100;
			this.element.style.height = 100;
			this.element.style.width = 200;
			//this.element.innerHTML = "FSAFFDA";
			if(document.body)
		{
			document.body.appendChild(this.element);
		}
		else if(document.documentElement)
		{
			document.documentElement.appendChild(this.element);
		}
		else
		{
			document.getElementsByTagName('body')[0].appendChild(this.element);
		}
			
			
			//alert("Test");
		},

		show: function()
		{
		},

		hide: function()
		{
			element.display = 'none';
		},

		move: function()
		{
		},

		slide: function()
		{
		}
	};

	var panel = new gPanel;

	gPanel.fn.init(1,2);
	gList = gList.prototype =
	{
		elements: new Array(),
		add: function(element)
		{
			elements.push(element);
		},
		remove: function(index)
		{
			elements[index] = null;
		},
		get: function(index)
		{
			return elements[index];
		}
	}

	
	function $(id)
	{
		return document.getElementById(id);
	}


	function enable(id)
	{	
		if(id == 1)
		{
			document.getElementById('data').disabled = 'disabled';
		}
		else
		{
			document.getElementById('data').disabled = null;
		}
	}
	
	function showHide(element)
	{
		if(document.getElementById(element).style.visibility=='hidden')
		{
			document.getElementById(element).style.visibility='visible';
			document.getElementById(element).style.display = 'block';
		}
		else
		{
			document.getElementById(element).style.visibility='hidden';
			document.getElementById(element).style.display = 'none';
		}
	}


	function showGalleryImage(image, title, width, height)
	{
		var div = document.createElement('div');

		var background = document.createElement('div');
		background.setAttribute("style","clear:both;width:100%;height:100%;z-index:98;position:absolute;top:0;left:0;background-color:#000000;opacity:0.75;filter:alpha(opacity=75);");
		background.setAttribute("onclick","document.getElementById('body').removeChild(this)");

		var imageBackground = document.createElement('div');
		imageBackground.setAttribute("style","width:700px;height:400px;background-color:#FFFFFF;margin:auto;top:200px;left:200px;position:absolute;z-index:100;opacity:1.00;");
		
		var img = document.createElement('img');
		img.src = image;
		img.setAttribute("style","width:400px;height:300px;margin:auto;");
		

		imageBackground.appendChild(img);

	
		
		background.appendChild(imageBackground);

		document.getElementById("body").appendChild(background);
  	}
	var width = -1;
	var div;
	var interval;
	var left = 500;
	var height = 10;
	var test = false;
	var interval2;
	function slide(type)
	{
		
		if(width < 0)
		{
			width = 0;
			div = document.createElement("div");
			div.id = "slider";
			div.innerHTML = "HALLO";
			div.setAttribute("style","z-index:20;background-color:#afafaf;border:1px solid black;position:absolute;left:500px;top:300px;");
			document.getElementById('body').appendChild(div);
			interval = window.setInterval("slide()", 10);
		}
		if(type == 'height')
		{
			height+=10;
			document.getElementById('slider').style.height = height+'px';
		
		}
		else
		{
			width+=10;
			left-=5;
			document.getElementById('slider').style.width = width+'px';
			document.getElementById('slider').style.left = left+'px';
		}


		
		if(width > 500 && test == false)
		{
			window.clearInterval(interval);
			interval2 = window.setInterval("slide('height')", 10);
			test = true;
		}

		if(height > 300)
		{
			window.clearInterval(interval2);
		}
	}


	function getRating(id,value,type)
	{
		if(type == 'out')
		{
			value++;
			for(i=1;i<value;i++)
			{
				document.getElementById(i+id).src='/images/icons/star.png';
			}
		}
		else
		{
			value++;
			for(i=1;i<value;i++)
			{
				document.getElementById(i+id).src='/images/icons/star_hover.png';
			}
		}	
	}	

	var win;
	var httpReq2;

	function ModalWindow(){
		this.modalBack = null;
		this.contentBack = null;
	 };
	ModalWindow.prototype.close = function(secs){
		pause(secs);
		document.getElementById('xyz').parentNode.removeChild(document.getElementById('xyz'));
		document.getElementById('xyz2').parentNode.removeChild(document.getElementById('xyz2'));
	}
	ModalWindow.prototype.show = function(id,content){
		content = unescape(content);
		modalBack = document.createElement('div');		
		modalBack.className = 'modalBack';
		modalBack.id = "xyz2";
		contentBack = document.createElement('div');
		contentBack.className = 'contentBack';

		contentBack.innerHTML ="<img src=\"/images/design/admin/close_icon.png\" style=\"cursor:pointer;float:right;margin-right:2px;margin-top:5px;padding:0px;height:21px;width:21px;\" onclick=\"win.close(0);\"><div style=\"margin-top:10px;margin-left:30px;margin-bottom:50px;height:auto;\"><div id=\"wincontent\">"+content+"</div></div>";
		contentBack.id = "xyz";
		if(document.body)
		{
			document.body.appendChild(modalBack);
			document.body.appendChild(contentBack);			
		}
		else if(document.documentElement)
		{
			document.documentElement.appendChild(modalBack);
			document.documentElement.appendChild(contentBack);
		}
		else
		{
			document.getElementsByTagName('body')[0].appendChild(modalBack);
			document.getElementsByTagName('body')[0].appendChild(contentBack);
		}
	}

	function sendLoadRequest(type,url,parameter)
	{
		//var url = "index.php?module=site&action=showTemplate&template="+template;
		document.getElementById('loaderback').style.visibility='visible';
		document.getElementById('loader').style.visibility='visible';
		httpReq2 = null;
		httpReq2 = getHTTPObject();
		if(type == 'post')
		{			
			httpReq2.open("POST",url,true);
			httpReq2.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
  			httpReq2.onreadystatechange = handleLoadIncomingData;
  			httpReq2.send(parameter);
		}
		else
		{
			httpReq2.open("GET",url+"&noajax=true", true); 
  			httpReq2.send(null);
  			httpReq2.onreadystatechange = handleLoadIncomingData;
		}
	}

	//var Object =
 /*

	function G(element)
	{
		setStyle : function(style)
		{
			return document.getElementById(element);
		}
	}



	//function Object

	//function Object

	//alert(G('content').setStyle('7'));
	//alert(GSF.t.test());




	function G(element)
	{
		setStyle : function(style)
		{
			return document.getElementById(element);
		}

		test : function()
		{
			return "TESTWERT";
		}
	}



	//function Object

	//function Object

	//alert(G('content').setStyle('7'));
	alert(G('content').test());
*/
	win = new ModalWindow();

	function handleLoadIncomingData()
	{
		if(httpReq2.readyState == 4)
		{
			document.getElementById('loaderback').style.visibility='hidden';
			document.getElementById('loader').style.visibility='hidden';
			if(httpReq2.responseText!='')
			{	

				var string = trim(httpReq2.responseText);
				win.show('1',httpReq2.responseText);
				var string = httpReq2.responseText;
				
			


			}
    		}
		
	}
	function evalHTML(content)
	{
		content.replace(/\"/,'jhbjhg');
		return content;
	}


	function cutFirstLast(cString)
	{
		return cString.substr(1,cString.length-2);
	}


	function pause(secs)
	{
		var cont = parseInt(new Date().getTime()) + parseInt(secs*1000);
	 	while(true)
		{
         		if ((new Date()).getTime() > cont)
			{
           		 	break;
        		}
		}
	}


var close = 0;


	function parseAjax(ajaxstring)
	{
		var objectOpen = false, elementOpen = false, sElementOpen = false;
		var elements = new Array();
		var pairs = new Object();
		var actualIndex = 0;
		var actualChar,nextChar;
		elements[actualIndex] = new Object();
		
		var element = "", value = "", actualElement = "";
		
		for(var i = 0; i < ajaxstring.length; i++)
		{
			actualChar = ajaxstring.substr(i,1);
			nextChar = ajaxstring.substr(i+1,1);
			nextChar2 = ajaxstring.substr(i+2,1);
			if(i < ajaxstring.length - 1)
			{
				
			}
			else
			{
				//nextChar2 = '';
			}

			if(actualChar == '{')
			{
				if(objectOpen == false)
				{
					objectOpen = true;
					elementOpen = true;
				}
				else
				{
					elementOpen = true;
				}
			}
			else if(actualChar == '}')
			{
				if(elementOpen == true)
				{
					elementOpen = false;
					elements[actualIndex][cutFirstLast(element)] = cutFirstLast(value);
					actualIndex++;
					elements[actualIndex] = new Object();					
					element = "";
					value = "";
				}
				else
				{
					objectOpen = false;
				}
			}
			else 
			{
				if(actualChar == ',' && sElementOpen == false)
				{
					elements[actualIndex][cutFirstLast(element)] = cutFirstLast(value);					
					element = "";
					value = "";
				}
				else if(actualChar == '"')
				{


					actualElement += '"';
					if(sElementOpen == false)	
					{
						sElementOpen = true;
					}
					else
					{
						if((nextChar == ':' || nextChar == ',' && nextChar2 == '"') || (nextChar == '}' && (nextChar2 == '' || nextChar2 == '{' || nextChar2 == '}')))
						{
							if(element != "")
							{
								value = actualElement;
								actualElement = ""; 
							}
							else
							{	
								element = actualElement;
								actualElement = "";
							}
							sElementOpen = false;
						}
					}

				}
				else if(actualChar == ':')
				{
					if(sElementOpen == true)
					{
						actualElement += ':';
					}
				}
				else
				{
					if(sElementOpen == true)
					{
						actualElement += actualChar;
					}
				}
			}
		}
		return elements;
	}

	function parseAjax2(ajaxstring)
	{
		var objectOpen = false,elementOpen = false,sElementOpen = false;
		var elements = new Array();
		var pairs = new Object();
		var actualIndex = 0;
		var actualChar,nextChar;
		actualObject = new Object();
		var element = "",value = "",actualElement = "";
		
		for(var i = 0; i < ajaxstring.length; i++)
		{
			actualChar = ajaxstring.substr(i,1);
			nextChar = ajaxstring.substr(i+1,1);
			if(actualChar == '{')
			{
				if(objectOpen == false)
				{
					objectOpen = true;
					elementOpen = true;
				}
				else
				{
					elementOpen = true;
				}
			}
			else if(actualChar == '}')
			{
				if(elementOpen == true)
				{
					elementOpen = false;					
					actualObject[cutFirstLast(element)] = cutFirstLast(value);
					elements[actualIndex] = actualObject;
					actualIndex++;
					actualObject = new Object();
					element = "";
					value = "";
				}
				else
				{
					objectOpen = false;
				}
			}
			else 
			{
				if(actualChar == ',' && sElementOpen == false)
				{
					actualObject[cutFirstLast(element)] = cutFirstLast(value);					
					element = "";
					value = "";
				}
				else if(actualChar == '"')
				{


					actualElement += '"';
					if(sElementOpen == false)	
					{
						sElementOpen = true;
					}
					else
					{
						if(nextChar == ':' || nextChar == ',' || nextChar == '}')
						{
							if(element != "")
							{
								value = actualElement;
								actualElement = ""; 
							}
							else
							{	
								element = actualElement;
								actualElement = "";
							}
							sElementOpen = false;
						}
					}

				}
				else if(actualChar == ':')
				{
					if(sElementOpen == true)
					{
						actualElement += ':';
					}
				}
				else
				{
					if(sElementOpen == true)
					{
						actualElement += actualChar;
					}
				}
			}
		}
		return elements;
	}

	/*
		param:
			




	
	*/




	function evaluateAjax(ajaxstring)
	{
		var elements = new Array();
		elements = parseAjax(ajaxstring);
		if(elements.length == 0)
		{
			return 0;
		}
		for(var i = 0; i < elements.length; i++)
		{	
			if(elements[i]['action'] == 'remove')
			{
				document.getElementById(elements[i]['id']).parentNode.removeChild(document.getElementById(elements[i]['id']));		
			}
			else if(elements[i]['action'] == 'append')
			{
				var div1 = document.createElement("div");
				div1.innerHTML = elements[i]['value'];
				document.getElementById(elements[i]['id']).appendChild(div1);
			}	
			else if(elements[i]['action'] == 'replace')
			{
				var div1 = document.createElement("div");
				if(document.getElementById(elements[i]['id']) != null)
				{
					document.getElementById(elements[i]['id']).innerHTML = elements[i]['value'];
				}
				//document.getElementById(elements[i]['id']).firstChild.replaceData(0,document.getElementById(elements[i]['id']).firstChild.nodeValue.length,elements[i]['value']);
				//document.getElementById(elements[i]['id']).parentNode.replaceChild(div1,document.getElementById(elements[i]['id']));
			}
			else if(elements[i]['action'] == 'popup')
			{
				var div1 = document.createElement("div");	
				div1.setAttribute('style','z-index:6000;position:absolute;top:100px;left:300px;width:500px;height:auto;background-color:#FEFEFE;border:1px solid #aaaaaa;padding-left:10px;color:#343434;');
				div1.id = 'xPopup';
				div1.innerHTML = 'Info:<br/><br/>'+elements[i]['value']+ '<br/><br/> <input type="button" onclick="document.getElementById(\'xPopup\').parentNode.removeChild(document.getElementById(\'xPopup\'))" value="Schliessen"><br/><br/>';
				
				if(document.body)
				{
					document.body.appendChild(div1);
				}
				else if(document.documentElement)
				{
					document.body.appendChild(div1);
				}
				else
				{
					document.body.appendChild(div1);
				}
			}
			else if(elements[i]['action'] == 'popup2')
			{
				var div1 = document.createElement("div");	
				div1.setAttribute('style','z-index:6000;position:absolute;top:100px;left:300px;width:500px;height:auto;padding-left:10px;color:#343434;');
				div1.id = 'xPopup';
				div1.innerHTML = elements[i]['value']+ '<br/><br/>';
				
				if(document.body)
				{
					document.body.appendChild(div1);
				}
				else if(document.documentElement)
				{
					document.body.appendChild(div1);
				}
				else
				{
					document.body.appendChild(div1);
				}
			}
			else if(elements[i]['action'] == 'close')
			{
				win.close(0);
			}
			else if(elements[i]['action'] == 'insertBefore')
			{
				var div1 = document.createElement("div");
				div1.innerHTML = elements[i]['value'];
				document.getElementById(elements[i]['siblingid']).parentNode.insertBefore(div1,document.getElementById(elements[i]['siblingid']));
			}	
		}
		return 1;
	}




	function test(element)
	{
		//alert(element);
		//alert(cumulativeOffset(element));
		var div = document.createElement("div");
		div.style.width = "200px";
		div.style.height = "20px";
		div.style.border = "1px solid black";
		div.style.visibility = "visible";
		div.id = "depp";
		div.innerHTML = "JALLO";	
		document.getElementsByTagName('body')[0].appendChild(div);
	}






	function expandUnexpand(id)
	{
		if(document.getElementById(id).style.visibility == 'visible')
		{
			document.getElementById(id).style.visibility = 'hidden';
			document.getElementById(id).style.display = 'none';
			document.getElementById('head_'+id).style.borderBottom = '1px solid #ccc';
		}
		else
		{
			document.getElementById('head_'+id).style.borderBottom = '1px solid #FFF';
			document.getElementById(id).style.display = 'block';
			document.getElementById(id).style.visibility = 'visible';
		}		
	}










	function menuCoords()
	{
		this.top = 0;
		this.left = 0;
		this.bottom = 0;
		this.right = 0;
	}

	

	function resetStatusbar()
	{
		document.getElementById('status_bar').innerHTML = "";
	} 


	document.onmousemove = function(e)
	{
		var event;
		var x,y;
		var target;
		if(e)
		{
			event = e;
		}
		else
		{
			event = window.event;
		}
		x = event.clientX;
		y = event.clientY;
		if(event.target)
		{
			target = event.target;
		}
		else
		{
			target = event.srcElement;
		}
		if(menuValues[target] != '')
		{
			//showMenu(target);
		}
		if( x >actualMenu.right || x < actualMenu.left || y > actualMenu.bottom || y < actualMenu.top)
		{
			if(document.getElementById('openMenu'))
			{
				document.getElementById('openMenu').style.visibility = 'hidden';
			}
		} 
	}



	/*
	function(e)
	{	
		
		var element;
		if(e)
		{
			element = e.target;
		}
		else
		{
			element = window.event.srcElement;
		}	
		if(element.id!='')
		{
			return true;
		}
		while(element = element.parentNode)
		{
			if(element.id!='')
			{
				return true;
			}
		}
		document.getElementById('openMenu').style.visibility = 'hidden';
		
	}
	*/ 


	var actualMenu = new menuCoords();
	function menuHover(element)
	{
		if(element.className=='menu_item')
		{
			element.className='menu_item_hover';
		}
		else
		{ 
			element.className='menu_item';
		}
	}

		/*
			<div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=poll" class="menu_text">Umfragen</a></div>

			<div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=module&action=listModules" class="menu_text">Installation</a></div>


			<div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=download" class="menu_text">Downloads</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?s=clan&module=sponsor" class="menu_text">Sponsoren</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?s=clan&module=partner" class="menu_text">Partner</a></div>
		*/


		var menuValues = new Array();
		menuValues['menu_basics'] = '<div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)" ><a href="index.php?module=setting" class="menu_text">Grundeinstellungen</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=setting&action=editServicesettings" class="menu_text">Wartungsmodus</a></div>';
		menuValues['menu_user']= '<div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)" ><a href="index.php?module=user&action=listAdmins" class="menu_text">Benutzer bearbeiten</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=user&action=rights" class="menu_text">Rechte bearbeiten</a></div>';
		menuValues['menu_module'] = '<div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)" ><a href="index.php?module=module&action=installModule" class="menu_text">Modul installieren</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=module&action=listModules" class="menu_text">Module anzeigen</a></div>';
		menuValues['menu_content'] = '<div class="menu_item" onmouseover="menuHover(this);" onmouseout="menuHover(this)"><a href="index.php?module=news" class="menu_text">News</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=poll" class="menu_text">Umfragen</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=contact"  class="menu_text">Kontakt</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=faq"  class="menu_text">FAQ</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?s=clan&module=award" class="menu_text">Awards</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?s=clan&module=sponsor" class="menu_text">Sponsoren</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?s=clan&module=partner" class="menu_text">Partner</a></div><div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=download" class="menu_text">Downloads</a></div>';
		menuValues['menu_settings'] = '<div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)"><a href="index.php?module=user&action=listAdmins" class="menu_text">Rechteverwaltung</a></div>';
		menuValues['menu_design'] = '';

		var submenuValues = new Array();
		submenuValues['menu_test'] = '<div class="menu_item" onmouseover="menuHover(this)" onmouseout="menuHover(this)" ><a href="index.php?module=setting" class="menu_text">Grundeinstellungen</a></div>';

	//menuValues['menu_cups'] = '<a href="index.php?s=clan&module=cup&action=showOverview" class="menu">Cupübersicht</a><br/><a href="index.php?s=clan&module=cup&action=showRules" class="menu">Rulez</a><br/><a href="index.php?s=clan&module=cup&action=showTeams" class="menu">Teilnehmer</a><br/><a href="index.php?s=clan&module=cup&action=actualCup" class="menu">Turnierbaum</a><br/><a href="index.php?s=clan&module=cup&action=showCuphistory" class="menu">Wall of Fame</a><br/>';
	//menuValues['menu_service'] = '<a href="index.php?module=site&id=imprint" class="menu">Impressum</a><br/><a href="index.php?module=faq" class="menu">FAQ</a><br/><a href="index.php?module=contact" class="menu">Kontakt</a><br/><a href="index.php?module=" class="menu">Link us</a><br/>';
	//menuValues['menu_community'] = '<a href="index.php?s=clan&module=member&action=user" class="menu">Userlist</a><br/><a href="index.php?module=guestbook" class="menu">Gästebuch</a><br/><a href="index.php?module=board" class="menu">Forum</a><br/><a href="index.php?module=" class="menu">Link us</a><br/>';
	function cumulativeOffset(element)
	{ 
		var valueTop = 0;
		var valueLeft = 0;
		do
		{
			valueTop += element.offsetTop  || 0; 
			valueLeft += element.offsetLeft || 0;
			element = element.offsetParent;
		}
		while (element);
		return [valueLeft, valueTop];
	} 

	function checkUncheckAll(element,name)
	{
		for(var i = 0; i < document.getElementsByTagName("input").length; i++)
		{
			document.getElementsByTagName("input")[i].checked = element.checked;
		}
	}

	function checkUncheckGroup(element,group)
	{
		for(var i = 0; i < document.getElementsByTagName('input').length; i++)
		{
			if(document.getElementsByTagName('input')[i].group == group)
			{
				document.getElementsByTagName('input')[i].checked = element.checked;
			}
		}
	}

	function showMenu(element)
	{	

		if(!element || element == '')
		{
			document.getElementById('openMenu').style.visibility = 'hidden';
			return true;
		}
		else
		{
			
	
		var offset = cumulativeOffset(element);
		document.getElementById('openMenu').style.position = 'absolute';		
		document.getElementById('openMenu').style.top = offset[1] +element.offsetHeight-1+'px';
		document.getElementById('openMenu').style.left = offset[0]+25+'px';
		document.getElementById('openMenu').style.zIndex = '40';

		
		if(menuValues[element.id]!='')
		{						
			document.getElementById('menuValues').innerHTML = menuValues[element.id];		
			document.getElementById('openMenu').style.visibility = 'visible';
			
		}
		else
		{
			document.getElementById('openMenu').style.visibility = 'hidden';
		}


		var offTop,objBody;
  		if(document.all && !window.opera)
   		 objBody =(window.document.compatMode == "CSS1Compat")? window.document.documentElement : window.document.body || null;
  		else
   		 objBody = document.documentElement;
 		if (window.pageYOffset)
		{
    			offTop = window.pageYOffset;
 		}
		else if(typeof objBody.scrollTop == "number")
		{
    			offTop = objBody.scrollTop;
  		}
		actualMenu.top = offset[1] - offTop;
		actualMenu.bottom = offset[1] +element.offsetHeight-1+ document.getElementById('openMenu').offsetHeight;
		actualMenu.left = offset[0]+25;
		actualMenu.right = offset[0] + document.getElementById('openMenu').offsetWidth+5;	
		}
	}


	function showSubMenu(element)
	{	
		if(!element || element == '')
		{
			//document.getElementById('menu1').style.visibility = 'hidden';
			//return true;
		}
		else
		{

		var div = document.createElement('div');
		var div2 =  document.createElement('div');
		div.id = 'menu1';
		div2.innerHTML = '<div class="menu_head" id="menu_head1">&nbsp;</div><div class="menu_mid" id="menuValues1">&nbsp;</div><div class="menu_foot" id="menu_foot1">&nbsp;</div>';
		div.appendChild(div2);

				if(document.body)
				{
					document.body.appendChild(div);
				}
				else if(document.documentElement)
				{
					document.body.appendChild(div);
				}
				else
				{
					document.body.appendChild(div);
				}
		if(actualMenu != element)
		{
			document.getElementById('menu1').style.visibility = 'visible';
		}
		document.getElementById('menu1').style.position = 'absolute';		
		document.getElementById('menu1').style.top = cumulativeOffset(element)[1] - 1+'px';
		document.getElementById('menu1').style.left = cumulativeOffset(element)[0]+element.offsetWidth+1+'px';
		document.getElementById('menu1').style.zIndex = '41';

		
		if(menuValues[element.id]!='')
		{	
			document.getElementById('menuValues1').innerHTML = submenuValues['menu_test'];
			document.getElementById('menu1').style.visibility = 'visible';
		}
		else
		{
			document.getElementById('menu1').style.visibility = 'hidden';
		}
		var offTop,objBody;
  		if(document.all && !window.opera)
   		 objBody =(window.document.compatMode == "CSS1Compat")? window.document.documentElement : window.document.body || null;
  		else
   		 objBody = document.documentElement;
 		if (window.pageYOffset)
		{
    			offTop = window.pageYOffset;
 		}
		else if(typeof objBody.scrollTop == "number")
		{
    			offTop = objBody.scrollTop;
  		}
		actualMenu.top = cumulativeOffset(element)[1] - offTop;
		actualMenu.bottom = cumulativeOffset(element)[1] +element.offsetHeight-1+ document.getElementById('menu1').offsetHeight;
		actualMenu.left = cumulativeOffset(element)[0]+25;
		actualMenu.right = cumulativeOffset(element)[0] + document.getElementById('menu1').offsetWidth+5;	
		}
	}

	function showHide(element)
	{
		if(document.getElementById(element).style.visibility=='hidden')
		{
			document.getElementById(element).style.visibility='visible';
			document.getElementById(element).style.display = 'block';
		}
		else
		{
			document.getElementById(element).style.visibility='hidden';
			document.getElementById(element).style.display = 'none';
		}
	}
  
function trim (zeichenkette) {
  // Erst führende, dann Abschließende Whitespaces entfernen
  // und das Ergebnis dieser Operationen zurückliefern
  return zeichenkette.replace (/^\s+/, '').replace (/\s+$/, '');
}

	function cutSides(string)
	{
		var end = trim(string).length-1;
		return string.substring(1,end);
	}
 

	function activateForm(form)
	{
		formular = document.getElementById(form);
		for(var i = 0; i < formular.length; i++)
		{
			var element = formular.elements[i];
			element.setAttribute('readOnly','false');
			element.style.backgroundColor = '#FFFFFF';
		}
	}
	var element;

	function activateLogin()
	{
		element = document.getElementsByName('customer_id')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('customer_password')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';	
	}


	function deactivateLogin()
	{
		element = document.getElementsByName('customer_id')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('customer_password')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
	}


	function activateData()
	{
		element = document.getElementsByName('customer_firstname')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('customer_lastname')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('customer_lastname')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('customer_streetnumber')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('customer_street')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('customer_zipcode')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('customer_residence')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('customer_telephone_areacode')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('customer_telephone_callnumber')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('customer_mail')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('birthday_day')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('birthday_month')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
		element = document.getElementsByName('birthday_year')[0];
		element.removeAttribute('readOnly');
		element.style.backgroundColor = '#FFFFFF';
	}

	function deactivateData()
	{
		element = document.getElementsByName('customer_firstname')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('customer_lastname')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('customer_lastname')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('customer_streetnumber')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('customer_street')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('customer_zipcode')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('customer_residence')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('customer_telephone_areacode')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('customer_telephone_callnumber')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('customer_mail')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';

		element = document.getElementsByName('birthday_day')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('birthday_month')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';
		element = document.getElementsByName('birthday_year')[0];
		element.setAttribute('readOnly','false');
		element.style.backgroundColor = '#EFEFEF';

	}

	function deactivateForm(form)
	{
		formular = document.getElementById(form);
		for(var i = 0; i < formular.length; i++)
		{
			var element = formular.elements[i];
			element.setAttribute('readOnly','true');	
			element.style.backgroundColor = '#EFEFEF';
		}
	}


/*















	function getFormElements(form)
	{
		var string = "";
		formular = document.getElementById(form);
		for(var i = 0; i < formular.length; i++)
		{
			var element = formular.elements[i];
			if(string != "")
			{
				if(element.type == 'checkbox' && element.name != '')
				{
					if(element.checked)
					{
						string += "&"+element.name+"=1";
					}
					else
					{
						string += "&"+element.name+"=0";
					}
				}
				else
				{
					string += "&"+element.name+"="+escape(element.value);
				}
			}
			else
			{
				if(element.type == 'checkbox' && element.name != '')
				{
					if(element.checked)
					{
						string = element.name+"=0";
					}
					else
					{
						string = element.name+"=0";
					}
				}
				else
				{
					string = element.name+"="+escape(element.value);
				}
			}				
		}
		return string;
	}

*/
	function getFormElements(form)
	{
		var string = "deliverer=gsajax";
		formular = document.getElementById(form);
		for(var i = 0; i < formular.length; i++)
		{
			var element = formular.elements[i];	
			if(element.type == 'checkbox' && element.name != '')
			{
				if(element.checked)
				{
					string += "&"+element.name+"=1";
				}
				else
				{
					string += "&"+element.name+"=0";
				}
				
			}
			else if(element.type == 'radio' && element.name != '')
			{
				if(element.checked == true)
				{
					string += "&"+element.name+"="+escape(element.value);
				}
			}
			else if(element.type == 'select-one')
			{	
							
				for(var j = 0; j < element.options.length; j++)
				{
					if(element.options[j].value != '')			
					{
						string += "&"+element.name+"A[]="+element.options[j].value; 
					}
				}
				if(element.selectedIndex != -1)
				{	
					string += "&"+element.name+"="+element.options[element.selectedIndex].value;
				}
							
			}
			else
			{
				string += "&"+element.name+"="+escape(element.value);
			}			
		}
		return string;
	}


	//HTTP-Request Funktionen


	function getHTTPObject()
	{
  		var xmlhttp;
		try{
			xmlhttp = new XMLHttpRequest();
		}
		catch(e)
		{
  			try
			{
      				xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
      			}
      			catch(e)
      			{
       			try
       			{
         				 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
       			}
       			catch(E)
       			{
          				xmlhttp = false;
        			}
   		 	}
		}
    		return xmlhttp;
 	}

	var httpReq = getHTTPObject();
	var div = document.createElement("DIV");
	function handleIncomingData()
	{
  		if(httpReq.readyState == 4)
		{
			//document.getElementById('loaderback').style.visibility='hidden';
			//document.getElementById('loader').style.visibility='hidden';
			if(httpReq.responseText!='')
			{	
				var string = trim(httpReq.responseText);
				//alert(string);
				if(evaluateAjax(string) == 0)
				{
					//document.write("Fehler in der Antwort");
				}

			}
    		}


  	}




	function handleIncomingData2()
	{
  		if(httpReq.readyState == 4)
		{
			if(httpReq.responseText!='')
			{	
				alert(httpReq.responseText);
				var string = trim(httpReq.responseText);
				var arr = string.split("\n");
				if(arr[0] == "AjaxStrings")
				{
					for(var i = 1; i < arr.length; i++)
					{
						var cmds = cutSides(arr[i]).split('|');
						if(document.getElementById(cmds[0]))
						{
							if(cmds[2] == 'w')
							{
								document.getElementById(cmds[0]).innerHTML = cmds[1]; 
							}
							else
							{
								document.getElementById(cmds[0]).innerHTML += cmds[1];
							}
						}
					}
				}
				else if(httpReq.responseXML == null)
				{
					document.getElementById('content').innerHTML = httpReq.responseText;
				}
				else
				{
					var dataset = httpReq.responseXML.getElementsByTagName("dataset");
					if(dataset.length>0)
					{
						for(var i = 0; i < dataset.length; i++)
						{
							if(dataset[i].hasChildNodes())
							{
								if((dataset[i].childNodes[2].firstChild.nodeValue)=='append')
								{
								/*
									alert(dataset[i].childNodes[0].firstChild.nodeValue);
									div.setAttribute("style",dataset[i].childNodes[3].firstChild.nodeValue);
									div.innerHTML = dataset[i].childNodes[1].firstChild.nodeValue;*/
									document.getElementById(dataset[i].childNodes[0].firstChild.nodeValue).innerHTML += dataset[i].childNodes[1].firstChild.nodeValue;//.appendChild(div);
								}
								else
								{
									document.getElementById(dataset[i].childNodes[0].firstChild.nodeValue).setAttribute("style",dataset[i].childNodes[3].firstChild.nodeValue);
									document.getElementById(dataset[i].childNodes[0].firstChild.nodeValue).innerHTML = dataset[i].childNodes[1].firstChild.nodeValue;	
								}
							}
						}
					}
					else
					{
						document.getElementById('content').innerHTML = httpReq.responseText;
					}	
				}
			}
    		}

  	}





	function promptRequest(type,url,parameter,text)
	{
		var div = document.createElement("DIV");

		var head = 'Löschbestätigung';
		if(parameter != null)
		{
			head = parameter;
		}
		//div.innerHTML = '<br/>'+text+'<br/><br/><input type="button" value="Ja" onclick="sendRequest(\''+type+'\',\''+url+'\',\''+parameter+'\');this.parentNode.style.visibility=\'hidden\';"/> <input type="button" value="Nein" onclick="this.parentNode.style.visibility=\'hidden\';"/>';
		div.setAttribute("style","background-color:#EFEFEF;border:2px solid #c00044;width:350px;height:auto;z-index:5001;position:absolute;left:300px;top:250px;'");
		div.innerHTML = "<div style=\"margin-left:20px;margin-top:10px;text-align:center;\">"+text+"<br/><br/><input type=\"button\" value=\"Ja\" onclick=\"sendRequest('"+type+"','"+url+"','"+parameter+"');this.parentNode.parentNode.style.visibility='hidden';\"/> <input type=\"button\" value=\"Nein\" onclick=\"this.parentNode.parentNode.style.visibility='hidden';\"/><br/><br/>";

	       win.show("1","<span class='headline1'>"+head+"</span><br><br>"+text+"<br/><br/><input type=\"button\" value=\"Ja\" onclick=\"sendRequest('"+type+"','"+url+"','"+parameter+"');win.close(0);\"/> <input type=\"button\" value=\"Nein\" onclick=\"win.close(0);\"/><br/><br/>");

	}

	function addText(text,element)
	{		
		insertAtCursor(text,element); 
	}

	function addImage(path, element)
	{
		
	}

	function insertAtCursor(text,element)
	{
		document.getElementById(element).focus();
		var range = document.selection.createRange().duplicate();
		range.text = text;
	}

	function checkUncheck(id)
	{
		if(document.getElementById(id).checked==true)
		{
			document.getElementById(id).checked=false;
		}	
		else
		{
			document.getElementById(id).checked=true;
		}
	}
function realpath (path) {
    // Return the resolved path  
    // 
    // version: 1003.2411
    // discuss at: http://phpjs.org/functions/realpath    // +   original by: mk.keck
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // %        note 1: Returned path is an url like e.g. 'http://yourhost.tld/path/'
    // *     example 1: realpath('../.././_supporters/pj_test_supportfile_1.htm');
    // *     returns 1: 'file:/home/kevin/workspace/_supporters/pj_test_supportfile_1.htm'    
    var p = 0, arr = [];
    /* Save the root, if not given */
    var r = this.window.location.href;
    /* Avoid input failures */    path = (path + '').replace('\\', '/');
    /* Check if there's a port in path (like 'http://') */
    if (path.indexOf('://') !== -1) {
        p = 1;
    }    /* Ok, there's not a port in path, so let's take the root */
    if (!p) {
        path = r.substring(0, r.lastIndexOf('/') + 1) + path;
    }
    /* Explode the given path into it's parts */    arr = path.split('/');
    /* The path is an array now */
    path = [];
    /* Foreach part make a check */
    for (var k in arr) {        /* This is'nt really interesting */
        if (arr[k] == '.') {
            continue;
        }
        /* This reduces the realpath */        if (arr[k] == '..') {
            /* But only if there more than 3 parts in the path-array.
             * The first three parts are for the uri */
            if (path.length > 3) {
                path.pop();            }
        }
        /* This adds parts to the realpath */
        else {
            /* But only if the part is not empty or the uri             * (the first three parts ar needed) was not
             * saved */
            if ((path.length < 2) || (arr[k] !== '')) {
                path.push(arr[k]);
            }        }
    }
    /* Returns the absloute path as a string */
    return path.join('/');
}

	var id = 0;

	function addUpload()
	{	
		id++;
		if(id < 100)
		{
			document.getElementById('upload').innerHTML += 'Bild '+id+': <input type="file" name="upload'+id+'"/><br/>';
		} 
	}

	function sendRequest(type, url, parameter)
	{
		//document.getElementById('loaderback').style.visibility='visible';
		//document.getElementById('loader').style.visibility='visible';
		httpReq = null;
		httpReq = getHTTPObject();
		if(type == 'post')
		{			
			httpReq.open("POST",url,true);
			httpReq.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
  			httpReq.onreadystatechange = handleIncomingData;
  			httpReq.send(parameter);
		}
		else
		{
			httpReq.open("GET",url, true); 
  			httpReq.send(null);
  			httpReq.onreadystatechange = handleIncomingData;
		}
	}
