var request_global_ajax_site = false;
var get_side_block = false
var actual_hash = "";
var old_src;

function get_site(this_object)
{	
	if(get_side_block==false)
	{
		get_side_block=true;
		
		if(this_object==true)
		{
			var this_object_pairs = pairs2obj(top.location.hash);
		}
		else
		{
			var this_object_pairs = pairs2obj(this_object.href);
		}
	
		if(this_object_pairs['s']===undefined)
		{
			this_object_pairs['s']="start";
		}
	
		actual_hash='';
		var i = 0;
		for (property in this_object_pairs)
		{
			if(i==1) actual_hash += '&';
			i = 1;
  			actual_hash += property + '=' + this_object_pairs[property];
		}
		
		setTimeout("force_ulr_change('"+actual_hash+"')", 5000);
	
		if(this_object!=true)
		{
			old_src = this_object.getElementsByTagName('img')[0].src;
			this_object.getElementsByTagName('img')[0].src='http://icon.picclick.de/reload.gif';
		}
		else
		{
			document.getElementById('refresh').innerHTML = "<img style=\"vertical-align: middle;\" src=\"http://icon.picclick.de/reload.gif\" alt=\"\" border=\"0\"> <small>Laden...</small>&nbsp;";
		}
		if (window.XMLHttpRequest)
		{
  			request_global_ajax_site = new XMLHttpRequest(); // Mozilla, Safari, Opera
		}
		else if (window.ActiveXObject)
		{
  			try
  			{
  				request_global_ajax_site = new ActiveXObject('Msxml2.XMLHTTP'); // IE 5
  			}
  			catch (e)
  			{
  				try
  				{
  					request_global_ajax_site = new ActiveXObject('Microsoft.XMLHTTP'); // IE 6
  				}
  				catch (e) {}
  			}
		}
	
  		if (!request_global_ajax_site)
		{
  			if(this_object!=true)
			{
				this_object.getElementsByTagName('img')[0].src="http://icon.picclick.de/error.png";
			}
			else
			{
				document.getElementById('refresh').innerHTML = "<img style=\"vertical-align: middle;\" src=\"http://icon.picclick.de/error.png\" alt=\"\" border=\"0\"> <small>Fehler</small>&nbsp;";
			}
			get_side_block=false;
  		}
  		else
  		{
  			request_global_ajax_site.open('post', "ajax_site.php", true);
  			request_global_ajax_site.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
 		
			var output = 'ajax_site=true&'+actual_hash;
			request_global_ajax_site.send(output);  			
			request_global_ajax_site.onreadystatechange = interpretRequest_global; 
  		}
  	}

	function interpretRequest_global()
	{
		switch (request_global_ajax_site.readyState)
  		{
  			case 4:
  			if (request_global_ajax_site.status!=200)
  			{
  				if(this_object!=true)
				{
					this_object.getElementsByTagName('img')[0].src="http://icon.picclick.de/error.png";
				}
				else
				{
					document.getElementById('refresh').innerHTML = "<img style=\"vertical-align: middle;\" src=\"http://icon.picclick.de/error.png\" alt=\"\" border=\"0\"> <small>Fehler</small>&nbsp;";
				}
				get_side_block=false;
  			}
  			else
  			{
				var html = request_global_ajax_site.responseText.split("{eval}");

  				document.getElementById("content").innerHTML = html[0];

  				/*var child = document.getElementById("content");
  				var parent = child.parentNode;
  				parent.removeChild(child);
  				child = document.createElement("div");
  				child.innerHTML = 'blaa<script type="text/javascript">alert("test");</script>';
  				parent.appendChild(child);*/
  				
				global_show_hide('content', 'browser');
  				eval(html[1]);
  				if(this_object!=true)
				{
					this_object.getElementsByTagName('img')[0].src=old_src;
  				}
  				else
				{
					document.getElementById('refresh').innerHTML = "";
				}
  				top.location.hash=actual_hash;
				get_side_block=false;
   			}
  			break;
  	  		default:
  			break;
  		}
  	}
}


if ("onhashchange" in window)
{  //The browser supports the hashchange event!
    window.onhashchange = locationHashChanged; 
}  


function locationHashChanged()
{  
	if(("#"+actual_hash)!=top.location.hash && top.location.hash!="")
	{
		get_site(true);
	}
}

function pairs2obj(str)
{
	var result={},reg=new RegExp('([\\w\\d]+)=([\\w\\d]+)','g');
	while (r=reg.exec(str)) {result[r[1]]=r[2]}
	return result;
}

function force_ulr_change(new_url)
{
	if(get_side_block==true && new_url==actual_hash)
	{
		top.location = "/?"+new_url;
	}
}
