[SPIP Zone] r4049 - in /_plugins_/_boucles_/boucles_xml: base/xml_temporaire.php plugin.xml xml.html

Author: cedric@yterium.com
Date: Mon Jul 17 23:13:10 2006
New Revision: 4049

Log:
les problemes de charset et d'encodage sont regles a priori
On recupere un bel arbre XML dans son navigateur :slight_smile:
Tous les retours sont les bienvenus... (un peu de doc dans plugin.xml)

Modified:
    _plugins_/_boucles_/boucles_xml/base/xml_temporaire.php
    _plugins_/_boucles_/boucles_xml/plugin.xml
    _plugins_/_boucles_/boucles_xml/xml.html

Modified: _plugins_/_boucles_/boucles_xml/base/xml_temporaire.php

--- _plugins_/_boucles_/boucles_xml/base/xml_temporaire.php (original)
+++ _plugins_/_boucles_/boucles_xml/base/xml_temporaire.php Mon Jul 17 23:13:10 2006
@@ -51,6 +51,8 @@
   static $file_done=array(''=>true);
   if (isset($file_done[$xml_file])) return;
   if (lire_fichier($f=find_in_path($xml_file),$contenu)!==false){
+ include_spip('inc/charset');
+ $contenu = html2unicode(transcoder_page($contenu));
     include_spip('inc/plugin');
     $tree = parse_plugin_xml($contenu);
     spip_query("DELETE FROM spip_xml WHERE xml=".spip_abstract_quote($xml_file));

Modified: _plugins_/_boucles_/boucles_xml/plugin.xml

--- _plugins_/_boucles_/boucles_xml/plugin.xml (original)
+++ _plugins_/_boucles_/boucles_xml/plugin.xml Mon Jul 17 23:13:10 2006
@@ -3,16 +3,29 @@
   Boucles XML
   </nom>
   <auteur> <!-- Auteur du plugin -->
- Cedric MORIN
+ Cedric MORIN [notre-ville.net->http://notre-ville.net]
+_ &copy; 2006 Licence GPL
   </auteur>
   <version>
   0.10
   </version>
   <etat>
- dev
+ test
   </etat>
   <description>
   Parser du xml avec les boucles SPIP
+
+ Le plugin introduit un type de boucle XML qui permet de parcourir l'arborescence d'un fichier au format
+xml au moyen des boucles spip. Les critères disponibles sont
+-* {xml=fichier.xml} pour aller chercher fichier.xml dans le path
+-* {xpath} pour acceder a un noeud par son chemin a partir de la racine (fini par un /}
+-* {racine}
+-* {id_parent}
+-* {statut=noeud} {statut=feuille}
+-* {noeud=MonElement} pour acceder directement a un noeud independamment de son arborescence
+-* NIY {id_enfant}
+
+Les balises utilses sont #XPATH, #NOEUD, #ATTRIBUTS (sur laquelle on utilisera le filtre extraire_attributs), et #TEXTE pour les feuilles (vide pour les noeuds)
   </description>
   <options> <!-- fichier charge a chaque hit -->
   xml_options.php

Modified: _plugins_/_boucles_/boucles_xml/xml.html

--- _plugins_/_boucles_/boucles_xml/xml.html (original)
+++ _plugins_/_boucles_/boucles_xml/xml.html Mon Jul 17 23:13:10 2006
@@ -1,12 +1,12 @@
#CACHE{3600}
[(#HTTP_HEADER{Content-type: text/xml[; charset=(#CHARSET)]})]
-<?php echo '<' ?>?xml version="1.0"?>
+<?php echo '<' ?>?xml version="1.0"[ encoding="(#CHARSET)"]?>
<BOUCLE_parse(XML){xml}{racine}>
<#NOEUD #ATTRIBUTS>
   <BOUCLE_tree(XML){xml}{id_parent}>
   <#NOEUD #ATTRIBUTS>
     <BOUCLE_rec(boucle_tree)></BOUCLE_rec>
   </#NOEUD>
- </BOUCLE_tree>#TEXTE<//B_tree>
+ </BOUCLE_tree>#TEXTE*<//B_tree>
</#NOEUD>
</BOUCLE_parse>
\ No newline at end of file