// This script controls the Enfield Website's Theme chooser

function displayColorPreferenceControls(){
	/* Check if this will work before displaying controls */
	if(navigator.cookieEnabled && document.styleSheets && (document.styleSheets[0].addRule || document.styleSheets[0].insertRule)){
		document.write(	
		"<div class='inner' style='float:left; padding-left:10px;'>"+
		"<form id='userColorpref' style='margin-bottom:0px' name='userColorpref'>"+
		"<label for='colorChooser'>Theme: </label>"+
		"<select name='colorChooser' id='colorChooser' onchange='chgStyle(this)'>"+
		"<option value='default'>Default</option>"+
		"<option value='highvis'>High Visibility</option>"+
		"<option value='stone'>Stone</option>"+	
		"<option value='purple'>Blackcurrant</option>"+
		"<option value='orange'>Sand</option>"+
		"<option value='emerald'>Emerald</option>"+		
		"</select>"+        
		"</form>"+
		"</div>"
		);
	}else{
	}
}


function chgStyle(which) {
  	var myindex=which.selectedIndex;
  	setActiveStyleSheet(which.options[which.selectedIndex].value);
}

function setActiveStyleSheet(title) {
  	var i, a, main;
  	for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
    	a.disabled = true;
    	if(a.getAttribute("title") == title) a.disabled = false;
    	}
  	}
}

function getActiveStyleSheet() {
  	var i, a;
  	for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    	if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  	}
  	return null;
}

function getPreferredStyleSheet() {
  	var i, a;
  	for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
    ) return a.getAttribute("title");
	}
	return null;
}

function createCookie(name,value,days) {
	if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  	}
  	else expires = "";
  	document.cookie = name+"="+value+expires+"; path=/";
}

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;
}

window.onload = function(e) {
	var cookie = readCookie("style");
	var title = cookie ? cookie : getPreferredStyleSheet();
	setActiveStyleSheet(title);
	iceCookie('userpref', '|');
	setFormSelected('userpref', 'userpref');
	setFormSelected('userColorpref', 'style');	
}

window.onunload = function(e) {
	var title = getActiveStyleSheet();
	createCookie("style", title, 365);
}

var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);
iceCookie('userpref', '|');
setFormSelected('userpref', 'userpref');
setFormSelected('userColorpref', 'style');