var originalWidth;
var originalHeight;
var currentQuality = "medium";

function onLoad() {
  var embeddedGame = document.getElementById('gameEmbed');
  originalWidth = embeddedGame.getAttribute("width");
  originalHeight = embeddedGame.getAttribute("height");

  resizeWindow();
  
  window.onresize = function(e) { resizeWindow(); }
  
  window.setTimeout(checkQualityCookie, 0);
  //window.setTimeout("getEmbed().focus();", 50);
}

function checkQualityCookie() {
  var targetEmbed = getEmbed();

  var fullscreenQuality = readCookie("fullscreenQuality");
  if (fullscreenQuality) {
    currentQuality = fullscreenQuality;
    targetEmbed.SetVariable("_quality", currentQuality);
    setQualityControlImage();
  }
}

function toggleQuality() {
  var targetEmbed = getEmbed();
  var newQuality = "medium";
  
  if (currentQuality == "medium") {
    newQuality = "best";
  } else if (currentQuality == "best") {
    newQuality = "low";
  }
  
  targetEmbed.SetVariable("_quality", newQuality);
  createCookie("fullscreenQuality", newQuality, 365);
  currentQuality = newQuality;
  setQualityControlImage();
}

function setQualityControlImage() {
  if (currentQuality == "low") {
    document.getElementById("qualityControl").style.backgroundPosition = '0 -16px';
  } else if (currentQuality == "best") {
    document.getElementById("qualityControl").style.backgroundPosition = '0 -32px';
  } else {
    document.getElementById("qualityControl").style.backgroundPosition = '0 0';
  }
}

function resizeWindow() {
  var currentWidth = document.documentElement.clientWidth;
  var currentHeight =document.documentElement.clientHeight;  
  var newWidth = currentWidth;
  var newHeight = Math.round(originalHeight * currentWidth / originalWidth);
  if (newHeight > currentHeight) {
    newHeight = currentHeight;
    newWidth = Math.round(originalWidth * currentHeight / originalHeight);
    if (newWidth > (currentWidth - 32)) {
      newWidth = currentWidth - 32;
      newHeight = Math.round(originalHeight * newWidth / originalWidth);
    }
  } else if (newHeight > (currentHeight - 32)) {
    newHeight = currentHeight - 32;
    newWidth = Math.round(originalWidth * newHeight / originalHeight);
  }
  
  var embeddedGame = document.getElementById('gameEmbed');
  embeddedGame.setAttribute("width", newWidth);
  embeddedGame.setAttribute("height", newHeight);
  if (embeddedGame.style) {
    embeddedGame.style.width = '' + newWidth + 'px';
    embeddedGame.style.height = '' + newHeight + 'px';
    embeddedGame.style.minWidth = embeddedGame.style.width;
    embeddedGame.style.minHeight = embeddedGame.style.height;
    embeddedGame.style.maxWidth = embeddedGame.style.width;
    embeddedGame.style.maxHeight = embeddedGame.style.height;
  }
}

function getEmbed() {
  if (document.embeds && document.embeds['gameContent']) {
    return document.embeds['gameContent'];
  } else {
    return document.getElementById('gameContent');
  }
}

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);
}

