  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 getFilmName(mixedCase)
  {
    filmName = unescape(readCookie("film").replace(/\+/g, " "));
    var temp = document.createElement("span");
    temp.innerHTML = filmName;
    filmName = temp.innerHTML;
    if (mixedCase)
    {
      return filmName;
    }
    else
    {
      return filmName.toUpperCase()
    }
  }

  function determineDisplayLetters()
  {
    film = getFilmName();
    var nonAlpha = film.replace(/[A-Z]/g, "");
    return nonAlpha;
  }

  //displayLetters = " -.,;'!?%&0123456789\"" + String.fromCharCode(0x2665);
  displayLetters = determineDisplayLetters();
  guessedLetters = "";
  deadness = 0;

  function guess(letter)
  {
    guessedLetters += letter;
    film = getFilmName();
    span = document.getElementById("letter_" + letter);
    if (film.indexOf(letter) >= 0)
    {
      span.innerHTML = letter;
      displayLetters += letter;
      if (!drawSpaces())
      {
        document.getElementById("letterselector").style.display = "none";
        document.getElementById("youwin").style.display = "inline";
      }
    }
    else
    {
      span.innerHTML = "<font color='red'>" + letter + "</font>";
      deadness++;
      document.getElementById("guessesleft").innerHTML = 6 - deadness;
      document.getElementById("gallows").src ="hangman/hangman_" + deadness + ".gif";
      if (deadness == 6)
      {
        document.getElementById("letterselector").style.display = "none";
        document.getElementById("youlose").style.display = "inline";
        document.getElementById("tellmethen").innerHTML = getFilmName(true);
      }
    }
  }

  function processKeyPress(e)
  {
    if(window.event) // IE
    {
      keynum = e.keyCode;
    }
    else if(e.which) // Netscape/Firefox/Opera
    {
      keynum = e.which;
    }
    keychar = (String.fromCharCode(keynum)).toUpperCase();
    if (keychar >= "A" && keychar <= "Z" && guessedLetters.indexOf(keychar) == -1 && deadness < 6)
    {
      guess(keychar);
    }
    return false;
  }

  function drawSpaces()
  {
    film = getFilmName();
    html = "";
    stillSpaces = false;
    for (i = 0; i < film.length; i++)
    {
      letter = film.charAt(i);
      if (displayLetters.indexOf(letter) >= 0)
      {
        if (letter == " ")
        {
          html += "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
        }
        else
        {
          html += "<font size='4'>" + letter + "</font> ";
        }
      }
      else
      {
        html += "<font size='4'>_</font> ";
        stillSpaces = true;
      }
    }
    document.getElementById("spaces").innerHTML = html;
    return stillSpaces;
  }
