function setCookie(c_name,value,expiredays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate()+expiredays);
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}


function getCookie(c_name)
{
if (document.cookie.length>0)
  {
  c_start=document.cookie.indexOf(c_name + "=");
  if (c_start!=-1)
    { 
    c_start=c_start + c_name.length+1; 
    c_end=document.cookie.indexOf(";",c_start);
    if (c_end==-1) c_end=document.cookie.length;
    return unescape(document.cookie.substring(c_start,c_end));
    } 
  }
return "";
}


function checkCookie(newstyle)
{
stylesheet=getCookie('stylesheet');

if (stylesheet!=null && stylesheet!="")
	{	
		removejscssfile("/styles/default.css", "css");
		removejscssfile("/styles/TO.css", "css");
		removejscssfile("/styles/HV.css", "css");
		
		loadjscssfile("/styles/" + stylesheet, "css");
	}
	
if (newstyle!=null && newstyle!="")
	{
		setCookie('stylesheet',newstyle,1);
		
		removejscssfile("/styles/default.css", "css");
		removejscssfile("/styles/TO.css", "css");
		removejscssfile("/styles/HV.css", "css");
		
		loadjscssfile("/styles/" + newstyle, "css");	
	}
}


function checkCookieAfter(){
	stylesheet=getCookie('stylesheet');

if (stylesheet!=null && stylesheet!="")
	{		
		removejscssfile("/styles/default.css", "css");
		removejscssfile("/styles/TO.css", "css");
		removejscssfile("/styles/HV.css", "css");
		
		loadjscssfile("/styles/" + stylesheet, "css");
	}
}

checkCookieAfter()

/*-------------------------------------------------*/

function loadjscssfile(filename, filetype){

 if (filetype=="js"){ //if filename is a external JavaScript file
  var fileref=document.createElement('script')
  fileref.setAttribute("type","text/javascript")
  fileref.setAttribute("src", filename)
 }

 else if (filetype=="css"){ //if filename is an external CSS file
  var fileref=document.createElement("link")
  fileref.setAttribute("rel", "stylesheet")
  fileref.setAttribute("type", "text/css")
  fileref.setAttribute("href", filename)
  
  if(filename == '/Styles/print.css')
  	  {
		  fileref.setAttribute("media", "print");
	  }

  else
	{	
		fileref.setAttribute("media", "screen");
	}
 }

 if (typeof fileref!="undefined")
  document.getElementsByTagName("head")[0].appendChild(fileref)
}



function removejscssfile(filename, filetype){

 var targetelement=(filetype=="js")? "script" : (filetype=="css")? "link" : "none" //determine element type to create nodelist from
 var targetattr=(filetype=="js")? "src" : (filetype=="css")? "href" : "none" //determine corresponding attribute to test for
 var allsuspects=document.getElementsByTagName(targetelement)
 for (var i=allsuspects.length; i>=0; i--){ //search backwards within nodelist for matching elements to remove
  if (allsuspects[i] && allsuspects[i].getAttribute(targetattr)!=null && allsuspects[i].getAttribute(targetattr).indexOf(filename)!=-1)
   allsuspects[i].parentNode.removeChild(allsuspects[i]) //remove element by calling parentNode.removeChild()
 }
}


