function get_cookie ( name ) {
	var find = 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(find) == 0 ) {
			return c.substring( find.length, c.length );
		}
	}
	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 {
		var expires = "";
	}
	document.cookie = name+"="+value+expires+"; path=/";
}

function initStyles () {
    preloadimages();

	var stylesheets = new Array;
	var text_style = get_cookie( 'text-stylesheet' );
	var page_style = get_cookie( 'page-stylesheet' );
	if ( page_style == "" ) {
		set_cookie( 'page-stylesheet', 'pageDefault' );
		page_style = "pageDefault";
	}
	stylesheets[stylesheets.length] = page_style;
	if ( text_style == "" ) {
		set_cookie( 'text-stylesheet', 'textDefault' );
		text_style = "textDefault";
	}
	stylesheets[stylesheets.length] = text_style;
	apply_stylesheet( stylesheets );
}

function setTextStyle ( stylesheet ) {
	var stylesheets = new Array;
	set_cookie( 'text-stylesheet', stylesheet );
	var page_style = get_cookie( 'page-stylesheet' );
	stylesheets[stylesheets.length] = stylesheet;
	stylesheets[stylesheets.length] = page_style;
	apply_stylesheet( stylesheets );
}

function setPageStyle ( stylesheet ) {
	var stylesheets = new Array;
	set_cookie( 'page-stylesheet', stylesheet );
	var text_style = get_cookie( 'text-stylesheet' );
	stylesheets[stylesheets.length] = stylesheet;
	stylesheets[stylesheets.length] = text_style;
	apply_stylesheet( stylesheets );
}

function get_stylesheets () {
	if ( !window.ScriptEngine && navigator.__ice_version ) {
		return document.styleSheets; 
	}
	var links = false;
	var style = false; 
	if ( document.getElementsByTagName ) {
		links = document.getElementsByTagName( 'link' );
		style = document.getElementsByTagName( 'style' );
	} else if ( document.styleSheets && document.all ) {
		links = document.all.tags( 'link' );
		style = document.all.tags( 'style' );
	}
	var os = new Array;
	for ( var i = 0; links[i]; i++ ) {
		var rel = false;
		if ( links[i].rel ) { 
			rel = links[i].rel;
		} else if ( links[i].getAttribute ) {
			rel = links[i].getAttribute( 'rel' );
		} else {
			rel = "";
		}
		if (	typeof( rel ) == 'string' && 
				rel.toLowerCase().indexOf( 'style' ) + 1 ) {
			os[os.length] = links[i];
		}
	}
	for ( var i = 0; style[i]; i++ ) {
		os[os.length] = style[i];
	}
	return os;
}

function apply_stylesheet ( stylesheet ) {
	for ( var i = 0, ss = get_stylesheets(); ss[i]; i++ ) {
		if ( ss[i].title ) { ss[i].disabled = true; }
		for ( var j = 0; j < stylesheet.length; j++ ) {
			if ( ss[i].title == stylesheet[j] ) { 
				ss[i].disabled = false; 
			}
		}
	}
}

function increaseFontSize() {
	var c = get_cookie( 'text-stylesheet' );
	if ( c == "textDefault" ) {
		c = "plus1Text";
	} else if ( c == "plus1Text" ) {
		c = "plus2Text";
	} else if ( c == "plus2Text" || c == "plus3Text" ) {
		c = "plus3Text";
	} else {
		c = "textDefault";
		set_cookie( 'text-stylesheet', c );
	}
	setTextStyle( c );
}

function decreaseFontSize() {
	var c = get_cookie( 'text-stylesheet' );
	if ( c == "textDefault" || c == "plus1Text" ) {
		c = "textDefault";
	} else if ( c == "plus2Text" ) {
		c = "plus1Text";
	} else if ( c == "plus3Text" ) {
		c = "plus2Text";
	} else {
		c = "textDefault";
		set_cookie( 'text-stylesheet', c );
	}
	setTextStyle( c );
}

