/* Functions */

function get_cookie (name)
{
	with (document.cookie)
	{
		var reg	= new RegExp ('(^|;\\s+)' + name + '=(.*?)(;|$)');
		var hit	= reg.exec (document.cookie);

		if (hit && hit.length > 2)
		{ return unescape (replace_all (hit[2], '+', '%20') ); }
		else return '';
	}
}

function set_cookie (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 set_stylesheet (styletitle, norefresh)
{
	set_cookie ('fuu_style', styletitle, 365);

	var links	= document.getElementsByTagName ('link');
	var found	= false;

	for (var i = 0; i < links.length; i ++)
	{
		var rel	= links[i].getAttribute ('rel');
		var ttl	= links[i].getAttribute ('title');

		if (rel.indexOf ('style') != -1 && ttl)
		{
			links[i].disabled	= true; // IE needs this to work. IE needs to die.

			if (styletitle == ttl)
			{
				links[i].disabled	= false;
				found	= true;
			}
		}
	}

	if (!found) set_preferred_stylesheet ();
}

function set_preferred_stylesheet ()
{
	var links	= document.getElementsByTagName ('link');

	for (var i = 0; i < links.length; i ++)
	{
		var rel	= links[i].getAttribute ('rel');
		var ttl	= links[i].getAttribute ('title');

		if (rel.indexOf ('style') != -1 && ttl)
		{ links[i].disabled	= (rel.indexOf ('alt') != -1); }
	}
}

function get_active_stylesheet ()
{
	var links	= document.getElementsByTagName ('link');

	for (var i = 0; i < links.length; i ++)
	{
		var rel	= links[i].getAttribute ('rel');
		var ttl	= links[i].getAttribute ('title');

		if (rel.indexOf ('style') != -1 && ttl && !links[i].disabled)
		{ return ttl; }
	}
	return null;
}

function get_preferred_stylesheet ()
{
	var links	= document.getElementsByTagName ('link');

	for (var i=0;i<links.length;i++)
	{
		var rel	= links[i].getAttribute ('rel');
		var ttl	= links[i].getAttribute ('title');

		if (rel.indexOf ('style') != -1 && rel.indexOf ('alt') == -1 && ttl)
		{ return ttl; }
	}
	return null;
}

