function setCookie(name, value, expires, path) 
{
  var curCookie = name + "=" + escape(value) +
       ((expires) ? "; expires=" + expires.toGMTString() : "") +
       ((path) ? "; path=" + path : "");
  document.cookie = curCookie;
}

function getCookie(name)
{
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1)
  {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  }
  else
     begin += 2;
  var end = document.cookie.indexOf(";", begin);
  if (end == -1)
    end = dc.length;
  return unescape(dc.substring(begin + prefix.length, end));
}

function initFontsize()
{
  var fsizeCookie = getCookie("fontsize");

  if (fsizeCookie == null)
  {
    fsize = 8;
  }
  else
  {
    fsize = parseInt(fsizeCookie);
  }
  fontsize(fsize);
}

function resizeFontsize(factor)
{
  if (typeof fsize == 'undefined')
  {
    fsize = 10;
  }
  fsize += factor;  
  fontsize(fsize);

  return false;
}

function fontsize(fsizeToSet)
{
  document.getElementsByTagName("body")[0].style.fontSize = fsizeToSet/10.0 + 'em';
  fsize = fsizeToSet;

  // set session cookie (expires == null)
  setCookie("fontsize", fsizeToSet, null, '/');
  return false;
}

