var openFs = new Object();
var blnLinksOpen = false;
var blnOpenMenu = false;

/* Functions that swaps images. */
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

/* Functions that handle preload. */
function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
   var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
   if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}


function popWindow( fileName, windowName, width, height )
{
	leftOffset = Math.round( ( screen.width - width ) / 2 );
	topOffset = Math.round( ( screen.height - height ) / 2 );
	window.open( fileName, windowName,'width=' + width + ',height=' + height + ',menubar=no,location=no,toolbar=no,left=' + leftOffset + ',top=' + topOffset );
}

function toggle(obj){
	var el = document.getElementById( obj );

	if (el.className == 'menuHiddenItems'){
		if (blnOpenMenu) {
			hide();
			blnLinksOpen = false;
			blnOpenMenu = false;
		}
		el.className = 'menuShownItems';
		openEl = el;
		blnOpenMenu = true;
	}
	else {
		el.className = 'menuHiddenItems';
		blnLinksOpen = false;
		blnOpenMenu = false;
	}
}

function hide(){
	if (openEl) {
		openEl.className = 'menuHiddenItems';
	}
}

function bodyOnClick(){
	if (blnLinksOpen) {
		hide();
		blnLinksOpen = false;
	} else {
		if (blnOpenMenu) {
			blnLinksOpen = true;
		}
	}
}

function scrollDivTimer( obj, scroll, speed )
{
	var el = document.getElementById( obj );
	if ( parseInt(el.style.top)-scroll < -(parseInt(el.offsetHeight)) )
	{
		el.style.top = '200px';
	}
	el.style.top = parseInt(el.style.top) - scroll + 'px';
}

function scrollDiv( obj, scroll, speed )
{
	if ( navigator.userAgent.match('iPhone') || navigator.userAgent.match('Nitro') || navigator.userAgent.match('Nintendo DSi') )
	{
		/* Do not enable scroller on iPhone/iPod touch, Nintendo DS or Nintendo DSi */
	}
	else
	{
		document.getElementById('messagesCitoyensContents').style.height = '200px';
		document.getElementById('messagesCitoyensScrollBox').style.top = '0px';
		var el = document.getElementById( obj );
		setInterval( 'scrollDivTimer("' + obj + '",' + scroll + ',' + speed + ')', speed );
	}
}



/* ----- Functions for stylesheet switcher ----- */

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;
}

document.onclick = function() {
	bodyOnClick();
}

window.onload = function( e )
{
	var cookie = readCookie( 'style' );
	var title = cookie ? cookie : getPreferredStyleSheet();
	setActiveStyleSheet( title );
}

window.onunload = function( e )
{
	var title = getActiveStyleSheet();
	createCookie( 'style', title, 365 );
}

var cookie = readCookie( 'style' );
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet( title );
