hi i have write my first code in java to read xml, it works on explorer, safari and chrome but not in firefox
i want to do 2 actions which works well separately
is someone can help me ?
the first one is
Code:
function listedate() {
//-- Init des tableaux de recup 
	if(window.XMLHttpRequest) // Firefox 
	   xhr_object = new XMLHttpRequest(); 
	else if(window.ActiveXObject) // Internet Explorer 
	   xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); 
	else { // XMLHttpRequest non supporté par le navigateur 
	   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
	   return; 
	} 
	xhr_object.open("GET", "adp/DispoMAJ.xml", true); 
	xhr_object.onreadystatechange = function() { 
	   if(xhr_object.readyState == 4) { 
 //-- Recup Objet au format DOM
var O_Xml = xhr_object.responseXML; 
var racine = O_Xml.documentElement;
//-- Recup NodeList balises MAJDispo
var T_Maj  = racine.getElementsByTagName("MAJDispo");
//-- Parcours NodeList balises MAJDispo
for( var i = 0, nb_i = T_Maj.length; i < nb_i; i++){
  //-- balise en cours
  var O_Maj = T_Maj[i];
  //-- recup de la date
  var szDate0 = O_Maj.getAttribute("date");
var szDate1 = szDate0.split('-');
var szDate = szDate1[1]+'/'+szDate1[2] +'/'+ szDate1[0];

//-- Init tableau de tableau sur la date
T_Date[szDate] = new Array();
  //-- Recup NodeList balises Dispo
  var T_Dispo = O_Maj.getElementsByTagName("Dispo");
  //-- Parcours NodeList balises MAJDispo  
  for( var k = 0, nb_k = T_Dispo.length; k < nb_k; k++){
    //-- balise en cours
    var O_Dispo = T_Dispo[k];
    //-- Recup NodeList balises CompteDispo
    var T_Compte = O_Dispo.getElementsByTagName("CompteDispo");
	 for (var j = 0, nb_j = T_Compte.length; j < nb_j; j++) {
  //-- balise en cours
  var O_Compte = T_Compte[j];
  //-- Recup Info
  var szNomLogement = O_Compte.childNodes[0].nodeValue;
  var szNbrLogement = O_Compte.getAttribute("Nb_loge");
  //-- Get les data
  if (!T_Result[szNomLogement]) {
    //-- Creation entree
    T_Result[szNomLogement] = new Array();
  }
  //-- Ajout nouvel attribut
  T_Result[szNomLogement].push({
    date: szDate,
    actif: szNbrLogement
  });
  T_Date[szDate].push({
    nom: szNomLogement,
    actif: szNbrLogement
  });
}
//-- fin Parcours NodeList balises CompteDispo	 
	} 
//-- fin Parcours NodeList balises MAJDispo	
  }  

//fin if state4
  } 
  // écriture des tableaux
  for ( var p in T_Date) {
	s=0;
	t=0;
   
	//-- Init tableau de tableau sur la date
	dispo[p] = new Array();
	for (var q in T_Date[p]) {
	  if (T_Date[p][q].nom == appart && T_Date[p][q].actif==0 )
//Ajouter la date dans la variable Html2
Html2.push(p);
}  
}

var ListeCalendrier = Html2.join(", ");


var disponibles = '"';
disponibles += ListeCalendrier;
disponibles += '"';
if (disponibles) calendar(disponibles);

  }
  //fin function
  }
//fin function liste date
xhr_object.send(null);
}
the second one is
Code:
 function calendar(disponibles){
	YAHOO.namespace("apartparis.calendar");


	YAHOO.apartparis.calendar.init = function() {
//on affiche 4 mois
		YAHOO.apartparis.calendar.cal1 = new YAHOO.widget.CalendarGroup("cal1","cal1Container",
																	 {PAGES:10} );
// Traduction du calendrier en francais
		YAHOO.apartparis.calendar.cal1.cfg.setProperty("MONTHS_SHORT",   ["Jan", "F&egrave;v", "Mar", "Avr", "Mai", "Jui", "Jul", "Aou", "Sep", "Oct", "Nov", "Dec"]); 
	YAHOO.apartparis.calendar.cal1.cfg.setProperty("MONTHS_LONG",    ["Janvier", "F&egrave;vrier", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre", "Octobre", "Novembre", "D&egrave;cembre"]); 
	YAHOO.apartparis.calendar.cal1.cfg.setProperty("WEEKDAYS_SHORT", ["Di", "Lu", "Ma", "Me", "Je", "Ve", "Sa"]); 
//Choix des dates a mettre en evidence, definie dans la feuille de style	
		YAHOO.apartparis.calendar.cal1.addRenderer("01/10/2011-04/01/2011", YAHOO.apartparis.calendar.cal1.renderCellStyleHighlight1);//basse saison
		YAHOO.apartparis.calendar.cal1.addRenderer("04/02/2011-11/01/2011", YAHOO.apartparis.calendar.cal1.renderCellStyleHighlight3);// moyenne saison
//Appel des dates du calendrier	
		YAHOO.apartparis.calendar.cal1.addRenderer(disponibles, YAHOO.apartparis.calendar.cal1.renderBodyCellRestricted);
		YAHOO.apartparis.calendar.cal1.render();
	}
YAHOO.util.Event.onDOMReady(YAHOO.apartparis.calendar.init);
	
  }
  //fin function
  }
//fin function liste date
xhr_object.send(null);
}