var config = {
	strDefaultInterfaceDir	: "style/site/interface/",
	strDefaultCSSDir	: "style/site/css/",
	strDefaultJSDir		: "javascript/site/",
	strDefaultLang 		: "fr",
	strUrlBase			: document.getElementsByTagName('base')[0].href,
	strClose			: ['Fermer',				'Close'],
	strWaitingConfirm	: ['Confirmation attendue', 'Expecting confirmation'],
	strCancel			: ['Annuler', 'Cancel'],
	strConfirm			: ['Confirmer', 'Confirm'],
	strPrevious			: ["Pr&eacute;c&eacute;dent", "Previous"],
	strNext				: ["Suivant", "Next"],
	boolResizeAggregator: true
};

// inclusion des librairies indispensables au reste
loadJs("site", 	"prototype");
loadJs("site",	"scriptaculous");

loadJs("site",	"libForms");	// validation des formulaires
loadJs("site",	"jsCalendar");	// calendrier
loadJs("site",	"colorPicker");	// palette de couleurs

// lancement de l'admin. NB admin.js est chargé automatiquement
if (window.location.toString().match("admin.php") != null)
{
	loadJs("extranet", 	"admin");

	if(document.all)
	{
		loadJs('site', 'admin_ie');
	}
}
// ajout de la lib de correction de IE lt 7
//document.write('<!--[if lte IE 6]><script type="text/javascript" src="javascript/site/ie6_patches.js"></script><![endif]-->');

config.lang = document.getElementsByTagName('html')[0].getAttribute('lang') || config.strDefaultLang;
// on attribue la bonne langue
switch (config.lang.toLowerCase())
{
	case "fr": config.lang = 0; lang=0; break;
	case "en": config.lang = 1; lang=1; break;
	default	: "fr";
}

function loadCss (strModuleName, strFileName)
{
	if(strFileName.match(".css") !== false)
	{
		strFileName = strFileName.split(".css")[0];
	}
	document.write ("<style type='text/css' media='screen'>@import url("+config.strUrlBase+"style/"+strModuleName+"/css/"+strFileName+".css);</style>\n");
}
function loadJs (strModuleName, strFileName)
{
	if(strFileName.match(".js") !== false)
	{
		strFileName = strFileName.split(".js")[0];
	}
	document.write ("<script type='text/javascript' src='"+config.strUrlBase+"javascript/"+strModuleName+"/"+strFileName+".js'></script>\n");
}

var actibox = {
	// actibox.load est chargé par admin.js. En effet, si on le fait avant Protoype n'est pas chargé.
	load	: function ()
	{	// on vérifie si la librairie Prototype est chargée. Si non, on envoie une erreur
		if(typeof Prototype == "undefined")
		{
			throw("prototype doit être chargé AVANT d'utiliser les librairies ActiBox");
		}

		// on redimensionne les colonnes de l'aggreg
		if (config.boolResizeAggregator && $("container") && $("container").getElementsByClassName('aggregator')[0])
		{
			$("container").getElementsByClassName('aggregator')[0].immediateDescendants().each( function (objLine)
			{	// on va récupérer la + haute des zones de la ligne
				var intGreatestHeight = 0;
				objLine.immediateDescendants().each( function (objColumn)
				{
					intGreatestHeight = Math.max (intGreatestHeight, objColumn.getHeight());
				});
				// on resize la hauteur de toutes les zones pour qu'elles soient harmonisées
				objLine.immediateDescendants().each( function (objColumn)
				{
					if(objColumn.tagName.toLowerCase() == "div")
					{
						objColumn.style.height	= intGreatestHeight+"px";
						// on resize aussi les div.zone pour que la mise en page soit plus sympa en fonction de ses enfants
						if (objColumn.down('div'))
						{
							objColumn.down('div').style.height = intGreatestHeight-30+"px";
						}
					}
				});
			});
		}
	}
};