﻿
var fontsizes = ['FontSize1', 'FontSize2', 'FontSize3', 'FontSize4', 'FontSize5'];
var cssContrast = 'contrast.css';
var fontsize;

function initFontsize() {
	if (!readCookie('fontsize')) createCookie('fontsize', 1);
	fontsize = readCookie('fontsize');
	fontsize = parseFloat(fontsize);
}

/**
* Set the fontsize of the body
* Set global variable fontsize;
*/
function setFontSize(newSize) {
	fontsize = parseFloat(fontsize);
	if (isNaN(fontsize)) {
		initFontsize()
	}
	var size = 0;
	if (newSize != undefined) size = parseFloat(newSize);

	if (fontsizes[fontsize + size] != undefined) {
		var currentClass = document.body.className;
		currentClass = removeFontsizeClasses(currentClass);
		fontsize += size
		if (currentClass != '') {
			document.body.className = currentClass + ' ' + fontsizes[fontsize];
		}
		else {
			document.body.className = fontsizes[fontsize];
		}
		createCookie('fontsize', fontsize);
	}
	return false;
}

/**
* Returns cookie according to name
* @param {String} name
*/
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;
}

/**
* Saves local cookie
* @param {String} name
* @param {String} value
*/
function createCookie(name, value) {
	var exdate = new Date();
	exdate.setDate(exdate.getDate() + 365);
	var expires = "; expires= " + exdate.toGMTString(); // 1 jaar
	var path = "; path=/";

	var domain = ""; // werkt niet in subdomain

	document.cookie = name + "=" + value + expires + path + domain;
}

/**
* removes fontsize classes from current classes
* @param {string} currentClasses
*/
function removeFontsizeClasses(currentClasses) {
	var newClasses = "";
	var classArray = currentClasses.split(" ");
	for (i=0;i<classArray.length; i++) {
		if (classArray[i].indexOf("FontSize") != 0) {
			if (newClasses != "") {
				newClasses = newClasses + " " + classArray[i];
			}
			else {
				newClasses = classArray[i];
			}
		}
	}
	return newClasses;
}
