
var COOKIE_NAME = "font_size_preview";
var COOKIE_EXPIRES = 7;
var font_sizes = new Array(14, 16, 18);
(function(){
	if (window.addEventListener) {
		window.addEventListener("load", setup_font_size, false);    
	} else {
		window.attachEvent("onload", setup_font_size);
	}
})();

function setup_font_size() {	
	change_font_size('default');  
	var font_size_links = document.getElementById("font_size").getElementsByTagName("a");    
	for (var i = 0; i < font_size_links.length; i++) {	  	  
		setup_font_size_link(i);
	}    
}

function setup_font_size_link(i) {	
	var link = document.getElementById("font_size_" + i);
	link.onclick = function(){change_font_size(font_sizes[i]);};
}

function get_cookie(cookie_name) {
	//This function has been modified from an example at W3Schools
	if (document.cookie.length > 0) {
		start = document.cookie.indexOf(cookie_name);
		if (start != -1) { 
			start += cookie_name.length + 1; 
			end = document.cookie.indexOf(";", start);        
			if (end == -1) {
				end = document.cookie.length;  
			}
			var cookie_value = document.cookie.substring(start, end);        
			return unescape(cookie_value);
		} 
	}
	return null;
}

function set_cookie(cookie_name, cookie_value, expire_days) {
	var str = cookie_name + "=" + escape(cookie_value) + "; ";
	var expire_date = new Date();
	expire_date.setDate(expire_date.getDate() + expire_days);
	str += "expires=" + expire_date.toGMTString() + "; path=/;";
	document.cookie = str;
}

function change_font_size(size) {	  	  
	if (size == 'default') {		  		  
		//Get font size from the cookie if possible otherwise set the font size to the default value
		size = get_cookie(COOKIE_NAME);
		if (!size){
			size = 14;
		}		  		  
	}
	//Change the font size
	document.getElementById("main-content").style.fontSize = size + "px";
	//Store the font size value in a cookie
	set_cookie(COOKIE_NAME, size, COOKIE_EXPIRES);
}
