// Nouvelle Gestion des blocs DIV
// 23/04/2007

GlocArr  = new Array ();
t_stand = 1000;
titre = 25;
titreMetier = 15;
marge = 10;

blocs = new Array("colIntranet1", "colIntranet2", "colIntranet3");
	


	
GlocArr[0] = new Array("g2c_texteMetierImportant",
					   "g2c_texteHydrauEnv",
					   "g2c_texteUrbaAmenag",
					   "g2c_texteGestServPub",
					   "g2c_texteMarchesPub",
					   "g2c_texteCartajour"); 

GlocArr[1] = new Array("g2c_texteIntrAgence", 
					   "g2c_texteActuPratique"); 

GlocArr[2] = new Array("g2c_texteForumGeneral", 
				 	   "g2c_texteForumChefs", 
					   "g2c_texteForumCE", 
					   "g2c_texteNews"); 

function AddAppName(obj, taille, temoin, total, bnBlocs, id)
{
	var d = document.getElementById(obj);
	var myHauteur = 0;
	var tmpSupp = 0;

	if (d.offsetHeight){				
		myHauteur = d.offsetHeight;
	}			
	else if(d.style.pixelHeight){
		myHauteur = d.style.pixelHeight;
	}	
	
    val = ((taille * (myHauteur - temoin)) / total) + temoin;
	
	d.style.height =  val + "px"; // Supp des Blcs
	// Affiche ScrollBar
	d.style.overflow = "auto";
}

function Resizing_ECols(Ttemoin, Tbloc, id)
{
	tmpArray = new Array ();
	// Je vérie les blocs Présents
	y=0; nb=0; v=0;
	tmpDiff = 0;
	
	for (x=0; x<=GlocArr[id].length-1; x++)
	{
		if (document.getElementById(GlocArr[id][x]))
		{
			tmpArray[y] = GlocArr[id][x];
			y++;
		} 
	}
	
	TailleDiff = Ttemoin - (OHNavigAppname(Tbloc) + (marge*(y-1))); // supprime la dernière marge
	
	for (z=0; z<=tmpArray.length-1; z++)
	{
		document.getElementById(tmpArray[z]).style.height = OHNavigAppname(tmpArray[z]) + (TailleDiff/tmpArray.length) + "px"; 
		// Sup des blocs
	}
	
}

// Resizer au prorata
function Resizing_PCols (Ttemoin, Tbloc, id)
{
	tmpArray = new Array ();
	// Je vérie les blocs Présents
	y=0; nb=0; v=0;
	tmpDiff = 0;
	
	for (x=0; x<=GlocArr[id].length-1; x++)
	{
		if (document.getElementById(GlocArr[id][x]))
		{
			tmpArray[y] = GlocArr[id][x];
			if ((GlocArr[id][x].indexOf("g2c_texteForum") != -1) 
			&& (GlocArr[id][x] != "g2c_texteForumGeneral" ))
			{ tmpDiff += 15 + marge; v++;}
			else
			{ nb++; }
			y++;
		} 
	}
	
	// alert(tmpDiff);
	
	// alert(y + "\n" + nb + "\n" + tmpDiff);
	
	// J'ai définit les blocs de la colonnes présents
	// Pour chaque bocs je regarde la taille de celui ci et je redimensionne au prorata
	Htemoin = (Ttemoin / tmpArray.length);
	
	var strRedim = "";
	
	if (id != 1)
	{
		nbtitre = titre*nb;
		nbmarge = marge*(nb);
		
		tmpDiff += nbtitre + nbmarge;
	}
	else
	{
		nbtitre = titre + (titreMetier*y);
		tmpDiff += nbtitre;
	}
	
	var res = Ttemoin - tmpDiff;
	var tot = 0;
	
	// Pour chaque bloc Trouvés vérifier si au dessus de la hauteur temoin 
	for (z=0; z<=tmpArray.length-1; z++)
	{
		if (OHNavigAppname(tmpArray[z]) > Htemoin)
		{
			res -= Htemoin;
			strRedim += tmpArray[z] + "¤¤"; 
			tot += (OHNavigAppname(tmpArray[z]) - Htemoin);
		}
		else
		{
			res -= OHNavigAppname(tmpArray[z]);
		}
	}
	strRedim = strRedim.substring(0, (strRedim.length-2));
	// Résultat et Bloc trouvées
	// Traitement
	
	MesBlocs = strRedim.split("¤¤");
	
	for (n=0; n <= MesBlocs.length-1; n++)
	{
		AddAppName(MesBlocs[n], res, Htemoin, tot, MesBlocs.length, id);
	}
	
}

function OHNavigAppname(obj)
{
	var myHauteur = 0; // Initialisation de la hauteur
	// Vérification du navigateur client
	   var d = document.getElementById(obj);

	if(d.offsetHeight){				
		myHauteur = d.offsetHeight;
	}			
	else if(d.style.pixelHeight){
		myHauteur = d.style.pixelHeight;
	}
	return myHauteur;
}

function AutoResize()
{
	
	// Récupération du nombre de colonnes Intranet trouvées dans la page
	nb = 0;
	ColsPrs = new Array();
	
	
	for (i=0; i<= blocs.length -1; i++)
	{
		if (document.getElementById(blocs[i]))
		{
			if (OHNavigAppname(blocs[i]) && OHNavigAppname(blocs[i]) > 0)
			{
				ColsPrs[nb] = blocs[i];
				nb++;	
			}
		}
	}
	
	// On connait le nombre de colonnes présents!!
	// Si 1 ne rien faire
	strAdjust = "";
	if (ColsPrs.length > 0)
	{
	// alert(OHNavigAppname("colIntranet1") + "\n" + OHNavigAppname("colIntranet2") + "\n" + OHNavigAppname("colIntranet3"));
		// Traitement des colonnes
		   // Premiere colonne = Colonne Témoin
		   
		      //t_stand = parseInt(screen.height - 200); // - xx : Correspond à le nb pixel entre les cols et le haut de page
			  
			 for(j=0; j<=ColsPrs.length-1; j++)
			  {
				  // Si Hauteur supérieur au témoin
				  
				  if (OHNavigAppname(ColsPrs[j]) > t_stand)
				  {
					  Resizing_PCols(t_stand, ColsPrs[j], j);
				  }
				  else if (OHNavigAppname(ColsPrs[j]) < t_stand)
				  {
					  Resizing_ECols(t_stand, ColsPrs[j], j);
				  }
			  }
	// alert(OHNavigAppname("colIntranet1") + "\n" + OHNavigAppname("colIntranet2") + "\n" + OHNavigAppname("colIntranet3"));
	}
}
 
 
