
/*
 *
 */

function swapBlock(id)
{
	div = document.getElementById('div_' + id);
	ancre = document.getElementById('ancre_' + id);

	
	if( div.style.display == 'none')
   {
	  div.style.display = 'block';	  
	  ancre.innerHTML = '[cacher]';
   }
   else		  
   {
     div.style.display = 'none';	  
	  ancre.innerHTML = '[+]';
   }
}



/*
 * addEvent function found at http://www.scottandrew.com/weblog/articles/cbs-events
 */
function addEvent(obj, evType, fn) {
	if (obj.addEventListener) {
		obj.addEventListener(evType, fn, true);
		return true;
	} else if (obj.attachEvent) {
		var r = obj.attachEvent("on"+evType, fn);
		return r;
	} else {
		return false;
	}
}

/*
 * createElement function found at http://simon.incutio.com/archive/2003/06/15/javascriptWithXML
 */
function createElement(element) {
	if (typeof document.createElementNS != 'undefined') {
		return document.createElementNS('http://www.w3.org/1999/xhtml', element);
	}
	if (typeof document.createElement != 'undefined') {
		return document.createElement(element);
	}
	return false;
}

function insertTop(obj) {
	// Create the two div elements needed for the top of the box
	d=createElement("div");
	d.className="bt"; // The outer div needs a class name
    d2=createElement("div");
    d.appendChild(d2);
	obj.insertBefore(d,obj.firstChild);
}

function insertBottom(obj) {
	// Create the two div elements needed for the bottom of the box
	d=createElement("div");
	d.className="bb"; // The outer div needs a class name
    d2=createElement("div");
    d.appendChild(d2);
	obj.appendChild(d);
}

function initBoitesDuType(type)
{
	// Find all div elements
	var divs = document.getElementsByTagName('div');
	var bca_divs = [];
	var s_test;

	s_test = new RegExp('\\b' + type +'\\b');
	for (var i = 0; i < divs.length; i++) {
	// Find all div elements with cbb in their class attribute while allowing for multiple class names

		
		if (s_test.test(divs[i].className))
		{
			bca_divs[bca_divs.length] = divs[i];
			}
	}

	// Loop through the found div elements
	var bca_centre_contenu;
	var bca_tout;
	var bca_haut;
	var bca_haut_gauche;
	var bca_haut_droite;
	var bca_bas;
	var bca_bas_gauche;
	var bca_bas_droite;
	var bca_centre;
	var bca_gauche;
	var bca_droite;

	for (var i = 0; i < bca_divs.length; i++)
	{
		// Save the original outer div for later
		bca_centre_contenu = bca_divs[i];

		// 	Create a new div, give it the original div's class attribute, and replace 'cbb' with 'cb'
		bca_tout = createElement('div');
		//bca_tout.className = bca_centre_contenu.className; 
		bca_tout.className = bca_centre_contenu.className.replace(type, type + '_bca');

	// Change the original div's class name and replace it with the new div
		bca_centre_contenu.className = 'bca_centre_contenu';
		bca_centre_contenu.parentNode.replaceChild(bca_tout, bca_centre_contenu);

      // Haut

		bca_haut = createElement('div');
		bca_haut.className = 'bca_haut ' + type + '_bca_haut';

		bca_haut_gauche = createElement('div');
		bca_haut_gauche.className = 'bca_haut_gauche ' + type + '_bca_haut_gauche';
		bca_haut_gauche.appendChild(bca_haut);

		bca_haut_droite = createElement('div');
		bca_haut_droite.className = 'bca_haut_droite ' + type + '_bca_haut_droite';
		bca_haut_droite.appendChild(bca_haut_gauche);

		bca_tout.appendChild(bca_haut_droite);



      // Milieu

		bca_centre = createElement('div');
		bca_centre.className = 'bca_centre ' + type + '_bca_centre';


		bca_gauche = createElement('div');
		bca_gauche.className = 'bca_gauche ' + type + '_bca_gauche';
		bca_gauche.appendChild(bca_centre);

		bca_droite = createElement('div');
		bca_droite.className = 'bca_droite ' + type + '_bca_droite';
		bca_droite.appendChild(bca_gauche);

		bca_tout.appendChild(bca_droite);




      // Bas

		bca_bas = createElement('div');
		bca_bas.className = 'bca_bas ' + type + '_bca_bas';

		bca_bas_gauche = createElement('div');
		bca_bas_gauche.className = 'bca_bas_gauche ' + type + '_bca_bas_gauche';
		bca_bas_gauche.appendChild(bca_bas);

		bca_bas_droite = createElement('div');
		bca_bas_droite.className = 'bca_bas_droite ' + type + '_bca_bas_droite';
		bca_bas_droite.appendChild(bca_bas_gauche);

		bca_centre.appendChild(bca_centre_contenu);
		bca_tout.appendChild(bca_bas_droite);

	}
}

function initBoites()
{
  var types = [ 'menuBoite', 'contenuBoite', 'navBoite' ];

  for( var i = 0;  i < types.length; i++) {
    initBoitesDuType(types[i]);				 
  }
}

if(document.getElementById && document.createTextNode)
{
	addEvent(window, 'load', initBoites);
}