// Initial settings
var prefsLoaded = false;
var currentPLDisplay = 'none';
var currentMainDisplay = 'block';

// Attach a function to the onLoad event
function addLoadEvent(func)
{
  var oldonload = window.onload;
  if (typeof window.onload != 'function')
  { window.onload = func; }
  else
  { window.onload = function() { oldonload(); func(); } }
}

/*
Avoid style-change flicker (every visible element must be contained within
a div with id "container"
*/
function showContainer()
{ document.getElementById('container').style.display = 'block'; }

// Toggle/Set display of maincontent div (only for thin style)
function toggleMainContentDisplay()
{
	switch(currentMainDisplay)
	{
		case 'none':
			setMainContentDisplay('block');
			break;
		case 'block':
			setMainContentDisplay('none');
			break;
		default:
	}
}
function setMainContentDisplay(displayStyle)
{
	var mainContentPanel = (document.getElementById) ? document.getElementById('maincontent') : document.all('maincontent');
	if(mainContentPanel)
	{
		mainContentPanel.style.display = displayStyle;
		currentMainDisplay = displayStyle;
	}
}

// Toggle/Set display of pagelinks div
function togglePageLinksDisplay()
{
	switch(currentPLDisplay)
	{
		case 'none':
			setPageLinkDisplay('block');
			break;
		case 'block':
			setPageLinkDisplay('none');
			break;
		default:
	}
}
function setPageLinkDisplay(displayStyle)
{
	var pageLinksPanel = (document.getElementById) ? document.getElementById('pagelinkspanel') : document.all('pagelinkspanel');
	if(pageLinksPanel)
	{
		pageLinksPanel.style.display = displayStyle;
		currentPLDisplay = displayStyle;
	}
}


// Thieved from artechnica.com ui code
addLoadEvent(setUserOptions);
window.onunload = saveSettings;

function setUserOptions()
{
	if(!prefsLoaded)
	{
		// pagelinks display
		cookie = readCookie('pageLinks');
		if(cookie)
		{
			currentPLDisplay = cookie;
			setPageLinkDisplay(currentPLDisplay);
		}
		
		prefsLoaded = true;
	}
	//showContainer();
}

function saveSettings()
{
  createCookie('pageLinks', currentPLDisplay, 30);
}

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;
}