﻿/*

// This script contains the logic for dynamically changing the stylesheet.
//
// NOTE: Using following conventions in <link> and <a> selectors title attributes:
//
// Tekst normaal (linksmall css)
// Tekst groter (linkmedium css)
//
*/

function setActiveStyleSheet(aTitle, aResetFlag) {
	var lElement;
	for (i=0; (lElement = document.getElementsByTagName("link")[i]); i++) {
		if (lElement.getAttribute("rel").indexOf("style") != -1 && lElement.getAttribute("title")) {
			lElement.disabled = true;
			if (lElement.getAttribute("title") == aTitle) lElement.disabled = false;
		}
	}
	if (aResetFlag == 1) { // set current style as cookie and set tha path
		document.cookie='default' + '=' + aTitle +'; path=/';			 
	}
	pinActiveLink(aTitle); // set underline under xhtml link by adding a pinned class
}

function setStyle() {
	var lStyle = get_cookie("default");	
	if (lStyle != "") {
		setActiveStyleSheet(lStyle, 0);
	} else {
		// set default style to normal
		setActiveStyleSheet("Tekst normaal", 1);
	}
}

function pinActiveLink(aTitle) {
	var lElement;
	for (i=0; (lElement = document.getElementsByTagName("a")[i]); i++) {
		if (lElement.getAttribute("title")) {
			// first clear all pinned links
		    if (lElement.getAttribute("title").indexOf('Tekst normaal') != -1) {
				lElement.className = 'linkmedium';
			}
		    if (lElement.getAttribute("title").indexOf('Tekst groter') != -1) {
				lElement.className = 'linkbig';
			}
		}
	}
	for (i=0; (lElement = document.getElementsByTagName("a")[i]); i++) {
		if (lElement.getAttribute("title")) {
			// set pinned
		    if (lElement.getAttribute("title").indexOf(aTitle) != -1 && lElement.getAttribute("title")) {
				lElement.className += ' pinned';				
			}
		}
	}
}

function get_cookie(Name) {
	var search = Name + "="
	var returnvalue = "";
	if (document.cookie.length > 0) {
		offset = document.cookie.indexOf(search)
		// if cookie exists
		if (offset != -1) { 
			offset += search.length
			// set index of beginning of value
			end = document.cookie.indexOf(";", offset);
			// set index of end of cookie value
			if (end == -1) end = document.cookie.length;
			returnvalue=unescape(document.cookie.substring(offset, end))
		}
	}
  return returnvalue;
}

