/*  Niet Bang Maar Voorbereid
 *  Dynamic CSS-styling & cookie functions
 *
 *  Developer:  M. van Wijk
 *    Created:  01 May 2007
 *   Modified:  02 May 2007
 */

function getOption() {
	/* Detects selected style option and calls setCookie.
	   Used in menu.aspx. */
  var intOption = document.frmMenu.slcCSSSelect.selectedIndex;
  setCookie(intOption);
}
    
function setCookie(intOption) {
  /* Assigns stylesheet URI depending on selected option (passed from getOption()),
     and sets cookie.
     Used in menu.aspx. */
  switch (intOption) {
    case 0: { var strStylesheet = "nbmv-default.css"; break; }
    case 1: { var strStylesheet = "nbmv-whitebg.css"; break; }
    default: { var strStylesheet = "nbmv-default.css"; break; }
  }
  strStylesheet = encodeURIComponent(strStylesheet);

  deleteCookie();                                              // delete existing cookie if present
  document.cookie = "nbmv-stylesheet=" + strStylesheet + ";";  // create new cookie
}

function setStylesheet() {
	/* Retrieves cookie data & swaps stylesheet
	   Used site-wide at page load. */
  var cookies = document.cookie;

  var cookieCSSpos = cookies.indexOf("nbmv-stylesheet");       // find NBMV-stylesheet cookie
  if (cookieCSSpos != -1) {                                    // if found, get value
    var cookieCSSstart = cookieCSSpos + 16;
    var cookieCSSend = document.cookie.indexOf(";",cookieCSSstart);
    var cookieCSS = document.cookie.substring(cookieCSSstart,cookieCSSend);
    var strStylesheet = decodeURIComponent(cookieCSS);
  } else {
  	var strStylesheet = "nbmv-default.css";                    // if not found, use default
  }  

  // set stylesheet
  strStylesheet = "../css/" + strStylesheet;
  document.getElementById("stylesheet").href = strStylesheet;
}

function deleteCookie() {
	// Deletes cookie
	if (!strStylesheet) { var strStylesheet; }
	strExpiryDate = "Fri, 27 Jul 2001 02:47:11 UTC";
	document.cookie = "nbmv-stylesheet=" + strStylesheet + ";expires=" + strExpiryDate + ";";
}

function detectCookie() {
	// tests whether a cookie has already been set
  var cookies = document.cookie;
  var cookieCSSpos = cookies.indexOf("nbmv-stylesheet");       // find NBMV-stylesheet cookie
  if (cookieCSSpos == -1) { return false; } else { return true; }
}

function dynCSSinit() {
	/* Initialization sequence
	   Used in menu.aspx */
	var blnCookieIsSet = detectCookie();
	if (blnCookieIsSet = false) { setCookie(0); }
	setStylesheet();
}
