// This script based on Paul Snowden's work described on A List Apart
//  <http://www.alistapart.com/stories/alternate/>
// Certain modifications (setFontSize and related) by Eric Meyer
//  <http://www.meyerweb.com/eric/>

var style;
var fontSize;
function adjustFont(amount) {
  //setFontSize(fontSize + amount);
  var size = fontSize + amount;
  if (size < 8) {
    alert("Zoom minimum reached");
  } else if (size > 20) {
    alert("Zoom maximum reached");
  } else {
    setFontSize(size);
    // Changing the font size can goof up the layout, causing letter and
    // line spacing problems, so reset the stlye sheet as well
    var cookie = readCookie('darkwater-style');
    var title = cookie ? cookie : getPreferredStyleSheet();
    setActiveStyleSheet(title);
  }
}
function jumpToFont(size) {
  if (size != fontSize) {
    // createCookie('darkwater-size', size, 365);
    // Changing the font size can goof up the layout, causing letter and
    // line spacing problems, so reset the stlye sheet as well
    var cookie = readCookie('darkwater-style');
    var title = cookie ? cookie : getPreferredStyleSheet();
    setActiveStyleSheet(title);
  }
}

function adjustStyle(title) {
 if (title != style) {
  style = title
  setActiveStyleSheet(title)
 }
}

function saveSettings() {
 if (confirm("This will store 2 cookies on your computer. Proceed?")) {
  createCookie('darkwater-size', fontSize, 365);
  createCookie('darkwater-style', style, 365);
 }
}

function setActiveStyleSheet(title) {
  var i, a;
  if (title) {
    for(i=0; (a = document.getElementsByTagName('link')[i]); i++) {
      if(a.getAttribute('rel').indexOf('style') != -1
        && a.getAttribute('title')) {
        a.disabled = true;
        if(a.getAttribute('title') == title) a.disabled = false;
      }
    }
    style = title
  }
}

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

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;
}

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;
}

function eraseCookie(name) {
	createCookie(name,'',-1);
}

function setFontSize(fontVal) {
	var docBase = new Array();
	docBase = document.getElementsByTagName('body');
	var docSize = fontVal+'px';
	docBase[0].style.fontSize = docSize;
	fontSize = fontVal;
}

window.onload = function(e) {
  var cookie = readCookie('darkwater-style');
  var title = cookie ? cookie : getPreferredStyleSheet();
  var cookie2 = readCookie('darkwater-size');
  // if (cookie2) {setFontSize(cookie2);}
  if (cookie2) {fontSize = parseInt(cookie2);}
  else {fontSize = 12;}
  setFontSize(fontSize);
  setActiveStyleSheet(title);
  gotoHash();
}

//window.onunload = function(e) {
  //var title = getActiveStyleSheet();
  //createCookie('darkwater-style', title, 365);
//}

