// définir le constructeur  XMLHttpRequest avec IE 5 et 6. On utilise un objet activeX
if (!window.XMLHttpRequest ) {
 window.XMLHttpRequest = function() {
  return new ActiveXObject("Microsoft.XMLHTTP");     
 }
};

// Contenu textuel d'un element dom : FF, IE 
function texte(node) {
	var result = "";
			if (node.textContent) { // FF
				result = node.textContent;
			}
			else 
			 if (node.text) { // IE
				result = node.text;
				};
	return result;
}

// retourne le tableau des noueuds de element dont le nom est nom
function lire_elements(element, nom) {
  var result = new Array();
  var name = nom.toLowerCase();
  for (var i=0 ; i<element.childNodes.length ; i++) {
    var child = element.childNodes[i];
    if (child.nodeType == 1) { // C'est un element
      if (child.nodeName.toLowerCase() == name) {
        result.push(child);
      }
    }
  }
  return result;
}

// retourne vrai s un élément (ou un noeud) contient le noeud cdata contenant lui même des balises html
function contient_cdata(element) {
  var result = false;	
  for (var i=0 ; i<element.childNodes.length ; i++) {
    var child = element.childNodes[i];
    if (child.nodeType == 4) { // C'est une section cdata		
				 var texte=child.nodeValue;
					//alert(texte);
					var prof= new RegExp("(<[^>]*>)");
					if(prof.test(texte))
      result=true;
    };
  };
  return result;
}	

function contient_html(chaine){	
 //alert(chaine);
	var result = false;	
	var profile= new RegExp("<.*>");
	if (profile.test(chaine)){ result=true;};	
	//alert("htlm : "+result);
	return result;	
}
	
//  teste l'existence d'une image	dans un item
function test_image(elt){
	var result=false;
		if( lire_elements(elt, "enclosure").length>0){	
		 var enclosure1 = lire_elements(elt, "enclosure")[0];
			
	 	if (enclosure1.getAttribute("url")){
				var adr2=enclosure1.getAttribute("url");
			 if(adr2.substr(adr2.length-3,3)=="jpg"){	
			  result=true;	
				};
			};
		};
		return result;
}		
	
// fait apparaître les balise < et > 
function decode(chaine){
 var profil1=new RegExp("&lt;","g");
 var chaine1=chaine.replace(profil1,"<");	
	var profil2=new RegExp("&gt;","g");
	var chaine2=chaine1.replace(profil2,">");
	return chaine2;
}

// Dans item, cherche dans la balise description texte non entouré de balises 
function texte_description(elt){	
 var texte1="";
 if( lire_elements(elt, "description").length>0){
		var description = lire_elements(elt, "description")[0];
	 var chaine=texte(description);	
		var chaine1=decode(chaine);
	 var d=chaine1.indexOf("<");	
		var f=chaine1.lastIndexOf(">");	
		var e=chaine1.length-1;	
		if (d>0){texte1+=chaine1.substring(0,d);};
		if (f<e){texte1+=chaine1.substring(f+1,e+1);};
	};
	return texte1;	
}

//Dans item, cherche une image.jpg dans la balise description 
function image_description(elt){		
 var adr="";
	if( lire_elements(elt, "description").length>0){
		var description = lire_elements(elt, "description")[0];
		var chaine=texte(description);
		var chaine1=decode(chaine);	
		var i=0;
		var fin=false;
		while(i<chaine1.length && !fin){
		 var i=chaine1.indexOf("<img",i);
			if (i!=-1){	
				var s=chaine1.indexOf("src=",i);	
			 var cote=chaine1.charAt(s+4);
				if (cote=="\""){
				 var t=chaine1.indexOf("\"",s+5);
				} else {
				 var t=chaine1.indexOf("'",s+5);
				};
				adr2=chaine1.substring(s+5,t);	
				if(adr2.substr(adr2.length-3,3)=="jpg"){	
				 adr=adr2;
					fin=true;	
				};
			} else {
			 fin=true;
			};
			i++;	
		};
	};
	return adr;	
}

//Dans item, Cherche une image.jpg dans une balise enclosure 
function image_enclosure(elt){
	var adr="";
		if( lire_elements(elt, "enclosure").length>0){	
		 var enclosure1 = lire_elements(elt, "enclosure")[0];
	 	if (enclosure1.getAttribute("url")){
				var adr2=enclosure1.getAttribute("url");
			 if(adr2.substr(adr2.length-3,3)=="jpg"){	
			  adr=adr2;	
				};
			};
		};
		return adr;
}		
