var fontSize = 10;

window.onload = function () {
	
	if ((fontSizeCookie = getCookie('font-size')) != null) {
		fontSize = fontSizeCookie;
		setFontSize(fontSize);
	}
	
	if (obj('font-bigger') && obj('font-smaller')) {
		obj('font-bigger').onclick = function() {
			if (fontSize < 20) {
				fontSize++;
				setFontSize(fontSize);
			}
			return false;
		};
		obj('font-smaller').onclick = function() {
			if (fontSize > 8) {
				fontSize--;
				setFontSize(fontSize);
			}
			return false;
		};
		
		if (/msie/.test( navigator.userAgent.toLowerCase() ) && ! /opera/.test( navigator.userAgent.toLowerCase() )) {
			obj('font-bigger').ondblclick = obj('font-bigger').onclick;
			obj('font-smaller').ondblclick = obj('font-smaller').onclick;
		}
	}
};

/* --- */

function setFontSize(fs) {
	document.body.className = "f" + fs;
	setCookie('font-size', fs);
	if (fs == 20) {
		addClass('font-bigger', 'off');
	}
	if (fs != 20) {
		delClass('font-bigger', 'off');
	}
	if (fs == 8) {
		addClass('font-smaller', 'off');
	}
	if (fs != 8) {
		delClass('font-smaller', 'off');
	}
}

function getCookie(name)  {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for (var i=0; i < ca.length; i++) {
		while (ca[i].charAt(0)==' ') {
			ca[i] = ca[i].substring(1, ca[i].length);
		}
		if (ca[i].indexOf(nameEQ) == 0) {
			return ca[i].substring(nameEQ.length, ca[i].length);
		}
	}
	return null;
}

function setCookie(name, value) {
	var date = new Date(2020, 12, 31, 23, 59, 59);
	var expires = "; expires=" + date.toGMTString();
	document.cookie = name + "=" + value + expires;
}

function logSave(memberId, href) {
	if (document.images) {
		(new Image).src = "log.php?id=" + escape(memberId) + "&href=" + escape(href);
	}
	return true;
}

function obj(name)
{
	return (typeof name == 'string' ? document.getElementById(name) : name);
}

function getXmlHttpObject()
{
	var xmlHttpObject = null;
	try {
		xmlHttpObject = new XMLHttpRequest();
	} catch (e) {
		try {
			xmlHttpObject = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			xmlHttpObject = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttpObject;
}

/* Class functions */

function toggle(id) {
	if (hasClass(id, 'hidden'))
		delClass(id, 'hidden');
	else
		addClass(id, 'hidden');
}

function setClass(object, class_name) {
	if (typeof object == 'string')
		object = obj(object);
	if (object.className != undefined)
		object.className = class_name;
}

function hasClass(object, class_name) {
	if (typeof object == 'string')
		object = obj(object);
	if (object.className != undefined) {
		var classArray = object.className.split(" ");
		for (var i in classArray) {
			if (classArray[i] == class_name) {
				return true;
			}
		}
	}
	return false;
}

function addClass(object, class_name) {
	if (typeof object == 'string')
		object = obj(object);
	if (object.className != undefined) {
		if (!hasClass(object, class_name)) {
			object.className += " "+class_name;
		}
	}
}

function delClass(object, class_name) {
	if (typeof object == 'string')
		object = obj(object);
	if (object.className != undefined) {
		classArray = object.className.split(" ");
		for (var i in classArray) {
			if (classArray[i]==class_name)
			classArray.splice(i,1);
		}
		object.className = classArray.join(" ")
	}
}
