Skip to content
Extraits de code Groupes Projets
  1. jan. 21, 2007
    • esj's avatar
      Préparation à l'amélioration de la fusion: mettre dans les attributs de la... · 75a4e0f9
      esj a rédigé
      Préparation à l'amélioration de la fusion: mettre dans les attributs de la premiere balise d'un sauvegade, en plus des numéros de versions, l'URL du site et les repertoires _DIR_IMG et _DIR_LOGOS. Comme ceux-ci doivent etre ceux relatifs à l'espace public, la dernière phase de l'exportation (celle qui réunit en un seul les fichiers créés pour chaque table, et écrit ses attributs au début du fichier final) est exécutée dans l'espace public et non plus privé. On ne réaffiche plus une deuxième fois le nom et la taille des fichiers, on affiche plutot la taille finale.
      75a4e0f9
  2. jan. 17, 2007
  3. jan. 16, 2007
  4. jan. 15, 2007
  5. jan. 14, 2007
  6. jan. 12, 2007
    • esj's avatar
      Mise en cache (compressé) du résultat de l'analyse d'une DTD. Indispensable... · 555eeb4d
      esj a rédigé
      Mise en cache (compressé) du résultat de l'analyse d'une DTD. Indispensable pour les DTD à grosses inclusions. On garde quand meme les copies locales des DTD car elles peuvent resservir, et différemment, en cas d'inclusion. 
      
      Validateur XML et analyseur de DTD n'étant pas forcément lié (on pourrait avoir un XML Schema ou un RelaxNG) le fichier initial est coupé en 3, dont 2 vont dans le répertoire XML, plus approprié.
      555eeb4d
  7. jan. 10, 2007
  8. jan. 09, 2007
  9. jan. 02, 2007
    • esj's avatar
      Evacuation de balises font · 31447219
      esj a rédigé
      {{{
      for i in $(grep -l  "<font color=.[^>]*>.*</font" [ei]*/*p)
      	do 
      	sed  "s,<font color=\(.\)\([^>]*\)>\(.*\)</font,<span style=\1color: \2>\3</span," $i > x
      	 mv x $i
      done
      }}}
      31447219
  10. déc. 23, 2006
  11. déc. 21, 2006
  12. déc. 20, 2006
    • esj's avatar
      Simplification de l'interface à l'indenteur/validateur, d'une part pour que... · 7e8fe71d
      esj a rédigé
      Simplification de l'interface à l'indenteur/validateur, d'une part pour que l'indenteur ne s'encombre pas des données du validateur, et pour qu'on puisse écrire des validateur meilleurs que celui du W3C en récupérant un maximum de code. Il y a peu de programmation objet, mais entre les incompatibilités de PHP4 et PHP5 sur la question, et la folie de la sémantique de référence dans les deux cas, c'est minimal.
      
      A présent, il faut affecter dans mes_options.php une seule variable, qui sera le nom passé à charger_fonction à la fin de ecrire/index.php:
      
      {{{
      $GLOBALS['transformer_xml'] = 'indenter_xml';  // pour l'indenteur XML
      $GLOBALS['transformer_xml'] = 'valider_xml';  // pour le validateur par DTD
      }}}
      
      Les spécifications de [8136] n'auront donc vécu que le temps de 13 dépots.
      7e8fe71d
  13. déc. 19, 2006
  14. déc. 16, 2006
  15. déc. 15, 2006
  16. déc. 14, 2006
    • esj's avatar
      Extension du validateur XML à un validateur lexical selon la DTD. · 4788bd90
      esj a rédigé
      Le petit validateur construit autour de SAX va à présent chercher la DTD indiqué par la page des espaces public ou privé, à analyser, et vérifie que toutes les balises de la page sont présentes dans la DTD, et que tous les attributs figurant dans une balise sont autorisés par la DTD.
      
      Attention, cette analyse est seulement lexicale, pas syntaxique: on ne vérifie pas qu'un attribut obligatoire est présent, ni que la succession des balises est conforme (ça laisse passer des Form imbriqués par exemple). De plus, les entités déclarées externes ne sont pas traitées. Ca permet néanmoins de répérer les fautes les plus grossières sans passer par les validateurs externes complets, qui n'ont pas accès par URL aux pages calculées par les scripts de l'espace privé faute de Login. Cette vérification s'obtient en mettant:
      $GLOBALS['xml_indent'] = 'sax';
      dans mes_options.php.
      
      A signaler à propos de ce validateur/indenteur, un bug non résolu mais à présent identifié. Le modèle SAX appelle une fonction définissable par le programmeur (le ''handler'', en français le ''preneur'') à chaque rencontre d'un lexème, en particulier les entités HTML comme "& eacute ;" etc. Ces entités se rencontrent dans les éléments Text et dans les attributs, ce qui provoque l'appel du preneur dans 2 contextes différents sans qu'il puisse les distinguer. Il s'ensuit que l'indenteur mettra à tort dans la dernière zone Texte les entités HTML (typiquement les lettres accentuées) présentes dans les attributs de la balise suivant cette zone. Si quelqu'un a une solution pour contourner ce bug de conception de SAX, je suis ... preneur.
      4788bd90
  17. déc. 11, 2006
  18. déc. 07, 2006
  19. nov. 30, 2006
  20. nov. 27, 2006
  21. nov. 24, 2006
  22. nov. 15, 2006
  23. nov. 13, 2006
    • esj's avatar
      Rationnalisation de l'interace des scripts action: appel de la fonction... · 6eb0420c
      esj a rédigé
      Rationnalisation de l'interace des scripts action: appel de la fonction surchargeable securiser_action qui fait le travail de generer_action_auteur si elle est appelée avec au moins argument, et sinon controle les valeurs de sécurité (ex-fonction contoler_action_auteur qui semblait surchargeable mais ne l'était pas). generer_action_auteur reste disponible mais est appelée a disparaitre.
      6eb0420c
  24. nov. 12, 2006
  25. nov. 10, 2006
  26. nov. 06, 2006
  27. nov. 05, 2006
  28. nov. 04, 2006
    • esj's avatar
      Permettre la surcharge de la fonction d'ajout de documents, afin d'organiser... · 4282677b
      esj a rédigé
      Permettre la surcharge de la fonction d'ajout de documents, afin d'organiser différemment le répertoire IMG (reste à améliorer). Au passage, amélioration de la fonction d'ajout d'un logo, qui acceptait n'importe quel format d'image mais était incapable de le retrouver ensuite.
      4282677b
  29. nov. 03, 2006
  30. nov. 02, 2006
    • esj's avatar
      La fonction debut_page passe dans les vieilles def et devient surchargeable... · 0c2e0d30
      esj a rédigé
      La fonction debut_page passe dans les vieilles def et devient surchargeable sous le nom de inc_commencer_page. On en profite pour passer dessus la  tache #587 (remplacement des echo par return).
      
      Les scripts de exec appelant cette fonction ont été transformés par le sed-script suivant (peut-etre illisble avec le Wiki ?):
      
      s/^\(.*\)debut_page/\1$commencer_page = charger_fonction('commencer_page', 'inc');\
      \1echo $commencer_page/
      0c2e0d30
  31. nov. 01, 2006
  32. oct. 31, 2006
  33. oct. 30, 2006
  34. oct. 29, 2006
  35. oct. 27, 2006
    • esj's avatar
      La fonction de traduction devient surchargeable sous le nom de inc_traduire,... · 357e6774
      esj a rédigé
      La fonction de traduction devient surchargeable sous le nom de inc_traduire, le fichier inc/traduire étant originellement une partie de inc/lang. Les traductions sont mémorisées dans une statique, l'expérience montrant qu'elles souvent redemandées. Par ailleurs, inc/lang évite d'appeler changer_lang en rafale, une fois suffit.
      357e6774
Chargement en cours