function setCookie(name, value, days) {
var expireDate = new Date();
//set "expstring" to either future or past date, to set or delete cookie, respectively
var expstring=(typeof days!="undefined")? expireDate.setDate(expireDate.getDate()+parseInt(days,10)) : expireDate.setDate(expireDate.getDate()-5);
document.cookie = name+"="+value+"; expires="+expireDate.toGMTString()+"; path=/";
}

function deleteCookie(name){
setCookie(name, "moot");
}


function setStylesheet(title, randomize){ //Main stylesheet switcher function. Second parameter if defined causes a random alternate stylesheet (including none) to be enabled
var i, cacheobj, altsheets=[""];
for(i=0; (cacheobj=document.getElementsByTagName("link")[i]); i++) {
if(cacheobj.getAttribute("rel").toLowerCase()=="alternate stylesheet" && cacheobj.getAttribute("title"))  //if this is an alternate stylesheet with title
{cacheobj.disabled = true;
altsheets.push(cacheobj); //store reference to alt stylesheets inside array
if(cacheobj.getAttribute("title") == title)
 //enable alternate stylesheet with title that matches parameter
{cacheobj.disabled = false;} 
//enable chosen style sheet
}
}
if (typeof randomize!="undefined"){ //if second paramter is defined, randomly enable an alt style sheet (includes non)
var randomnumber=Math.floor(Math.random()*altsheets.length);
altsheets[randomnumber].disabled=false;}
return (typeof randomize!="undefined" && altsheets[randomnumber]!=="")? altsheets[randomnumber].getAttribute("title") : "" ;
//if in "random" mode, return "title" of randomly enabled alt stylesheet
}

function chooseStyle(styletitle, days){ //Interface function to switch style sheets plus save "title" attr of selected stylesheet to cookie
if (document.getElementById){
setStylesheet(styletitle);
setCookie("mysheet", styletitle, days);
}
}
