

function getCookie(Name)
{ 
    var re=new RegExp(Name+"=[^;]+", "i"); //construct RE to search for target name/value pair
    if (document.cookie.match(re)) //if cookie found
        return document.cookie.match(re)[0].split("=")[1]; //return its value
    return null
}

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)) : expireDate.setDate(expireDate.getDate()-5);
    document.cookie = name+"="+value+"; expires="+expireDate.toGMTString()+"; path=/";
}

function deleteCookie(name)
{
    setCookie(name, "moot");
}

function setStylesheet(title)
{
    var i, cacheobj;
    for (i=0; (cacheobj=document.getElementsByTagName("link")[i]); i++)
    {
        if(cacheobj.getAttribute("rel").indexOf("style") != -1 && cacheobj.getAttribute("title"))
        {
            cacheobj.disabled = true;
            if(cacheobj.getAttribute("title") == title)
                cacheobj.disabled = false; //enable chosen style sheet
        }
    }
}

function chooseStyle(styletitle, days)
{
    if (document.getElementById)
    {
        setStylesheet(styletitle);
        setCookie("mysheet", styletitle, days);
    }
}

function indicateSelected(element)
{
    var i;
    if (selectedtitle!=null && (element.type==undefined || element.type=="select-one"))
    { //if element is a radio button or select menu
        var element=(element.type=="select-one") ? element.options : element;
        for (i=0; i<element.length; i++)
        {
            if (element[i].value==selectedtitle)
            { //if match found between form element value and cookie value
                if (element[i].tagName=="OPTION") //if this is a select menu
                    element[i].selected=true;
                else //else if it's a radio button
                    element[i].checked=true;
                break;
            }
        }
    }
}

var selectedtitle=getCookie("mysheet")
if (document.getElementById && selectedtitle!=null) //load user chosen style sheet if there is one stored
setStylesheet(selectedtitle)
