var frameSelection;//frame contenant la page affichant le panier de sélection
var frameOngletNavigation;//frame contenant les onglets de navigation

/*Renseigne la variable frameSelection*/
function TrouverFrameSelection(frame)
{
	//if(frame.document.getElementById('frmSetCol2')!=null)
	//{
		//frameSelection=frame.document.getElementById('frmSetCol2').document.MaSelection;
		//frameSelection=top.document.frmSetAll.frmSetCol.frmSetRow.frmSetCol2.MaSelection;
		
	//}
	//else
	//{
	//	for(i=0;i<frame.frames.length;i++)
	//		TrouverFrameSelection(frame.frames[i]);
	//}
	
	if(frame.location.href.indexOf('/Selection.aspx')>=0)
	{
	alert('TrouverFrameSelection 1');
		frameSelection=frame;
	}
	else
	{
		for(i=0;i<frame.frames.length;i++)
		{
			TrouverFrameSelection(frame.frames[i]);
			}
	}
}
/*Renseigne la variable frameOngletNavigation*/
function TrouverFrameOngletNavigation(frame)
{
	if(frame.frames!=null)
	{
		for(i=0;i<frame.frames.length;i++)
			if(frame.frames[i].location.href.indexOf('/OngletsNavigation.aspx')>=0)
			{
				frameOngletNavigation=frame.frames[i];
				return;
			}
		if(frame.parent!=null)
		{
			TrouverFrameOngletNavigation(frame.parent);
		}
	}
	else if(frame.parent!=null)
	{
		TrouverFrameOngletNavigation(frame.parent);
	}
	else if(frame.opener!=null)
	{
		TrouverFrameOngletNavigation(frame.opener);
	}
}

/* Ouverture de l'assistant de selection de l'annuaire 
		guid : guid de l'assistant.
		idType : identifiant du type des objets à selectionner.
		selectionMultiple : 0 ou 1. Indique si on est en selection simple (0) ou en selection multiple (1).
		idAnnuaire : Identifiant de l'annuaire courant.
		IdTypeAnnuaire : Identifiant du Type Annuaire.
*/
function AfficherAssistantSelection(strGuid, idType, selectionMultiple, idAnnuaire, IdTypeAnnuaire,HiddenCtrl)
{
	var url = '/OpDotNet/Eplug/Annuaire/Navigation/Navigation.aspx?InpDes=' + HiddenCtrl + '&FctFin=AddPersOrgToRel';

	url = url + '&Wizard=' + strGuid + '&IdTypeObjetNav=' + idType;
	url = url + '&IdAnn=' + idAnnuaire + '&IdTypeAnnuaire=' + IdTypeAnnuaire;

	if(selectionMultiple==0)	{	
	    url = url + '&Multip=NON';
	}
	else {
	    url = url + '&Multip=OUI';
	}

	//Ouverture de la fenêtre.
	OpenW(url, 'Selection' + strGuid.replace(/-/g, '_'), 0, 0);
	//OpenW(url','Selectionguid.replace('-', '_'),0,0,);
}

/*Ajoute un objet à la sélection*/
function AjouterSelection(idObjet, idType)
{
	if(frameSelection==null)
	{
		TrouverFrameSelection(self.top);
		if(frameSelection==null&&self.top.opener!=null)
			TrouverFrameSelection(self.top.opener.parent);
	}
	if(frameSelection!=null)
	{
	alert('MAJ => idObjet=' + idObjet + '   idType=' + idType);
		frameSelection.location.href="/OpDotNet/Eplug/Annuaire/Navigation/Selection.aspx?idObjet=" + idObjet + "&idType=" + idType;
	}
}
/*Recharge l'ensemble de l'interface de l'annuaire*/
function RefreshInterfaceAnnuaire(parametres)
{

	if(frameOngletNavigation==null)
	{
		TrouverFrameOngletNavigation(self);
	}
	
	if(frameOngletNavigation!=null)
	{
		var url="/OpDotNet/Eplug/Annuaire/Navigation/OngletsNavigation.aspx";
		if(parametres!=null)
		{
			url+='?'+parametres;
		}
		frameOngletNavigation.location.href=url;
	}
}
/*Retourne la valeur d'un paramètre de l'url*/
function GetParameter(name) {
   var url = window.location.href;
   var paramsStart = url.indexOf("?");

   if(paramsStart != -1){

      var paramString = url.substr(paramsStart + 1);
      var tokenStart = paramString.indexOf(name);

      if(tokenStart != -1){

         paramToEnd = paramString.substr(tokenStart + name.length + 1);
         var delimiterPos = paramToEnd.indexOf("&amp;");

         if(delimiterPos == -1){
            return paramToEnd;
         }
         else {
            return paramToEnd.substr(0, delimiterPos);
         }
      }
   }
}
/*----------------------------------------
	Champs calculés
----------------------------------------*/
var chpsCalculesValidation=new Array();
//Permet aux champs calculés d'interdire un postback.
function ValidationChampsCalcules()
{
	var valider=true;
	for (var i=0; i<chpsCalculesValidation.length; i++)
	{
		valider=valider&&chpsCalculesValidation[i]();
	}			
	return valider;
}

var ongletStandardOnLoadFct=new Array();
//Lancement de fonctions au chargement d'un onglet standard
function OngletStandardOnLoad()
{
	for (var i=0; i<ongletStandardOnLoadFct.length; i++)
	{
		ongletStandardOnLoadFct[i]();
	}	
}
/*----------------------------------------
	divers
----------------------------------------*/
//place le focus sur la première zone de saisie de la page.
function SetFocusPremier()
{
	try
	{
		for (var i=0;i<document.Form1.elements.length;i++)
		{
			var elt=document.Form1.elements[i];
			if(elt.type=="text"||elt.type=="radio"||elt.type=="textaera"||elt.type=="select-one"||elt.type=="checkbox")
			{
				elt.focus();
				return true;
			}
		}
	}
	catch(ex)
	{}
	return true;
}
