// le code de la fonction addEvent est cree dans code PublishingLayoutPageBase
//addEvent(document.getElementById('myBody'), 'click', function(evt){return RedirigerSiteExterne((window.event) ? window.event : evt);});

//La fonction addEvent est dans le ficher rechercher.js
 
function RedirigerSiteExterne(e)
{
 var adrSource;
 var popup = "true";
 
 //Le e.Target est utilisé lorsque le browser supporte le DOM2
 //Le e.srcElement existe uniquement du côté de IE
 var eventSource = (e.target ? e.target : e.srcElement);
  
 var returnValue = true;
 
 //Vérifie si le tag de l'évènement est bien un <A HREF=...>, un élément AREA ou une image incluse dans un Anchor
 if(eventSource.tagName == "A" || eventSource.tagName == "AREA" || ((eventSource.tagName == "STRONG" || eventSource.tagName == "IMG") && eventSource.parentNode.tagName == "A"))
 {
  //Prends la source du HREF
  if((eventSource.tagName == "STRONG" || eventSource.tagName == "IMG") && eventSource.parentNode.tagName == "A")  
  {
   adrSource = eventSource.parentNode.href;
  }
  else
  {
   adrSource = eventSource.href;
  }
 
  //Si le lien pointe sur la recherche de MondoSearch, on n'intercepte pas le clique
  //if (adrSource == '' || adrSource.indexOf('MsmGo.exe') != -1)
  //   return true;

  if(!DeterminerSiLienInterne(adrSource))
  {
    lePopup = window.open('','_blank');
    lePopup.document.write('<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title>Sortie du site</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" /></head><frameset rows="85,*"><frame SRC="' + lienPageRedirection + '?URL=' + escape(adrSource) + '" NAME="header" scrolling="no" marginheight="0" marginwidth="0"/><frame scrolling="AUTO"  name="main" SRC="' + adrSource + '"/></frameset></html>');
    lePopup.document.close();
 
    returnValue = false;
  }
  else
  {
    return true;
  }
 }
 
 //If the Enter is handled, we must prevent event from bubbling
 if (!returnValue)
 {
  e.cancelBubble = true;
  e.returnValue=false;
  e.cancel = true;
 
  if (e.stopPropagation) 
  {
   e.stopPropagation();
  }
  if (e.preventDefault)
  {
   e.preventDefault(); // DOM style  
  }
 }
}

//Ajoute l'image indiquant un site externe
//anchors: les controls de la page de type 'A' : document.getElementsByTagName('A','href')
//urlImage: URL de l'image indiquant un site externe
//texteTitle: message a mettre dans le tag title pour indiquer un lien externe
function AjouterImageSurLienExterne(anchors, urlImage, texteTitle)
{
  for(var i = 0; i < anchors.length; i++)
  {
    //Verifier si le control a un control enfant de type image, si oui, ne pas afficher l`image
    if(!VerifierControlSiEnfantImage(anchors[i]))
    {
      if(!DeterminerSiLienInterne(anchors[i].href))
      {
        anchors[i].innerHTML = anchors[i].innerHTML + '<img class="lien_externe" src="' + urlImage + '" title="' + texteTitle + '" alt="' + texteTitle + '"></img>';
      }
    }
  }
}

//Verifie si le control possede un control enfant de type image
//anchors: control a verifier s`il possede
function VerifierControlSiEnfantImage(anchors)
{
  	if(anchors.childNodes.length > 0)
  	{
  	  //boucle control enfant
  	  for(var i = 0; i < anchors.childNodes.length; i++)
  	  {
  	    if(anchors.childNodes[i].tagName=="IMG")
  	    {
  	      //Image trouvee
	 	  return true;
	 	}
  	  }
  	}
  	//Pas d'image enfant
  	return false;
}

//Determine si le lien est un site interne
//adrSource: URL (href) du lien
function DeterminerSiLienInterne(adrSource)
{
  //Ne pas tenir compte des href vides, exemple dans le cas d'une balise de positionnement
  if (adrSource == '')
    return true;
    
  //Ne pas tenir compte de javascript: ce qui inclut javascript:void(0) 
  if(adrSource.indexOf('javascript:') == 0)
  {
    return true;
  }
  //Ne pas tenir compte de mailto:  
  if(adrSource.indexOf('mailto:') == 0)
  {
    return true;
  }
  
  // listeSitesInternes est cree dans code PublishingLayoutPageBase
  for (var i = 0 ; i < listeSitesInternes.length; i++)
  {  
    var t = listeSitesInternes[i];
    if (adrSource.indexOf(t) >= 0)
    {
     return true;
    }
  }
  return false;
}

// DESCRIPTION :
//      Function permettant l'ouverture de la fenêtre ClicSEQUR.
// REMARQUE :
//      Les paramètres du window.open doivent demeurer les mêmes en tout temps.
//      Le paramètre DAT ne doit jamais être modifié.
//      Le nom de la fenêtre doit ABSOLUMENT commencer par "MRQ..." comme dans le cas actuel 'MRQ_Portail_Externe'
//
// EXEMPLE D'UTILISATION :
//      Dans la page des liens "services en ligne".  Le lien suivant vers ClicSEQUR
//      <a href="javascript:void(0);" onclick="ouvrirMFA();"> 
//          Pour vous inscrire aux services &eacute;lectroniques du minist&egrave;re de la Famille et des A&icirc;n&eacute;s, cliquez ici.
//      </a>
function ouvrirMFA()
{
	var hwnd;
	hwnd = window.open('https://www.services.mrq.gouv.qc.ca/web7aexterne/T1/UT/Authlm/IdentificationUtilisateur.aspx?DAT=PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiID8*DQo8UmVxdCB4bWxucz0iaHR0cDovL3d3dy5tcnEuZ291di5xYy5jYS9HMUIvMDQxMTE5MDAvQXV0aGVudGlmaWNhdGlvbiI*DQoJPEVudD4NCgkJPENvbnR4U2Vzbj4NCgkJCTxQYXJ0biBJZFBhcnRuPSJNUlEiIElkTG9nY2w9Ik02NzdBOTNCLTQ4QkMtRDA2Ni04OVY1LTkwN0JGNkIyNTY0MyIgLz4NCgkJCTxTZXJ2YyBDb2RTZXJ2Yz0iUzAwMTAwIiBOb1ZlcnNuU2VydmM9IjUuMTEuMTguMCIgLz4NCgkJCTxEb3NyIC8*DQoJCTwvQ29udHhTZXNuPg0KCTwvRW50Pg0KCTxDb3Jwcz4NCgk8QXV0aG5fSU4gQ29kTGFuZz0iRiIgTGllbkF1dGhuQ2xpY1Jldm49Ik1SUV9BQ0NFU0VOVFJFUFJJU0UiPg0KCQk8UmVkcmNBY3RuQXV0aG4gVHlwUmVkcmM9IlBvcnRsIiBWYWxyPSJFbnRyZXByaXNlIiBSZXRybkRvbnM9ImZhbHNlIj48L1JlZHJjQWN0bkF1dGhuPg0KCQk8UmVkcmNBY3RuQW5ubHIgVHlwUmVkcmM9IlVybCIgVmFscj0iaHR0cHM6Ly93d3cuc2VydmljZXMubXJxLmdvdXYucWMuY2EvV2ViN2FFeHRlcm5lL1QxL1VUL0F1dGhsbS9JZGVudGlmaWNhdGlvblV0aWxpc2F0ZXVyLmFzcHgiIFJldHJuRG9ucz0iZmFsc2UiPjwvUmVkcmNBY3RuQW5ubHI*DQoJPC9BdXRobl9JTj4JDQoJPC9Db3Jwcz4NCjwvUmVxdD4_&Clng=F', 'MRQ_Portail_Externe', 'width=800,height=600,resizable=yes,scrollbars=yes,status=yes,menubar=yes,location=yes,top=0,left=0');
	
}

// DESCRIPTION
//      Fenêtre d'ouverture de GDF
function ouvrirFenetre()
{
    var url;
   	url = 'https://extranet.mfa.gouv.qc.ca/GDF/'
	return window.open(url, "GDF","width=1024px,height=768px,resizable=yes,menubar=no,scrollbars=yes,location=no,status=no,titlebar=no,toolbar=no,directories=no,location=no", true);        
}
