var isOpen        = true;
var currentPage   = null;

function resize(params)
{
  var width = parseInt(params["size"]);
  if (isNaN(width)) return;
  var height = Math.floor(width / (640 / 480));

  var container = document.getElementById("engineContainer");
  if (container != undefined)
  {
    container.style.width  = width  + "px";
    container.style.height = height + "px";

    document.getElementById("logoBanner").style.width = width + "px";
  }
  else
  {
    self.resizeTo(width, height);

    if (window.innerWidth != undefined)
    {
      var innerWidth  = window.innerWidth;
      var innerHeight = window.innerHeight;
    }
    else if (document.body.clientHeight != undefined)
    {
      var innerWidth  = document.body.clientWidth;
      var innerHeight = document.body.clientHeight;
    }
    else
    {
      var innerWidth  = document.documentElement.clientWidth;
      var innerHeight = document.documentElement.clientHeight;
    }

    self.resizeTo(width + (width - innerWidth), height + (height - innerHeight));
  }

  if (document.getElementById("logoBanner") != undefined)
  {
    var logoImage = "logoBanner640.png";
    switch (width)
    {
      case 640:  logoImage = "logoBanner640.png";  break;
      case 800:  logoImage = "logoBanner800.png";  break;
      case 1024: logoImage = "logoBanner1024.png"; break;
    }

    document.getElementById("logoBanner").src = "../web/images/" + logoImage;
  }

  setCookie("gidzSize", width + "," + height, 31);
}

function setCookie(name, value, days)
{
  var expires = "";

  if (days)
  {
    var date = new Date();
    date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
    expires = "; expires=" + date.toGMTString();
  }

  document.cookie = name + "=" + value + expires + "; path=/";
}

function getCookie(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 initEngine()
{
  var href = document.location.href + "";
  href = href.toLowerCase();

  if (href.substr(0, 7) == "http://")
  {
    href = href.substr(7, href.length - 7);
  }
  if ((href.indexOf(".nl") != -1) && (href.substr(0, 4) != "www.") && (href.indexOf("acceptatie") == -1))
  {
    document.location.href = "http://www." + href;
    return;
  }

  var html = '<table border="0" height="100%" width="100%">' +
               '<tr>' +
                 '<td height="100%" width="100%" align="center" valign="middle">' +
                   '<table border="0">' +
                     '<tr><td><div id="engineContainer"></div></td></tr>' +
                     '<tr><td><div id="imageContainer"></div></td></tr>' +
                   '</table>' +
                 '</td>' +
               '</tr>' +
             '</table>' +
             '<iframe name="opener" style="display:none;"></iframe>';

  document.body.style.backgroundColor = "#000000";
  document.body.innerHTML = html;

  var size   = getCookie("gidzSize");
  var width  = 640;
  var height = 480;
  if (size != null)
  {
    size   = size.split(',');
    width  = size[0];
    height = size[1];
  }

  var username = getCookie("gidzUsername");
  var password = getCookie("gidzPassword");

  if ((username != null) && (username != "") && (username != "?") && (username != "null") &&
      (password != null) && (password != "") && (password != "?") && (password != "null"))
  {
    params += "&loadUsername=" + username + "&loadPassword=" + password;
  }

  var flash = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="100%" height="100%" id="engine" align="middle">' +
                '<param name="allowScriptAccess" value="sameDomain" />' +
                '<param name="menu" value="false" />' +
                '<param name="movie" value="engine.swf?basePath=' + params + '"' +
                '<param name="quality" value="high" />' +
                '<param name="bgcolor" value="#000000" />' +
                '<embed src="engine.swf?basePath=' + params + '" menu="FALSE" quality="high" bgcolor="#000000" width="100%" height="100%" name="engine" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />' +
              '</object>';

  var engineContainer          = document.getElementById("engineContainer");
  var imageContainer           = document.getElementById("imageContainer");

  engineContainer.style.width  = width  + "px";
  engineContainer.style.height = height + "px";

  engineContainer.innerHTML    = flash;

  var logoImage = "logoBanner640.png";
  switch (parseInt(width))
  {
    case 640:  logoImage = "logoBanner640.png";  break;
    case 800:  logoImage = "logoBanner800.png";  break;
    case 1024: logoImage = "logoBanner1024.png"; break;
  }

  imageContainer.innerHTML     = '<img src="../web/images/' + logoImage + '" id="logoBanner" style="width:' + width + 'px;"/>';
}

function initPopup()
{
  var size = getCookie("gidzSize");
  if (size != null)
  {
    size = size.split(',');
    var params = new Object();
    params["size"] = size[0];
    resize(params);
  }
}

function getDebugMode()
{
  return (getCookie("gidzDebug") == "true") ? "true" : "false";
}

function setDebugMode(params)
{
  setCookie("gidzDebug", params["debugMode"], 31);
}

function setAutoLogin(params)
{
  setCookie("gidzUsername", params["username"], 31);
  setCookie("gidzPassword", params["password"], 31);
}

function setReadSpeed(params)
{
  setCookie("gidzReadSpeed", params["speed"], 31);
}

function getReadSpeed()
{
  return getCookie("gidzReadSpeed");
}

function setMusic(params)
{
  setCookie("gidzMusic", params["enabled"], 31);
}

function getMusic()
{
  return getCookie("gidzMusic");
}

function setSound(params)
{
  setCookie("gidzSound", params["enabled"], 31);
}

function getSound()
{
  return getCookie("gidzSound");
}

function openLibrary(params)
{
  if ((top.popupWin == undefined) || (top.popupWin.content == undefined)) return;
  top.popupWin.content.document.location.href = "../web/bibliotheek.php";
}

function openHelp(params)
{
  if ((top.popupWin == undefined) || (top.popupWin.content == undefined)) return;
  top.popupWin.content.document.location.href = "../web/help.php?scenarioId=" + params["scenario"];
}

function changeHelp(params)
{
  if ((top.popupWin == undefined) || (top.popupWin.content == undefined)) return;
  if (top.popupWin.currentPage != "Help") return;
  top.popupWin.content.document.location.href = "../web/help.php?scenarioId=" + params["scenario"];
}

var messageFrame = null;
var messageId    = 0;
var messageLast  = "";

function setMessageFrame(f)
{
  messageFrame = f;
}

function logLn(params)
{
  if ((messageFrame != null) && (messageFrame != undefined))
  {
    messages = messageFrame.document.getElementById("console");

    if (messageLast != params["msg"])
    {
      messageLast = params["msg"];

      messageId++;
      messages.innerHTML += '<span id="msg' + messageId + '">' + messageLast + '</span><br />';

      var messageSpan = messageFrame.document.getElementById("msg" + messageId);
      if (messageSpan != undefined)
      {
        messageSpan.scrollIntoView();
      }
    }
  }
}

function backToSite()
{
  top.document.location.href = "../portal/";
}

function hideLogos()
{
  document.getElementById("logoBanner").style.visibility = "hidden";
}

// popup blocker check...
popupCheck = window.open("", "", "width=100,height=100,scrollbars=no,toolbar=no,location=no");
if (popupCheck)
{
  setCookie("gidzPopupAllowed", "true", 31);
}
else
{
  setCookie("gidzPopupAllowed", "false", 31);
}
popupCheck.close()


