// ----------------------------------------------
// StyleSwitcher functions written by Paul Sowden
// http://www.idontsmoke.co.uk/ss/
// - - - - - - - - - - - - - - - - - - - - - - -
// For the details, visit ALA:
// http://www.alistapart.com/stories/alternate/

var sz = 9; //default stylesheet

function setActiveStyleSheet(dir)
{
	var li; // link items - that is, stylesheets

	//make sure we're under limit
	if (8 < sz + dir && sz + dir < 16)
	{
		for(var i = 0; li = document.getElementsByTagName("link")[i]; i++)
		{
			// get stylesheets
			if(li.getAttribute("rel").indexOf("style") != -1 && li.getAttribute("title"))
			{
				if(li.getAttribute("title").indexOf("typo") != -1) li.disabled = true;
				// check if 1 - it's a stylesheet with a title, 2- if it is an article stylesheet, disable it
				if (li.getAttribute("title").indexOf(sz + Number(dir)) > -1) li.disabled = false;
				// if it's the next in line, enable it
			}
		}
		
		//don't forget to increment the size, so we know what's next....
		sz = sz + Number(dir);

		createCookie("style", sz, 365);
	}
}


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

/*
window.onload = function(e) {
  var cookie = readCookie("style");
  var title = cookie ? cookie : getPreferredStyleSheet();
  setActiveStyleSheet(title);
}

window.onunload = function(e) {
  var title = getActiveStyleSheet();
  createCookie("style", title, 365);
}
*/


var cookie = readCookie("style");
var tempo = cookie ? cookie : sz;
setActiveStyleSheet(tempo - sz);
