Skip to content
Extraits de code Groupes Projets
  1. 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
  2. déc. 23, 2006
  3. déc. 21, 2006
  4. 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
  5. déc. 19, 2006
  6. déc. 16, 2006
  7. déc. 15, 2006
  8. 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
  9. déc. 11, 2006
  10. déc. 07, 2006
  11. nov. 30, 2006
  12. nov. 27, 2006
  13. nov. 24, 2006
  14. nov. 15, 2006
  15. 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
  16. nov. 12, 2006
  17. nov. 10, 2006
  18. nov. 06, 2006
  19. nov. 05, 2006
  20. 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
  21. nov. 03, 2006
  22. 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
  23. nov. 01, 2006
  24. oct. 31, 2006
  25. oct. 30, 2006
  26. oct. 29, 2006
  27. 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
  28. oct. 26, 2006
  29. oct. 25, 2006
  30. oct. 24, 2006
    • JamesRezo's avatar
      les vignettes perdent leur -dist. · d4f3cd8a
      JamesRezo a rédigé
      d4f3cd8a
    • esj's avatar
      Tache #605: forum_envoi délègue l'écriture en base à un script de action/. · b2f1b72a
      esj a rédigé
      Sportif d'une part parce que pas du tout conforme XHTML, et surtout parce que les clients HTTP ne respectent pas son RFC en ce qu'une redirection d'un POST est faite en GET et est donc inutilisable ici. Conséquence: le script est obligé d'inclure ecrire/index, lequel pensait benoitement que toutes ses variables seraient toujours globales, ce qui n'est pas le cas dans ce contexte. Bilan: réécriture de ecrire/index en explicitant $GLOBALS partout, et réécriture aussi de inc/lang qui doit chercher des mots dans le module "ecrire" quand bien meme on l'utilise à partir de l'espace public.
      b2f1b72a
  31. oct. 23, 2006
  32. oct. 21, 2006
  33. oct. 17, 2006
Chargement en cours