function blurScreen() {
	var winW = 630, winH = 460;
	if (parseInt(navigator.appVersion) > 3) {
		if (navigator.appName.indexOf("Microsoft") != -1) {
			winW = document.body.clientWidth;
			winH = document.body.clientHeight;
			if (winH == 0) {
				winH = document.documentElement.clientHeight;
			}
		} else {
			winW = window.innerWidth;
			winH = window.innerHeight;
		}
	}
	// Dette DIV findes i header.php
	var alphaObj = document.getElementById('alphaDiv');
	alphaObj.style.width = winW + 'px';
	alphaObj.style.height = winH + 248 + 'px';
	alphaObj.style.display = 'block';
}

function unBlurScreen() {
	// Dette DIV findes i header.php
	var alphaObj = document.getElementById('alphaDiv');
	alphaObj.style.display = 'none';
}

function openWindow(myLink,windowName) {
	if(! window.focus)return;
	var myWin=window.open("",windowName,"dependent=yes,scrollbars=no");
	myWin.focus();
	myLink.target=windowName;
}

function checkFocusTime(uri, time) {
	remote = window.open(uri, "adwin");
	if (remote) {
		remote.focus;
		setTimeout("submitRemote();", time);
	}
}

function submitRemote() {
	if (remote.closed == false){
		document.remoteform.submit();
	} else {
		alert("Ne fermez pas la nouvelle fenêtre avant d'en avoir totalement lu le contenu.");
	}
}

function changeBgLarge (obj, state) {
	var elm = document.getElementById(obj);
	if (state == '1') {
		elm.className = "gameimages_redlarge";
	} else if (state == '2') {
		elm.className = "gameimages_bluelarge";
	}
}

function changeBgLargeChat (obj, state) {
	
	var elm = document.getElementById(obj);
	if (state == '1') {
		elm.className = "gameimageschat_redlarge";
	} else if (state == '2') {
		elm.className = "gameimageschat_bluelarge";
	}
}

function changeBg (obj, state) {
	
	var elm = document.getElementById(obj);
	if (state == '1') {
		elm.className = "gameimages_red";
	} else if (state == '2') {
		elm.className = "gameimages_blue";
	}
}

function contains (container, containee) {
  while (containee) {
    if (container == containee) {
      return true;
    }
    containee = containee.parentNode;
  }
  return false;
}

// fjern element
function removeElement(id){
	var element 	= document.getElementById(id);
	if (element) {
		parent_element	= element.parentNode;
		parent_element.removeChild(element);
	}
}

// eks: makeHttpRequest("../ajax/actions.php?action=hest&food=burger", "myFunction");
function makeHttpRequest(url, callback_function, return_xml) {
   var http_request = false;

   if (window.XMLHttpRequest) { // Mozilla, Safari,... 
       http_request = new XMLHttpRequest(); 
       if (http_request.overrideMimeType) { 
//         http_request.overrideMimeType('text/xml'); 
           http_request.overrideMimeType('text/html'); 
       } 
   } else if (window.ActiveXObject) { // IE 
       try { 
           http_request = new ActiveXObject("Msxml2.XMLHTTP"); 
       } catch (e) { 
           try { 
               http_request = new ActiveXObject("Microsoft.XMLHTTP"); 
           } catch (e) {} 
       } 
   } 

   if (!http_request) { 
       alert("Votre navigateur ne prend pas cette fonction en charge. Exécutez le test de l\'ordinateur disponible sous Assistance technique."); 
       return false; 
   } 
   http_request.onreadystatechange = function() { 
       if (http_request.readyState == 4) { 
           if (http_request.status == 200) { 
               if (return_xml) { 
                   eval(callback_function + '(http_request.responseXML)'); 
               } else { 
                   eval(callback_function + '(http_request.responseText)'); 
               }
           }
       } 
   }
   http_request.open('GET', url+"&sid="+Math.random(), true);
   http_request.send(null); 
}

function ajaxReturn(content) {
	return content;
}

// Removes leading whitespaces
function LTrim( value ) {
	var re = /\s*((\S+\s*)*)/;
	return value.replace(re, "$1");
}

// Removes ending whitespaces
function RTrim( value ) {
	var re = /((\s*\S+)*)\s*/;
	return value.replace(re, "$1");
}

// Removes leading and ending whitespaces
function trim( value ) {
	return LTrim(RTrim(value));
}

// vis online spillere
function showOnlineGamers(str) {
  document.getElementById("showOnlineGamers").innerHTML = str;
}

// hent online spillere
function getOnlineGamers() {
  makeHttpRequest("../../ajax/onlinegamers.php?1=1", "showOnlineGamers");
  setTimeout("getOnlineGamers()", 31000);
}

// setTimeout("getOnlineGamers()", 31000);

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

// vis loading grafik i contents
function waitHTML(text, height){
	if (height=="") {height = 220; }	

	r  = "<table align=\"center\" height=\""+height+"px;\" cellpadding=\"3\" cellspacing=\"0\" border=\"0\">";
	r += "<tr>";
	r += "<td><img src=\"/images/updating.gif\" alt=\"\" border=\"0\"></td>";
	r += "<td class=\"size12darkgrey\"><strong>"+text+"</strong> - Veuillez patienter......</td>";
	r += "</tr>";
	r += "</table>";
	return r;
}

// vis loading grafik i contents
function wait(text) {
	r  = "<table align=\"center\" height=\"220px;\" cellpadding=\"3\" cellspacing=\"0\" border=\"0\">";
	r += "<tr>";
	r += "<td><img src=\"/images/updating.gif\" alt=\"\" border=\"0\"></td>";
	r += "<td class=\"size11\"><strong>"+text+"</strong> - Veuillez patienter......</td>";
	r += "</tr>";
	r += "</table>";
	
	document.getElementById("contents").innerHTML = r;
}

function dummy() {}

function friends(profile, username) {
  if (confirm("Inviter "+username+" dans la liste des contacts ?")) {
    makeHttpRequest("../../ajax/profile_actions.php?action=requestFriend&profile="+profile, "dummy");
	alert("À présent, vous avez effectué une invitation à "+username+" dans la liste des contacts.");
	removeElement("smenu_4");
  }
}

function friendsLocked(username) {
	alert(username+" a fermé à clef sa liste des amis");
}

function favorites(profile, username) {
  if (confirm("Ajouter "+username+" à votre liste de favoris ?")) {
    makeHttpRequest("../../ajax/profile_actions.php?action=addFav&profile_username="+username, "dummy");
	alert(username+" est à présent ajouté à votre liste de favoris.");
	removeElement("smenu_5");
  }
}

function removeFavorite(profile, username) {
  if (confirm("Êtes-vous sûr de vouloir effectuer une suppression "+username+" de votre liste de favoris ?")) {
    makeHttpRequest("../../ajax/profile_actions.php?action=remFav&profile="+profile, "dummy");
	alert(username+" est à présent supprimé de votre liste de favoris.");
	removeElement("smenu_5");
  }
}

function blocklist(profile, username) {
  if (confirm("Souhaitez-vous bloquer "+username+"?")) {
    makeHttpRequest("../../ajax/profile_actions.php?action=blockUser&profile="+profile, "dummy");
	alert(username+" est désormais bloqué et ne peut pas accéder à votre profil.");
	//removeElement("smenu_7");
  }
}

function deleteQuestion(text, url) {
  if (confirm(text)) {
  	location.href = url;
  }
}

/*
function goto(url) {
	location.href = url;
}*/

// vis/skjul element
function toogle(elementID) {
  el = document.getElementById(elementID);
  d = el.style.display ? "" : "none";
  el.style.display = d;
}

// toogle baggrundsfarve
function swapBGcolor(tmp){
	if(tmp.checked){
		document.getElementById(tmp.name).style.backgroundColor = "#FFFFCC";
	} else {
		document.getElementById(tmp.name).style.backgroundColor = "";
	}
}


var gamePopup = '';
function openPopup (mypage,myname,w,h,features) {
	var settings = 'height=' + h + ',';
	if(screen.width) {
		var winl = (screen.width-w)/2;
		var wint = (screen.height-h)/2;
		if (screen.width <= 800 || screen.height <= 600) {
			settings += 'scrollbars = 1,'; 
		}
	} else {
		winl = 0;
		wint = 0;
	}
	if (winl < 0) {
		winl = 0;
	}
	if (wint < 0) { 
		wint = 0; 
	}
	settings += 'resizable = 1,';
	settings += 'width=' + w + ',';
	settings += 'top=' + wint + ',';
	settings += 'left=' + winl + ',';
	settings += 'status=1,';
	settings += features;

	gamePopup = window.open(mypage,myname,settings);
	gamePopup.focus();
}

function acceptRules() {
  document.getElementById("accept").style.display = "none";
  document.getElementById("contents").style.display = "";
  ptopElement = document.getElementById("ptopdiv");
  if (ptopElement) {
  	ptopElement.style.display = "";
  }
}

function showRules() {
  ptopElement = document.getElementById("ptopdiv");
  if (ptopElement) {
  	ptopElement.style.display = "none";
  }
  document.getElementById("contents").style.display = "none";
  document.getElementById("accept").style.display = "";
}

// vis data i contents elementet
function showContent(str) {
  document.getElementById("contents").innerHTML = str;
}

function number_format(a, b, c, d) {
 a = Math.round(a * Math.pow(10, b)) / Math.pow(10, b);
 e = a + '';
 f = e.split('.');
 if (!f[0]) {
  f[0] = '0';
 }
 if (!f[1]) {
  f[1] = '';
 }
 if (f[1].length < b) {
  g = f[1];
  for (i=f[1].length + 1; i <= b; i++) {
   g += '0';
  }
  f[1] = g;
 }
 if(d != '' && f[0].length > 3) {
  h = f[0];
  f[0] = '';
  for(j = 3; j < h.length; j+=3) {
   i = h.slice(h.length - j, h.length - j + 3);
   f[0] = d + i +  f[0] + '';
  }
  j = h.substr(0, (h.length % 3 == 0) ? 3 : (h.length % 3));
  f[0] = j + f[0];
 }
 c = (b <= 0) ? '' : c;
 return f[0] + c + f[1];
}

function numberFormat(i, d) {
	_language = 7;
	if (_language == 1) {
		return number_format(i, d, ',', '.');
	} else if (_language == 2) {
		return number_format(i, d, '.', ',');
	} else if (_language == 3) {
		return number_format(i, d, '.', ',');
	} else {
		return number_format(i, d, '.', ',');
	}
}

function updateTokens(i) {
	document.getElementById("top_tokens").innerHTML = numberFormat(i, 0);
}

// inds�t baggrundsbillede eller farve
function toogleBackground(element, type, bg) {
	if (element == "once") {
		msg_element = "message";
	} else {
		msg_element = "message_"+element;
	}
	if (document.getElementById(msg_element).style.background == "#ffffff") {
		document.getElementById("background_"+element).innerHTML = "Fjern baggrund";
		// wallpaper
		if (type == "w") {
			document.getElementById(msg_element).style.backgroundImage = "url(/images/wallpapers/"+bg+")";
		// image upload
		} else if (type == "i") {
			document.getElementById(msg_element).style.backgroundImage = "url(/myprofile/profileimages/bgimages_fr/"+bg+")";
		// color
		} else if (type == "c") {
			document.getElementById(msg_element).style.background = bg;
		}
	} else {
		document.getElementById("background_"+element).innerHTML = "Vis baggrund";
		document.getElementById(msg_element).style.background = "#ffffff";
	}
}

function getGames(category, order, place) {
  makeHttpRequest("../../ajax/gamelist.php?category="+category+"&order="+order+"&place="+place, "showGames_"+category);
}

function getTopGames() {
  makeHttpRequest("../../ajax/gametoplist.php?go", "showTopGames");
}

function showGames_1(str) {
	document.getElementById("game_1").innerHTML = str;
}

function showGames_singleplayer(str) {
	document.getElementById("game_1").innerHTML = str;
}

function showGames_2(str) {
	document.getElementById("game_2").innerHTML = str;
}

function showGames_3(str) {
	document.getElementById("game_3").innerHTML = str;
}

function showGames_4(str) {
	document.getElementById("game_4").innerHTML = str;
}

function showTopGames(str) {
	document.getElementById("game_top").innerHTML = str;
}

function openSupport() {
	if (top.opener.closed == false) {
		sti = location.protocol+'//'+document.domain+'/';
		top.opener.location.href = sti + "help/support/support.php";
	}
}

// reporter d�rligt indhold 
function reportUser(contentID, profileID, site){
	window.open("../report_context.php?site="+site+"&profileID="+profileID+"&contentID="+contentID, "name", "height=263,width=400");
}

function multibleStatsInit( url, divId ) {
	makeHttpRequest( url, 'multibleStatsDiv' );
}

var FlashPlayerVersion;
var FlashPlayerVersionNum;
function getFlashPlayerVersion() {
	if (navigator.plugins && navigator.mimeTypes.length) {
		var x = navigator.plugins["Shockwave Flash"];
		if (x && x.description) {
			FlashPlayerVersion = (x.description.replace(/([a-z]|[A-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split(".")).join(".");
			//PlayerVersion = x.description.replace(/([a-z]|[A-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split(".");
		}
	} else if (window.ActiveXObject) {
		try {
			var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
			FlashPlayerVersion = (axo.GetVariable("$version").split(" ")[1].split(",")).join(".");
			//PlayerVersion = axo.GetVariable("$version").split(" ")[1].split(",");
		} catch (e) {
		}
	}
	
	FlashPlayerVersionNum = parseInt(FlashPlayerVersion); 
}

function showButtons(pic) {
	var html = "<table><tr>";
	for (i = 0; i < screenShots.length; i++) {
		if (screenShots[i] != "") {
			html += '<td>';
			if (screenShots[i] == pic) {
				html += '<div style="position: relative; margin: 0px 3px 0px 0px; border: 1px solid #cccccc; background-color: #f6f6f6; width: 10px;">';
			} else {
				html += '<div style="position: relative; margin: 0px 3px 0px 0px; width:10px;">';
			}
			html += '<a class="link11" href="Javascript: setScreenShot(\'' + screenShots[i] + '\');">' + (i+1) + '</a></div></td>';
		}
	}
	html += "</tr></table>";
	document.getElementById('buttonDiv').innerHTML = html;
}

function setScreenShot(pic) {
	var scrDiv = document.getElementById('screenShotImg');
	scrDiv.src = "screenshots/" + pic;
	showButtons(pic);
}

function closeWindow() {
	self.close();
}

function valButton(btn) {
    var cnt = -1;
    for (var i=btn.length-1; i > -1; i--) {
        if (btn[i].checked) {
			cnt = i; i = -1;
		}
    }
    if (cnt > -1) {
		return btn[cnt].value;
	} else {
		return null;
	}
}

function validatebug() {
	var btn = "";
	if (document.entryform.issue) {
		var btn = valButton(document.entryform.issue);
	}
	if (btn == null) {
		alert ("Vous devez sélectionner un champ d'erreur.");
	} else if (document.entryform.message.value == "") {
		alert("Vous devez décrire le problème. À défaut, nous ne pourrons pas exploiter votre signalement.");
		document.entryform.message.focus();
	    document.entryform.message.select();
	} else {
		document.entryform.submit();
	}
}

// vis/skjul punkter
function toogleIssue(s, w, page) {
	document.getElementById("gameissue").style.display = s;
  
  if (s == "") {
  	document.entryform.page.value = "_game";
	self.resizeTo(w,515);
  } else if (s == "none") {
  self.resizeTo(w,500);
  	document.entryform.page.value = page;
  }
}
// vis/skjul punkter
function toogleRight(elementID) {
	el = document.getElementById(elementID);
	d = el.style.display ? "" : "none";
	el.style.display = d;
	if (d == "") {
		eraseCookie(elementID);
		document.getElementById(elementID+"_nav").innerHTML = "Masquer <img src=\"/images/icons/boxminus.gif\" alt=\"\" border=\"0\">";
	} else {
		createCookie(elementID,"set",365);
		document.getElementById(elementID+"_nav").innerHTML = "Afficher <img src=\"/images/icons/boxplus.gif\" alt=\"\" border=\"0\">";
	}
}

// redirect instantly to another url
function page_redirect(url){
	window.location = url;
	return false;
}

/*
* Variable holding status of skyscraber banner
* See comments in lea_getter_starter()
*/
var waitForRightBanner = false;
function getRightBanner() {
	makeHttpRequest("http://www.playtopia.fr/ajax/banner.php?type=right&resWidth="+screen.width+"&resHeight="+screen.height, "showRightBanner");
	waitForRightBanner = 'REQUESTING';
}


function showRightBanner(str) {
	document.getElementById("skyscraber").innerHTML = str;
	waitForRightBanner = 'READY';
}

/*
* This function replaces lea_getter() which is a function placed at jubii.dk
* Checks if it should be recursive or just return.
* Basically it will know if it should expect a skyscraber banner.
* Therefore it can wait for the status of the div is changed to READY in showRightBanner()
*/
function lea_getter_starter(param1, param2, param3) {
	if (waitForRightBanner == 'REQUESTING') {
		setTimeout("lea_getter_starter('" + param1 + "', '" + param2 + "', '" + param3 + "');", 500);
	} else if (waitForRightBanner == 'READY') {
		lea_getter(param1, param2, param3);
	} else {
		return false;
	}
	
}

function onLoadFunctions() {
		//getRightBanner();
}



function disableTip(userid, tipid) {
	
	var url = "../../../ajax/tip_remover.php";
	url = url+"?userid="+userid;
	url = url+"&tipid="+tipid;
	makeHttpRequest(url, "dummy");

}

function toggleSetHomePage() {
	if(navigator.appName == "Microsoft Internet Explorer") {
		
		if(document.loginform.saveinfo.checked) {
			document.getElementById("forgotPassword").style.display="none";
			document.getElementById("setHomePage").style.display="block";
		} else {
			document.getElementById("forgotPassword").style.display="block";
			document.getElementById("setHomePage").style.display="none";
		}
	}
}

function setHome() {
	if(document.loginform.setHomePage.checked) {
		document.body.style.behavior='url(#default#homepage)';
		document.body.setHomePage(window.location.href);
		var url = "http://www.playtopia.fr/ajax/homepage_hits.php?hit=1";
		makeHttpRequest(url, "dummy");
	}
}

function hideElement(elementId) {
	document.getElementById(elementId).style.display = "none";
}

function showElement(elementId) {
	document.getElementById(elementId).style.display = "block";
}

function toggleElement(elementId) {
	var element = document.getElementById(elementId);
	if (element.style.display == "none") {
		showElement(elementId);
		eraseCookie(elementId);
	} else {
		hideElement(elementId);
		createCookie(elementId, 'set', 360);
	}
}

function toggleCollapseIcon(element) {
	if(element.className == "show") {
		element.className = "hide";
	} else {
		element.className = "show";
	}
}

function toggleListType(elementId, type) {
	/* Show correct list type button */
	document.getElementById(elementId+'List').className = 'listIcon';
	document.getElementById(elementId+'Thumbs').className = 'listIcon';
	document.getElementById(elementId+type).className = 'listIcon selected';
	
	/* Swith to correct list type */
	document.getElementById(elementId+'FriendList').style.display = 'none';
	document.getElementById(elementId+'FriendThumbs').style.display = 'none';
	document.getElementById(elementId+'Friend'+type).style.display = 'block';
	
	/* Reset relevant cookies */
	createCookie(elementId+'FriendsType', type, 360);
	
}

function changeInputType(oldObject, oType) {
  var newObject = document.createElement('input');
  
  newObject.type = oType;
  
  if(oldObject.size) newObject.size = oldObject.size;
  if(oldObject.value) newObject.value = '';
  if(oldObject.name) newObject.name = oldObject.name;
  if(oldObject.id) newObject.id = oldObject.id;
  if(oldObject.className) newObject.className = oldObject.className;
  
  var formName = oldObject.parentNode.name;
  
  oldObject.parentNode.replaceChild(newObject,oldObject);
  setTimeout("document." + formName + "." + newObject.name + ".focus();", 10);
  return newObject;
}

function refreshFromGame() {
	setTimeout('window.location.reload()', 5000);
}