	var ptrAnchor=null;
	var activeView=null;
	var arrNews=[];
	var blnOverviewLoaded=false;

	function fnCreateElement (elementname, classname, innerHTML) {

		var retValue=document.createElement (elementname);
		if (classname!=undefined) retValue.className=classname;
		if (innerHTML!=undefined && innerHTML!='') {
			retValue.innerHTML=innerHTML;
		}

		return (retValue);
	}
	
	
	function fnLoadNewsBox (view) {
		ajaxReader=new idgCommObject ();
		ajaxReader.sendRequest ('/data/json/blog/views/'+view+'_last_5.json', '', fnShowNewsBox);
	}
	
	function fnShowNewsBox (response) {

		arrNews=JSON.parse (response);

		if (arrNews.length>0) {
			var newsTable=fnCreateElement ('TABLE');
			newsTable.cellPadding='5px';
			newsTable.cellSpacing='0px';
			var newsTableBody=document.createElement ('TBODY');
			newsTable.appendChild (newsTableBody);		
			var newsTableEntry=fnCreateElement ('TR');
			var viewportCell=fnCreateElement ('TH', '', 'Aktuelles');
			newsTableEntry.appendChild (viewportCell);
			newsTableBody.appendChild (newsTableEntry);		
	
			for (var dummy=0; dummy<arrNews.length; dummy++) {
				var newsTableEntry=fnCreateElement ('TR');
				var viewportCell=fnCreateElement ('TD', '', '<SPAN style="float: right; color: #482A14;">'+arrNews[dummy]['rubrik']+'</SPAN>'+arrNews[dummy]['datum']+'<br>'+arrNews[dummy]['title']+'<br><A href="/news/?view='+activeView+'&entry='+arrNews[dummy]['id']+'">mehr</A>');

				viewportCell.onmouseover=function () { 
					this.className='newsBoxMouseOver'; 
				}

				viewportCell.onmouseout=function () { 
					this.className='';
				}

				newsTableEntry.appendChild (viewportCell);
				newsTableBody.appendChild (newsTableEntry);		
			}	
			var newsTableEntry=fnCreateElement ('TR');
			var viewportCell=fnCreateElement ('TH', '', '<A href="/news/?view='+activeView+'">Archiv</A>');
			newsTableEntry.appendChild (viewportCell);
			newsTableBody.appendChild (newsTableEntry);
		
			ptrAnchor.innerHTML='';
			ptrAnchor.appendChild (newsTable);		
		}
		
	}
	
	
	function fnLoadNewsOverview () {

		if (blnOverviewLoaded) {
			fnShowNewsOverview ();
		} else {
			ajaxReader=new idgCommObject ();
			ajaxReader.sendRequest ('/data/json/blog/views/'+activeView+'.json', '', fnParseNewsOverview);
		}
	}
	
	function fnParseNewsOverview (response) {

		arrNews=JSON.parse (response);
		fnShowNewsOverview ();
	
	}

	function fnShowNewsOverview () {

	
		var newsTable=fnCreateElement ('TABLE');
		newsTable.cellPadding='5px';
		var newsTableBody=document.createElement ('TBODY');
		newsTable.appendChild (newsTableBody);		
		var newsTableEntry=fnCreateElement ('TR');
		var viewportCell=fnCreateElement ('TH', '', 'Datum');
		newsTableEntry.appendChild (viewportCell);
		var viewportCell=fnCreateElement ('TH', '', 'Rubrik');
		newsTableEntry.appendChild (viewportCell);
		var viewportCell=fnCreateElement ('TH', '', 'Titel');
		newsTableEntry.appendChild (viewportCell);
		newsTableBody.appendChild (newsTableEntry);		
		
		for (var dummy=0; dummy<arrNews.length; dummy++) {
			var newsTableEntry=fnCreateElement ('TR');
			newsTableEntry.onmouseover=function () { this.style.backgroundColor='#b9dfff'; }
			newsTableEntry.onmouseout=function () { this.style.backgroundColor='transparent'; }
			var viewportCell=fnCreateElement ('TD', '', arrNews[dummy]['datum']);
			newsTableEntry.appendChild (viewportCell);
			var viewportCell=fnCreateElement ('TD', '', arrNews[dummy]['rubrik']);
			viewportCell.style.whiteSpace='nowrap';
			newsTableEntry.appendChild (viewportCell);
			var viewportCell=fnCreateElement ('TD', '', '<A href="javascript:fnLoadNewsEntry ('+arrNews[dummy]['id']+')" class="link_internal">'+arrNews[dummy]['title']+'</A>');
			newsTableEntry.appendChild (viewportCell);
			newsTableBody.appendChild (newsTableEntry);    
		}	
		ptrAnchor.innerHTML='';
		ptrAnchor.appendChild (newsTable);
	
	}
	
	function fnLoadNewsEntry (entry) {

		ajaxReader=new idgCommObject ();
		ajaxReader.sendRequest ('/data/json/blog/entries/'+entry+'.json', '', fnShowNewsEntry);	
	}
	
	function fnShowNewsEntry (response) {

		var arrEntry=JSON.parse (response);

		var newsTable=fnCreateElement ('TABLE');
		newsTable.cellPadding='5px';
		var newsTableBody=document.createElement ('TBODY');
		newsTable.appendChild (newsTableBody);		
		var newsTableEntry=fnCreateElement ('TR');
		var viewportCell=fnCreateElement ('TH', '', arrEntry['datum']);
		newsTableEntry.appendChild (viewportCell);
		var viewportCell=fnCreateElement ('TH', '', arrEntry['rubrik']);
		newsTableEntry.appendChild (viewportCell);
		var viewportCell=fnCreateElement ('TH', '', arrEntry['title']);
		newsTableEntry.appendChild (viewportCell);
		newsTableBody.appendChild (newsTableEntry);		
		var newsTableEntry=fnCreateElement ('TR');
		var viewportCell=fnCreateElement ('TD', '', arrEntry['content']);
		viewportCell.colSpan=3;
		newsTableEntry.appendChild (viewportCell);
		newsTableBody.appendChild (newsTableEntry);  
		var newsTableEntry=fnCreateElement ('TR');
		var viewportCell=fnCreateElement ('TD', '', '<A href="javascript: fnLoadNewsOverview ()" class="link_internal">zur Übersicht</A>');
		viewportCell.colSpan=3;
		newsTableEntry.appendChild (viewportCell);
		newsTableBody.appendChild (newsTableEntry);  
		window.scrollTo (0,0);
		ptrAnchor.innerHTML='';
		ptrAnchor.appendChild (newsTable);

		
	}
	
	function fnParseGetParameters () {
	
		querystring=location.search;
		if (querystring == '') return;
		var wertestring = querystring.slice(1);
		var paare = wertestring.split("&");
		var paar, name, wert;
		for (var i = 0; i < paare.length; i++) {
			paar = paare[i].split("=");
			name = paar[0];
			wert = paar[1];
			name = unescape(name).replace("+", " ");
			wert = unescape(wert).replace("+", " ");
			this[name] = wert;
		}
	}
	
	function fnInitNewsBox (container, view) {
		ptrAnchor=document.getElementById (container);
		activeView=view;
		fnLoadNewsBox (view);
	}
	
	function fnInitNews (container) {

	var GET=new fnParseGetParameters ();
		ptrAnchor=document.getElementById (container);
		
		activeView=GET['view']?GET['view']:'overview';
		
		if (GET['entry']) {
			fnLoadNewsEntry (GET['entry']);
		} else {
			fnLoadNewsOverview ();
		}
		
		
	}
	
	

	function fnLoadLatestNews () {
		ajaxLatestNewsReader=new idgCommObject ();
		ajaxLatestNewsReader.sendRequest ('/data/json/blog/views/overview_last_5.json', '', fnShowLatestNews);
	}
	
	var arrLatestNews=[];
	var intCurrentNews=-1;
	var intAnimationTimer=null;
	var intOpacity=0;
	function fnShowLatestNews (response) {

		var arrLatestNewsDummy=JSON.parse (response);
		
		for (var dummy=0; dummy<arrLatestNewsDummy.length; dummy++) {		
			arrLatestNews.push (arrLatestNewsDummy[dummy]['rubrik']+' <SPAN class="urgent_news_datum">'+arrLatestNewsDummy[dummy]['datum']+'</SPAN><br>'+arrLatestNewsDummy[dummy]['title']+'<BR><A href="/news/?view=overview&entry='+arrLatestNewsDummy[dummy]['id']+'">lesen</A>');
		}
		fnSetNextLatestNews ();
		intAnimationTimer=window.setInterval ("fnAnimateLatestNewsFadeIn ()",50);				
	}
	
	function fnAnimateLatestNewsFadeIn () {
		intOpacity++;
		if (intOpacity>10) {
			window.clearInterval (intAnimationTimer);
			window.setTimeout ("fnStartFadeOut ()", 6000);
		} else {
			document.getElementById ('urgent_news').style.opacity=intOpacity/10;
		}		
	}
	
	function fnStartFadeOut () {
		intAnimationTimer=window.setInterval ("fnAnimateLatestNewsFadeOut ()",50);						
	}

	function fnAnimateLatestNewsFadeOut () {
		intOpacity--;
		if (intOpacity<0) {
			window.clearInterval (intAnimationTimer);
			fnSetNextLatestNews ();
  		    intAnimationTimer=window.setInterval ("fnAnimateLatestNewsFadeIn ()",50);				
		} else {
			document.getElementById ('urgent_news').style.opacity=intOpacity/10;
		}
	}

	
	function fnSetNextLatestNews () {
		intCurrentNews=(intCurrentNews+1)%arrLatestNews.length;
		intOpacity=0;
		document.getElementById ('urgent_news').innerHTML=arrLatestNews[intCurrentNews];
	}

	
	function fnInitLatestNews () {
		fnLoadLatestNews ();		
	}

	
	arrFunctionCalls.push (function () { fnInitLatestNews ()});
	