var toggledcloud = null;
var mastercloud = null;
var cX = 0; var cY = 0; var rX = 0; var rY = 0;
var leftenabled = false;
var overX = 0; overY = 0;
var caseenabled = false;
var cloudtitle = null;
var realtitle = null;
var caseopen = false;

function switchlanguage(page, language){
	window.location = page+'?language='+language;
}

function setmastercloud(cloud){
	mastercloud = cloud;
}

function getmastercloud(){
	return mastercloud;
}

function fadeout(element){
	var box = $(element);
	var fx = box.effects({duration: 1000, transition: Fx.Transitions.Quart.easeOut});
	 
	fx.start({
		'opacity': 0
	});
}

function fadein(element) {
	var box = $(element);
	var fx = box.effects({duration: 1000, transition: Fx.Transitions.Quart.easeOut});
	 
	fx.start({
		'opacity': 1
	});
}

function showloading() {
	document.getElementById('loading').style.display = 'block';
	
	var box = $('global');
	var fx = box.effects({duration: 1000, transition: Fx.Transitions.Quart.easeOut});
	 
	fx.start({
		'opacity': 0.3
	});
}

function showcloud(cloud,text,title){	
	cloudtitle = title;
	
	if(realtitle == null){
		realtitle = substr(document.getElementById('titletitle').innerHTML, 0, -1);
	}
	
	var newtitle = realtitle + ' '+title+'?';	
	
	document.getElementById('titletitle').innerHTML = newtitle;
	
	if(toggledcloud != null){
		document.getElementById('cloud'+toggledcloud).style.display = 'none';
		document.getElementById('case'+toggledcloud).style.display = 'none';
		
		document.getElementById('mastercloud'+toggledcloud).style.background = 'rgb(255,255,255) url(/images/bullet_grey.png) 100% no-repeat';
		document.getElementById('mastercloud'+toggledcloud).style.borderTop = 'solid 1px rgb(225,225,225)';
		document.getElementById('mastercloud'+toggledcloud).style.color = '#000000';
		document.getElementById('mastercloud'+toggledcloud).style.textDecoration = 'none';
	}
	
	document.getElementById('mastercloud'+cloud).style.background = 'rgb(50,50,50) url(/images/bullet_white.png) 100% no-repeat';
	document.getElementById('mastercloud'+cloud).style.borderTop = 'solid 1px rgb(50,50,50)';
	document.getElementById('mastercloud'+cloud).style.color = '#FFFFFF';
	document.getElementById('mastercloud'+cloud).style.textDecoration = 'none';
	
	mastercloud = cloud;
	
	caseenabled = false;
	
	toggledcloud = cloud;	
	document.getElementById('cloud'+cloud).style.display = 'block';
	document.getElementById('case'+cloud).style.display = 'block';
	document.getElementById('storecontent').style.display = 'block';
	document.getElementById('casecontent').style.display = 'none';
}

function substr( f_string, f_start, f_length ) {
    // http://kevin.vanzonneveld.net
    // +     original by: Martijn Wieringa
    // *         example 1: substr('abcdef', 0, -1);
    // *         returns 1: 'abcde'
 
    if(f_start < 0) {
        f_start += f_string.length;
    }
 
    if(f_length == undefined) {
        f_length = f_string.length;
    } else if(f_length < 0){
        f_length += f_string.length;
    } else {
        f_length += f_start;
    }
 
    if(f_length < f_start) {
        f_length = f_start;
    }
 
    return f_string.substring(f_start, f_length);
}

function showcase() {
	caseopen = true;
	caseenabled = true;
	var casetext = '<h1>Case ('+cloudtitle+')</h1>';
	
	casetext = casetext + document.getElementById('casetext'+mastercloud).innerHTML;
	
	document.getElementById('casecontent').innerHTML = casetext;
	//document.getElementById('cloud'+toggledcloud).style.display = 'none';
	document.getElementById('storecontent').style.display = 'none';
	document.getElementById('casecontent').style.display = 'block';
}

function hideloading() {
	document.getElementById('loading').style.display = 'none';
	
	var box = $('global');
	var fx = box.effects({duration: 1000, transition: Fx.Transitions.Quart.easeOut});
	 
	fx.start({
		'opacity': 1
	});
}

function tooltip(left,where,content)
{		
	if(caseenabled == true){
		return 1;
	} else {
	document.getElementById("tooltip").style.display = "none";
	document.getElementById("tooltiptext").innerHTML = content;

	if(document.getElementById(content+'_'+mastercloud)){
		content = document.getElementById(content+'_'+mastercloud).innerHTML;
	} else {
		content = '';
	}
		
	if(left == 1){
		var x = document.getElementById('content').offsetLeft;
		var y = document.getElementById('content').offsetTop;
		
		x = x + document.getElementById('store-circles').offsetLeft;
		y = y +  document.getElementById('store-circles').offsetTop;
		
		if(document.getElementById('circle'+where)){
			x = x + document.getElementById('circle'+where).offsetLeft;
			y = y +  document.getElementById('circle'+where).offsetTop;
		}
		
		leftenabled = true;
		overX = x;
		overY = y;
	} else {
		leftenabled = false;
	}	
		
	if(document.getElementById('sub'+where+'_'+mastercloud)){
		document.getElementById('sub'+where+'_'+mastercloud).style.background = 'rgb(50,50,50) url(/images/bullet_white.png) 100% no-repeat';
		document.getElementById('sub'+where+'_'+mastercloud).style.borderTop = 'solid 1px rgb(50,50,50)';
		document.getElementById('sub'+where+'_'+mastercloud).style.color = '#FFFFFF';
		document.getElementById('sub'+where+'_'+mastercloud).style.textDecoration = 'none';
	}
	
	if(where == "0")
	{
		document.getElementById("circle1").childNodes[0].style.display = "none";
		document.getElementById("circle2").childNodes[0].style.display = "none";
		document.getElementById("circle3").childNodes[0].style.display = "none";
		document.getElementById("circle4").childNodes[0].style.display = "none";
		document.getElementById("circle5").childNodes[0].style.display = "none";
		document.getElementById("circle6").childNodes[0].style.display = "none";
		
		for(i = 1; i <= 6; i++){
			if(document.getElementById('sub'+i+'_'+mastercloud)){
				document.getElementById('sub'+i+'_'+mastercloud).style.background = 'rgb(255,255,255) url(/images/bullet_grey.png) 100% no-repeat';
				document.getElementById('sub'+i+'_'+mastercloud).style.borderTop = 'solid 1px rgb(225,225,225)';
				document.getElementById('sub'+i+'_'+mastercloud).style.color = '#000000';
				document.getElementById('sub'+i+'_'+mastercloud).style.textDecoration = 'none';
			}
		}
		
		document.getElementById("tooltip").style.display = "none";
	}

	if(where == "1")
	{
		document.getElementById("tooltiptext").innerHTML = content;
		
		AssignPosition(document.getElementById("tooltip"));
		
		document.getElementById("circle1").childNodes[0].style.display = "block";
		document.getElementById("tooltip").style.display = "block";
	}

	if(where == "2")
	{
		document.getElementById("tooltiptext").innerHTML = content;
		
		AssignPosition(document.getElementById("tooltip"));
		
		document.getElementById("circle2").childNodes[0].style.display = "block";
		document.getElementById("tooltip").style.display = "block";
	}

	if(where == "3")
	{
		document.getElementById("tooltiptext").innerHTML = content;
		
		AssignPosition(document.getElementById("tooltip"));
		
		document.getElementById("circle3").childNodes[0].style.display = "block";
		document.getElementById("tooltip").style.display = "block";
	}

	if(where == "4")
	{
		document.getElementById("tooltiptext").innerHTML = content;
		
		AssignPosition(document.getElementById("tooltip"));
		
		document.getElementById("circle4").childNodes[0].style.display = "block";
		document.getElementById("tooltip").style.display = "block";
	}

	if(where == "5")
	{
		document.getElementById("tooltiptext").innerHTML = content;
		
		AssignPosition(document.getElementById("tooltip"));
		
		document.getElementById("circle5").childNodes[0].style.display = "block";
		document.getElementById("tooltip").style.display = "block";
	}

	if(where == "6")
	{
		document.getElementById("tooltiptext").innerHTML = content;
		
		AssignPosition(document.getElementById("tooltip"));
		
		document.getElementById("circle6").childNodes[0].style.display = "block";
		document.getElementById("tooltip").style.display = "block";
	}
	
	}
}

function UpdateCursorPosition(e){ cX = e.pageX; cY = e.pageY; AssignPosition(document.getElementById("tooltip"));}
function UpdateCursorPositionDocAll(e){ cX = event.clientX; cY = event.clientY; AssignPosition(document.getElementById("tooltip"));}

if(document.all) {
	document.onmousemove = UpdateCursorPositionDocAll;
} else {
	document.onmousemove = UpdateCursorPosition;
}

function AssignPosition(d) {
	if(document.getElementById('tooltip')){
		if(leftenabled == true){
			cY = overY + 30;
			cX = overX + 30;
		} else {
			if(self.pageYOffset) {
				rX = self.pageXOffset;
				rY = self.pageYOffset;
			}	else if(document.documentElement && document.documentElement.scrollTop) {
				rX = document.documentElement.scrollLeft;
				rY = document.documentElement.scrollTop;
			}	else if(document.body) {
				rX = document.body.scrollLeft;
				rY = document.body.scrollTop;
			}
		
			if(document.all) {
				cX += rX;
				cY += rY;
			}		
		}
	
		var marginleft = (cX+10);
		var margintop = (cY+10);
		
		var marginleft = marginleft - 53;	
		var margintop = margintop - parseInt(document.getElementById('tooltip').clientHeight);
	
		margintop = margintop - 20;
	
		d.style.left = marginleft + "px";
		d.style.top = margintop + "px";
	}
}