﻿//---thanks to alistapart

//-----------------------------------------------------------------------------rerender
/*
function rerender (x) {
w = 100 - 0.0001* (x);
document.getElementById ('header').style.width = w + '%';
}
*/

//-----------------------------------------------------------------------------cookie functions
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 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;
}

//-----------------------------------------------------------------------------setActiveStyleSheet
function setActiveStyleSheet (cssFileName) {
   //href = '/css/' + cssFileName + '.css';

   switch(cssFileName)
   {
   case "large":
      href = 'hfea/css/large.css';
      break;    
   case "extralarge":
      href = 'hfea/css/extralarge.css';
      break;
   default:
      href = 'hfea/css/normal.css';
   }

//alert (href);
   document.getElementById ("defaultTextSize").href = href;
   return null;
}
//-----------------------------------------------------------------------------getActiveStyleSheet
function getActiveStyleSheet() {
   href = document.getElementById ("defaultTextSize").href;
   x = href.lastIndexOf('/') + 1;
   y = href.lastIndexOf('.')
   cssFileName = href.substring(x, y);
//alert ('cssFileName = ' + cssFileName);
   return cssFileName;
}

//-----------------------------------------------------------------------------getPreferredStyleSheet
function getPreferredStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}

//-----------------------------------------------------------------------------changeFontSize
function changeFontSize (fontSize) {
  switch (fontSize)
     {
      case 1 : setActiveStyleSheet('normal'); break;
      case 2 : setActiveStyleSheet('large'); break;
      case 3 : setActiveStyleSheet('extralarge'); break;
     }
  //rerender (fontSize);
}

//-----------------------------------------------------------------------------displayFontSizeButtons
// buttons are displayed only when javascript is enabled.
function displayFontSizeButtons() {
div=document.getElementById('textSizeBtn');
div.innerHTML = '<dl id="textSize">' + '<dt>Text size:</dt>' + '<dd><a href="javascript:changeFontSize(1)" title="Normal text size"><span>Norm</span>a<span>l text size</span></a></dd>' + '<dd class="large"><a href="javascript:changeFontSize(2)" title="Large text size"><span>L</span>a<span>rge text size</span></a></dd>' + '<dd class="xlarge"><a href="javascript:changeFontSize(3)" title="Extra-large text  size"><span>Extra-l</span>a<span>rge text size</span></a></dd>' + '</dl>';
}

//-----------------------------------------------------------------------------onLoad
window.onload = function(e) {
  var cookie = readCookie("style");
  var title = cookie ? cookie : getActiveStyleSheet ();
  if (cookie != null) { setActiveStyleSheet(title); } 
  displayFontSizeButtons ();
//  rerender (4);
}
window.onunload = function(e) {
  var title = getActiveStyleSheet();
  createCookie("style", title, 365);
}
