// HAKO RUNTIME
//

var i_resized = 0;
var debugCtr = 	document.getElementById('debugR');
var theBody = 	document.getElementById('hakoBody');
var siteCtr = 	document.getElementById('site');
var txtBox = 	document.getElementById('text');
var menuBox = 	document.getElementById('menu');

/* GET VIEWPORT HEIGHT */

function getViewportH()
{
	if (document.all)
	{
		var browserHeight = document.documentElement.clientHeight;
	}
	else
	{
		var browserHeight = window.innerHeight;
	}
	
	return browserHeight;
}
var browserheight = getViewportH();

/* END VIEWPORT */

function addDebug(msg)
{
	debugCtr.innerHTML = msg;
}

function appendDebug(msg)
{
	debugCtr.innerHTML = debugCtr.innerHTML + '<br />' + msg;
}

function showDebug()
{
	var browserHeight = getViewportH();
	var debugStr = '';
	
	debugStr += 'Site: ' + siteCtr.offsetHeight + '<br />';
	debugStr += 'Window: ' + browserHeight + '<br />';
	debugStr += 'Text: ' + txtBox.offsetHeight + '<br />';

	
	//alert(sBox);
	if (sBox = document.getElementById('rightContent'))
	{
		debugStr += 'Sidebox: ' + sBox.offsetHeight + '<br />';
		//var sideheight = parseInt(sBox.offsetHeight);
	}
	/* 
	if (mt_act)
	{
		debugStr += 'MoreText: ' + mtBox.offsetHeight + '<br />';
		var mtHeight = parseInt(mtBox.offsetHeight);
	}
	*/
	debugStr += 'Body: ' + theBody.offsetHeight + '<br />';
	debugStr += 'Menu: ' + menuBox.offsetHeight + '<br />';
	
	addDebug('<br />***<br />' +i_resized + '. ' + debugStr);
	//alert("debuggd");
}



function resizePage()
{	
	/*
		Abstand Browserrand oben bis SideBox: 290px
		Abstand Browserrand oben bis textbox: 410px;
	*/
	
	var i_top = 80;
	
	showDebug();
	
	var sideBox = document.getElementById('rightContent');
	
	var hLeft = 	(250 + menuBox.offsetHeight + txtBox.offsetHeight);
	var hRight = 	(290 + sideBox.offsetHeight);
	
	//alert('Höhe Links: ' + hLeft + '\nHöhe Rechts: ' + hRight);
	
	var browserHeight = getViewportH();
	
	//check for viewport height
	
	var i_box;
	
	if (hLeft > hRight)
	{
		i_box = hLeft;
	}
	else
	{
		i_box = hRight;
	}
	
	// Viewport-Check
	if (browserHeight > (i_box+40)	)
	{
		//alert('Höchster Content: ' + i_box);
		
		appendDebug('Viewport > site');
		siteCtr.style.height = (browserHeight - 40) + 'px';	
		theBody.style.height = (browserHeight - 40) + 'px';
		i_resized++;
	}
	else
	{
		//sidecontainer bigger than textcontainer
		if (hLeft < hRight)
		{
			appendDebug('<b>sidebar bigger than text</b>');

			i_height = parseInt(hRight);
			
			siteCtr.style.height = (i_height + 100) + 'px';
			theBody.style.height = (i_height + 40) + 'px';
			i_resized++;
		}
		else
		{
			//text bigger than sidecontainer
			appendDebug('<b>text bigger than sidebar</b>');
			
			i_height = parseInt(hLeft);
	
			siteCtr.style.height = i_height + 'px';
			theBody.style.height = (i_height + 40) + 'px';
			i_resized++;
		}
	}
}


function resizeSubPage()
{
	var mtBox = document.getElementById('moreText');
	var ctBox = document.getElementById('content');
	browserHeight = getViewportH();
	// + mtBox.offsetHeight
	var begin_left = parseInt(menuBox.offsetHeight + 250);
	
	var begin_right = 290;
	var textheight = parseInt(txtBox.offsetHeight);
	
	showDebug();
	
	//check if content is smaller than viewport
	if (parseInt(theBody.offsetHeight) < parseInt(browserHeight))
	{
		appendDebug('subpage Viewport too high<br />');
		theBody.style.height = (browserHeight - 40) + 'px';
		siteCtr.style.height = (parseInt(theBody.offsetHeight)  - 40) + 'px';
		i_resized++;
	}
	else
	{
		appendDebug('subpage Viewport smaller than content<br />');
		theBody.style.height = (ctBox.offsetHeight + 40) + 'px';
		siteCtr.style.height = (ctBox.offsetHeight + 40) + 'px';
		ctBox.style.height = 	ctBox.offsetHeight + 'px';
		i_resized++;
	}
}

function doResize()
{
	window.setTimeout("resizePage()",100);
}

function doResizeSub()
{
	window.setTimeout("resizeSubPage()",100);
}

// SET BOOKMARK

var SeitenURL = 	document.location.href;
var SeitenTitel = 	document.title;
var Kommentar = 	'HAKO';


function setBookmark()
{

	if (window.sidebar)
    {
		window.sidebar.addPanel(SeitenTitel,SeitenURL,Kommentar);
    }
	else if (window.opera && window.print)
    {
		var elem = document.createElement('a');
		elem.setAttribute('href',SeitenURL);
		elem.setAttribute('title',SeitenTitel);
		elem.setAttribute('rel','sidebar');
		elem.click();
	}
	else if (document.all)
    {
		window.external.AddFavorite(SeitenURL,SeitenTitel);
    }
}

function recommendPage()
{	
	var url = $('#TargetFrame').attr('src');
	$('#TargetFrame').attr('src', url);
	// Scroll to the begin of the page.
	window.scrollTo(0, 0);
	
	var body = $(body);
	$("#overlay").css("height", body.height());
	$("#overlay").css("visibility", "visible");
	
	// Register [ESC] key
	$(document).keyup(function(event){
		if (event.keyCode == 27) {
			$("#overlay").css("visibility", "hidden");
		}
	});

}

function closePopup()
{
	$("#overlay").css("visibility", "hidden");
}

function setPager(elemtentsPerPage)
{
	var queryString = document.location.search;
	if(queryString == '' || queryString == '?page=0' || queryString == '?page=1')
	{
		$("#previousPage").css("display", "none");
	}
	else if (queryString != '')
	{
		var page = queryString.split('?page=');
		if(Math.ceil(elements / elemtentsPerPage) == page[1])
		{
			$("#nextPage").css("display", "none");
		}
	}	
}

function changeLItem(imgsrc,obj)
{	
	obj.src = 'img/' + imgsrc;
}

function adjustPage()
{
	var rightnews = document.getElementById('rightContent');
	rightnews.style.display = 'block';
	var siteCtr = document.getElementById('site');
	var conCtr = document.getElementById('conCtr');
	var content = document.getElementById('content');
	//alert(rightnews.offsetHeight +' ' + rightnews.height);
	
	var newheight = (rightnews.offsetHeight + 200)
	var newheight_ie = (rightnews.offsetHeight + 300)
	
	if (document.all)
	{	
		siteCtr.style.height = newheight_ie + 'px';
		conCtr.style.height = newheight_ie + 'px';
		content.style.height = newheight_ie + 'px';
	}
	else
	{
		siteCtr.style.height = newheight + 'px';
		conCtr.style.height = newheight + 'px';
		content.style.height = newheight + 'px';
	}	
}

function changeLanguage(language) {
	alert(language);
}

var cookieValue = function(name) {
	if (document.cookie.length>0)
	{
		name=document.cookie.indexOf(name + "=");
		if (name!=-1) {
			name=name + name.length+1;
			c_end=document.cookie.indexOf(";",name);
			if (c_end==-1) 
				c_end=document.cookie.length;
			return unescape(document.cookie.substring(name,c_end));
		}
	}
	return "";
}


$(document).ready(function() {

	var currentLanguage = cookieValue('CMSPreferredCulture');
	if(currentLanguage == "CMSPreferredCulture=de-DE") {
		$($(".lang").get(0)).attr("src", "/App_Themes/Hako/BlueWhite/D_active.png");
	}
	else if(currentLanguage == "CMSPreferredCulture=en-GB") {
		$($(".lang").get(1)).attr("src", "/App_Themes/Hako/BlueWhite/EN_active.png");
	}

	$(".lang").mouseover(function(){
		var imageSrc = $(this).attr("src");
		
		if(imageSrc == "/App_Themes/Hako/BlueWhite/D.png") {
			$(this).attr("src", "/App_Themes/Hako/BlueWhite/D_active.png");
		}
		else if(imageSrc == "/App_Themes/Hako/BlueWhite/EN.png") {
			$(this).attr("src", "/App_Themes/Hako/BlueWhite/EN_active.png");
		}			
	});
	
	$(".lang").mouseout(function(){
		var imageSrc = $(this).attr("src");
		
		if(imageSrc == "/App_Themes/Hako/BlueWhite/D_active.png" && currentLanguage != "CMSPreferredCulture=de-DE") {
			$(this).attr("src", "/App_Themes/Hako/BlueWhite/D.png")
		}
		if(imageSrc == "/App_Themes/Hako/BlueWhite/EN_active.png" && currentLanguage != "CMSPreferredCulture=en-GB") {
			$(this).attr("src", "/App_Themes/Hako/BlueWhite/EN.png")
		}		
	});
});