	window.addEvent('domready', function () 
	{
		//Now add Ajax to ALL newslinks
		EnhanceWithAjax('inlink','ajaxcontent','','ajax-loading');
		//FixBackButton('content','','ajax-loading');
	});


/* */	
	function RequestPage(url,target,spinnerDiv,loadClass, link)
	{
		/**
		 * url: Page to request Asynchronous. Required
		 * target: element to display url in. Required
		 * spinnerDiv: ID of Div elemento to display loading indication
		 *loadClass: CSS class defining loading indication
		 **/
		if (spinnerDiv!='') var log = $(spinnerDiv).empty().addClass(loadClass);
		if (url.indexOf('?')==-1){
			params = '?ajaxrequest=true';			
		}else{
			params = '&ajaxrequest=true';
		}
		new Ajax(url + params, {
			method: 'get',
			update: $(target),
			onComplete: function() {
				setLinksTable("domeinpagina");
				// when complete, we remove the spinner
				if (spinnerDiv!='') { log.removeClass(loadClass)};
				//and hash the URL (put in history)
				//window.hash(url); 
				if (link != '') {
					var x=document.getElementsByClassName('inlink');
					for (i=0;i<x.length;i++)
					{
						if (x[i].hasClass('alles')){
							x[i].removeClass('alles_active');
						}else{
							x[i].removeClass('active');
						}
							
					}
					if (link.hasClass('alles')){
						link.addClass('alles_active');
					}else{
						link.addClass('active');
					}
				}
				new_window_link();
			},
			onFailure: function() {
				// when complete, we remove the spinner
				if (spinnerDiv!='') log.removeClass(loadClass);
				//and hash the URL (put in history)
				window.location = "/Website/Ajax/ohoh";
			}
		}).request();
	}	;

/* */

	function EnhanceWithAjax(ClassName,target,spinnerDiv,loadClass)
	{
		/**
		 * ClassName: classname of Anchors elements to be enhanced,
		 * target: element to display url in. 
		 * spinnerDiv: ID of Div elemento to display loading indication
		 *loadClass: CSS class defining loading indication
		 **/

		//Get all Links of Type ClassName
		var x=document.getElementsByClassName(ClassName)
		var url = ""
		for (i=0;i<x.length;i++)
		{
			// add ajax	to all of them		
			$(x[i]).addEvent('click', function(e) {
				e = new Event(e).stop();
				url = this.href.substring(this.href.indexOf("#")+1);
				
				RequestPage(url,target,spinnerDiv,loadClass, this);
			});
			//update href to not trigger pagereload
			x[i].href = "#" + x[i].href;
		}

	}

/* */

	function FixBackButton(target,spinnerDiv,loadClass)
	{
		/**
		 * target: element to display hash in. 
		 * spinnerDiv: ID of Div elemento to display loading indication
		 *loadClass: CSS class defining loading indication
		 **/

		window.addEvent('backbutton',function(event) 
		{
			if((event.type=='backbutton'  || event.type=='load') && event.hash !=''){
				//Load content from repository
				RequestPage(event.hash,target,spinnerDiv,loadClass, '');
			}else{
				if(event.type=='backbutton' && event.hash == '') 
				{
					window.location.reload();
				}
			}

		});

	}
