var insidemenu = false;
var insidesubmenu = false;
var subopened = 0;
var x = 0;
var y = 0;
var ie6 = document.all || document.getElementById;
var ns4 = document.layers;
var menuptr = new Array;
var xmlhttp;
var xmlhttp2;

// Install mouse event driver

if(ns4)	document.captureEvents(Event.MOUSEMOVE);
document.onmousemove=mouseCoord;

// Catch mouse coords;

function mouseCoord(e)
{
 x=0;
 y=0;

 if(ns4)
 {
  x=e.pageX;
  y=e.pageY;
 }

 if(ie6 && document.all)
 {
  x=event.x;
  y=event.y;
 }

 if(ie6 && !document.all)
 {
  x=e.pageX;
  y=e.pageY;
 }

hidemenu();
}


function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1) 
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }

  function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }

/******************************/


var menu1;
var menu2;
var submenu1;
var node;


function init()
{


var obj = document.getElementById('actu');
obj.style.left = findPosX(document.getElementById('leftcol')) + 60 + "px";
obj.style.top = findPosY(document.getElementById('leftcol')) + 190 + "px";



menu1 = new menu(findPosX(document.getElementById('ap')),findPosY(document.getElementById('ap')) + 20);

/****************** PRESENTATION *************/

node = menu1.addNode("Pr&eacute;sentation",                         	"loadContent('menu_presentation.ctt', 'menu_patient.ctt')")
submenu1 = node.addChild(400,55)
submenu1.addNode("Les services de soins",                              	"loadContent('soins.ctt', 'menu_organisation.ctt')")
submenu1.addNode("Histoire",                                        	"loadContent('historique.ctt', 'menu_patient.ctt')")
submenu1.addNode("Structures",                                       	"loadContent('structures.ctt', 'menu_patient.ctt')")
submenu1.addNode("Organisation", 					"loadContent('menu_organisation.ctt', 'menu_patient.ctt')")
submenu1.addNode("L'h&ocirc;pital en chiffres", 		    	"loadContent('menu_chiffres.ctt', 'menu_patient.ctt')")
submenu1.addNode("Nos plus", 						"loadContent('nosplus.ctt', 'menu_patient.ctt')") 
submenu1.addNode("Vivre &agrave; Libourne", 				"jumpTo('http://www.ville-libourne.fr')")


/****************** VOTRE HOSPITALISATION *************/

node = menu1.addNode("Votre hospitalisation", "loadContent('menu_admission.ctt', 'menu_patient.ctt')")


submenu1 = node.addChild(370,85)
submenu1.addNode("L'admission", 					"loadContent('admission.ctt', 'menu_patient.ctt')")
submenu1.addNode("Votre s&eacute;jour", 				"loadContent('sejour.ctt', 'menu_patient.ctt')")
submenu1.addNode("Vos droits", 						"loadContent('vosdroits.ctt', 'menu_patient.ctt')")
submenu1.addNode("Les tarifs des prestations", 				"loadPDF('PDF/hospitalisation-tarifs.pdf')")
submenu1.addNode("Le questionnaire de sortie", 				"loadContent('historique.ctt', 'menu_patient.ctt')")
submenu1.addNode("Le livret d'accueil du patient hospitalis&eacute;", 	"loadContent('livretaccueil.ctt', 'menu_patient.ctt')")

// submenu1.addNode("Le livret d'accueil du patient hospitalis&eacute; (anglais PDF)", "loadContent('historique.ctt', 'menu_patient.ctt')")
// submenu1.addNode("Le livret d'accueil du patient hospitalis&eacute; (arabe PDF)", "loadContent('historique.ctt', 'menu_patient.ctt')")
// submenu1.addNode("Le livret d'accueil du patient hospitalis&eacute; (espagnol PDF)", "loadContent('historique.ctt', 'menu_patient.ctt')")

/****************** EXTERNE *************/

node = menu1.addNode("Consultations externes", "loadContent('consult.ctt', '')")

/****************** EHPAD *************/

node = menu1.addNode("EHPAD", 						"loadContent('menu_ehpad.ctt', 'menu_patient.ctt')")
submenu1 = node.addChild(400,65)



// node = menu1.addNode("Pr&eacutevention &amp; sant&eacute publique", "loadContent('historique.ctt', 'menu_patient.ctt')")

/****************** DQGR *************/

node = menu1.addNode("Qualit&eacute;, hygi&egrave;ne, gestion des risques", 	"loadContent('menu_douleur.ctt', 'menu_patient.ctt')")
submenu1 = node.addChild(400,110)
submenu1.addNode("Lutte contre la douleur", 					"loadContent('douleur.ctt', 'menu_patient.ctt')")
submenu1.addNode("Lutte contre les infections nosocomiales",			"loadContent('clin.ctt', 'menu_patient.ctt')")
submenu1.addNode("Qualit&eacute; et gestion des risques", 			"loadContent('qualite.ctt', 'menu_patient.ctt')")
submenu1.addNode("Qualit&eacute; et gestion des risques", 			"loadContent('qualite-amelioration.ctt', 'menu_patient.ctt')")
submenu1.addNode("Dons d'organes et de tissus", 				"loadContent('donorgane.ctt', 'menu_patient.ctt')")


/****************** SANTE *************/

node = menu1.addNode("Liens sant&eacute;", 				"loadContent('menu_sante.ctt', 'menu_patient.ctt')")
// submenu1 = node.addChild(400,115)
// submenu1.addNode("H&ocirc;pital.fr", 				"jumpTo('http://www.hopital.fr')")
// submenu1.addNode("CPAM", 						"jumpTo('http://www.ameli.fr')")
// submenu1.addNode("MSA", 						"jumpTo('http://www.msa33.fr')")
// submenu1.addNode("CAF", 						"jumpTo('http://www.gironde.caf.fr')")
// submenu1.addNode("DDASS", 						"jumpTo('http://aquitaine.sante.gouv.fr')")
// submenu1.addNode("Conseil G&eacute;n&eacute;ral", 			"jumpTo('http://www.cg33.fr')")
// submenu1.addNode("Conseil R&eacute;gional", 				"jumpTo('http://aquitaine.fr')")

























/****************** SECOND MENU *******************/


menu2 = new menu(findPosX(document.getElementById('aps')),findPosY(document.getElementById('aps')) + 20)
node = menu2.addNode("Pr&eacute;sentation",                         	"loadContent('menu_presentation.ctt', 'menu_pro.ctt')")
submenu1 = node.addChild(400,55)
submenu1.addNode("Les services de soins",                              	"loadContent('soins.ctt', 'menu_organisation.ctt')")
submenu1.addNode("Histoire",                                        	"loadContent('historique.ctt', 'menu_pro.ctt')")
submenu1.addNode("Structures",                                       	"loadContent('structures.ctt', 'menu_pro.ctt')")
submenu1.addNode("Organisation", 					"loadContent('menu_organisation.ctt', 'menu_pro.ctt')")
submenu1.addNode("L'h&ocirc;pital en chiffres", 		    	"loadContent('menu_chiffres.ctt', 'menu_pro.ctt')")
submenu1.addNode("Nos plus", 						"loadContent('nosplus.ctt', 'menu_pro.ctt')")
submenu1.addNode("Vivre &agrave; Libourne", 				"jumpTo('http://www.ville-libourne.fr')")


node = menu2.addNode("Le r&eacute;seau Ville-H&ocirc;pital", "loadContent('menu_villehop.ctt', 'menu_pro.ctt')")
submenu1 = node.addChild(550,105)
submenu1.addNode("Pr&eacute;sentation g&eacute;n&eacute;rale", "jumpTo('PDF/2007-reseau-communaute-sante-ville-hopital.pdf')")
submenu1.addNode("Le d&eacute;pliant d'information du patient", "jumpTo('PDF/nos-plus-reseau-ville-hopital.pdf')")
submenu1.addNode("Acc&eacuteder au portail du r&eacute;seau", "jumpTo('http://www.sante-valdedordogne.com')")



node = menu2.addNode("Qualit&eacute;, hygi&egrave;ne, gestion des risques", "loadContent('menu_douleur.ctt', 'menu_pro.ctt')")
submenu1 = node.addChild(550,110)
submenu1.addNode("Lutte contre la douleur", 					"loadContent('douleur.ctt', 'menu_pro.ctt')")
submenu1.addNode("Lutte contre les infections nosocomiales",			"loadContent('clin.ctt', 'menu_pro.ctt')")
submenu1.addNode("Gestion des risques li&eacute;s aux soins", 			"loadContent('qualite.ctt', 'menu_pro.ctt')")
submenu1.addNode("Qualit&eacute; et gestion des risques", 			"loadContent('qualite-amelioration.ctt', 'menu_pro.ctt')")
submenu1.addNode("Dons d'organes et de tissus", 				"loadContent('donorgane.ctt', 'menu_pro.ctt')")

node = menu2.addNode("Les internes", "")
submenu1 = node.addChild(550,120)
submenu1.addNode("Le livret d'accueil des internes (PDF)", "jumpTo('PDF/livret-interne.pdf')")












/****************** TROISIEME MENU *******************/


menu3 = new menu(findPosX(document.getElementById('aap')),findPosY(document.getElementById('aap')) + 20)
node = menu3.addNode("Pr&eacute;sentation", "loadContent('historique.ctt', 'menu_offres.ctt')")
submenu1 = node.addChild(400,55)
submenu1.addNode("Les services de soins",                              	"loadContent('soins.ctt', 'menu_organisation.ctt')")
submenu1.addNode("Histoire",                                        	"loadContent('historique.ctt', 'menu_offres.ctt')")
submenu1.addNode("Structures",                                       	"loadContent('structures.ctt', 'menu_offres.ctt')")
submenu1.addNode("Organisation", 					"loadContent('menu_organisation.ctt', 'menu_offres.ctt')")
submenu1.addNode("L'h&ocirc;pital en chiffres", 		    	"loadContent('menu_chiffres.ctt', 'menu_offres.ctt')")
submenu1.addNode("Nos plus", 						"loadContent('nosplus.ctt', 'menu_offres.ctt')")
submenu1.addNode("Vivre &agrave; Libourne", 				"jumpTo('http://www.ville-libourne.fr')")


node = menu3.addNode("Offres Emplois - Stages", "loadContent('emplois.ctt', 'menu_offres.ctt')")
node = menu3.addNode("Fournisseurs &amp; March&eacute;s publics", "loadContent('dse.ctt', 'menu_offres.ctt')")
submenu1 = node.addChild(400,55)
submenu1.addNode("Direction des Services Economiques",                 	"loadContent('dse.ctt', 'menu_offres.ctt')")
submenu1.addNode("Les march&eacute;s en cours",                       	"loadContent('marches.ctt', 'menu_offres.ctt')")
submenu1.addNode("Recensement des march&eacute;s", 			"loadContent('listemarches.ctt', 'menu_offres.ctt')")










/****************** QUATRIEME MENU *******************/


menu4 = new menu(findPosX(document.getElementById('ae')),findPosY(document.getElementById('ae')) + 20)
node = menu4.addNode("Pr&eacute;sentation", "loadContent('menu_presentation.ctt', 'menu_etudiant.ctt')")

submenu1 = node.addChild(400,55)
submenu1.addNode("Les services de soins",                              	"loadContent('soins.ctt', 'menu_organisation.ctt')")
submenu1.addNode("Histoire",                                        	"loadContent('historique.ctt', 'menu_etudiant.ctt')")
submenu1.addNode("Structures",                                       	"loadContent('structures.ctt', 'menu_etudiant.ctt')")
submenu1.addNode("Organisation", 					"loadContent('menu_organisation.ctt', 'menu_etudiant.ctt')")
submenu1.addNode("L'h&ocirc;pital en chiffres", 		    	"loadContent('menu_chiffres.ctt', 'menu_etudiant.ctt')")
submenu1.addNode("Nos plus", 						"loadContent('nosplus.ctt', 'menu_etudiant.ctt')") 
submenu1.addNode("Vivre &agrave; Libourne", 				"jumpTo('http://www.ville-libourne.fr')")


node = menu4.addNode("L'Institut de Formation<br>en Soins Infirmiers", "loadContent('menu_ifsi.ctt', 'menu_etudiant.ctt')")
submenu1 = node.addChild(740,60)
submenu1.addNode("Pr&eacute;sentation g&eacute;n&eacute;rale", "loadContent('ifsi.ctt', 'menu_etudiant.ctt')")
submenu1.addNode("La formation d'infirmier", "loadContent('ifsi-infirmier.ctt', 'menu_etudiant.ctt')")
submenu1.addNode("La formation d'aide-soignant", "loadContent('ifsi-AS.ctt', 'menu_etudiant.ctt')")
submenu1.addNode("R&eacute;sultats du Dipl&ocirc;me d'Etat", "loadContent('diplome_resultat.ctt', 'menu_etudiant.ctt')")



}


function addChild(x, y)
{
 this.child = new menu(x, y)
 return this.child;
}

function addNode(str, url)
{
 var cur = this.items;

 if(cur)
 {
   while(cur.next) cur = cur.next;
   cur.next = new item(str, url);
   return cur.next;
 }
 else
 {
   this.items = new item(str, url)
   return this.items;
 }
}

function menu(x, y)
{
 this.top = y;
 this.left = x;
 this.items = null;

 this.addNode = addNode;
}

function item(str, url)
{
 this.name = str;
 this.link = url;
 this.next = null;
 this.child = null;

 this.addChild = addChild;
}

function submenu(obj,menu)
{
 var c = menu.items;
 var str = "";

 var sobj = document.getElementById("submenu")

if (sobj)
 {
  sobj.className = "show";

  while(c)
  {
   str += '<div class="menubox" onclick="' + c.link + '">' + c.name + '</a></div>';
   c = c.next;
  }
  sobj.innerHTML = str

  if(window.innerWidth  >= (document.getElementById('menu').offsetLeft + document.getElementById('menu').offsetWidth + document.getElementById('submenu').offsetWidth)) 
  {
    sobj.style.top =  document.getElementById('menu').offsetTop + obj.offsetTop - 4  + "px";
    sobj.style.left = document.getElementById('menu').offsetLeft + document.getElementById('menu').offsetWidth - 1 + "px"
  } 
  else
  {
    sobj.style.top =  document.getElementById('menu').offsetTop + obj.offsetTop - 4  + "px";
    sobj.style.left = document.getElementById('menu').offsetLeft - document.getElementById('submenu').offsetWidth + 1 + "px"
  }
  subopened = 1;
  insidesubmenu = false;
 }
}

function popmenu(myobj, menu)
{
 var obj = document.getElementById("menu")

 var i = 0;
 var cur = menu.items;
 var str = "";

 if(obj)
 {
  document.getElementById('submenu').className = 'hide';
  subopened = 0;

 obj.className = "show";
 obj.style.top = findPosY(myobj) + 20 + "px";
 obj.style.left = findPosX(myobj)  + "px";

 while(cur)
 {
  if(cur.child)
  {
   menuptr[i] = cur.child;
   str += '<div class="menubox" onmouseover="submenu(this,menuptr[' + i++ + '])" onclick="' + cur.link + '">' + cur.name + '</a></div>';
  }
  else
  {
   str += '<div class="menubox" onmouseover="closesub()" onclick="' + cur.link + '">' + cur.name + '</div>';
  }
  cur = cur.next;
 }
 obj.innerHTML = str;

}
}

function closesub()
{
document.getElementById('submenu').className='hide';
subopened=0;
}

function closemenu()
{
 document.getElementById('menu').className= "hide";
 document.getElementById('submenu').className= "hide";
}

function hidemenu()
{
var obj = document.getElementById('menu')
if(obj)
{
var mox = obj.offsetLeft
var moy = obj.offsetTop
var mdx = obj.offsetWidth
var mdy = obj.offsetHeight

var obj = document.getElementById('submenu')
var smox = obj.offsetLeft
var smoy = obj.offsetTop
var smdx = obj.offsetWidth
var smdy = obj.offsetHeight


 if(!((x < mox || x > mox+mdx) || (y < moy || y > moy+mdy))) insidemenu = true;
 if(!((x < smox || x > smox+smdx) || (y < smoy || y > smoy+smdy))) insidesubmenu = true;

 if( insidemenu && (!subopened && ((x < mox || x > mox+mdx) || (y < moy || y > moy+mdy))))
 {
  document.getElementById('menu').className = 'hide';
  insidemenu = false;
 }
 else
 {
  if(insidesubmenu && (x < smox || x > smox+smdx) || (y < smoy || y > smoy+smdy))
  {
   document.getElementById('submenu').className = 'hide';
   insidesubmenu = false;
   subopened = 0;
  }
 }
}
}

// Woo. Web2.0 en action! 

function jumpTo(url)
{
 closemenu();
 document.location.href = url;
}

function updateMenu(url)
{
 xmlhttp2 = null;
 if (window.XMLHttpRequest)
 {
  xmlhttp2 = new XMLHttpRequest()
 }
 else if (window.ActiveXObject)
 {
  xmlhttp2 = new ActiveXObject("Microsoft.XMLHTTP")
 }
 if (xmlhttp2 != null)
 {
  xmlhttp2.onreadystatechange=state_Menu
  xmlhttp2.open("GET",url,true)
  xmlhttp2.send(null)
 }
 else
 {
  alert("XMLHTTP indisponible.")
 }
}

function state_Menu()
{
 if (xmlhttp2.readyState == 4)
 {
  if (xmlhttp2.status == 200)
  {
    document.getElementById('innerTweak').innerHTML = '<div id="leftmenu" class="leftmenu">' + xmlhttp2.responseText + "</div>";
  }
  else
  {
   document.getElementById('leftmenu').innerHTML = '<p class="para">Impossible de charger le contenu.</p>'
  }
 }
}

function loadPDF(to)
{
  window.open(to, 'Voir PDF', 'toolbars=no,scrollbars=yes,status=no,location=no');
}

function loadContent(url, menu)
{
 closemenu();
 xmlhttp = null;
 if (window.XMLHttpRequest)
 {
  xmlhttp = new XMLHttpRequest()
 }
 else if (window.ActiveXObject)
 {
  xmlhttp = new ActiveXObject("Microsoft.XMLHTTP")
 }
 if (xmlhttp != null)
 {
  xmlhttp.onreadystatechange=state_Change
  xmlhttp.open("GET",url,true)
  xmlhttp.send(null)
 }
 else
 {
  alert("XMLHTTP indisponible.")
 }
 if(menu != '') updateMenu(menu);
}

function state_Change()
{
 if (xmlhttp.readyState == 4)
 {
  if (xmlhttp.status == 200)
  {
   document.getElementById('content').innerHTML = xmlhttp.responseText;
  }
  else
  {
   document.getElementById('content').innerHTML = '<p class="para">Impossible de charger le contenu.</p>'
  }
 }
}
