Changeset 59007 in spip-zone


Ignore:
Timestamp:
Mar 3, 2012, 8:46:50 AM (8 years ago)
Author:
fil@…
Message:

traitement correct de <!-- ig br --> dans les notes (johan)

Location:
_core_/plugins/textwheel/inc
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _core_/plugins/textwheel/inc/notes.php

    r51321 r59007  
    3030// C'est stocke dans la globale $les_notes, mais pas besoin de le savoir
    3131
    32 function inc_notes_dist($arg,$operation='traiter')
     32function inc_notes_dist($arg,$operation='traiter', $ignorer_autobr=false)
    3333{
    3434        static $pile = array();
     
    3838        switch ($operation){
    3939                case 'traiter':
    40                         if (is_array($arg)) return traiter_les_notes($arg);
     40                        if (is_array($arg)) return traiter_les_notes($arg,$ignorer_autobr);
    4141                        else
    4242                                return traiter_raccourci_notes($arg, $marqueur>1?$marqueur:'');
     
    156156
    157157// http://doc.spip.org/@traiter_les_notes
    158 function traiter_les_notes($notes) {
     158function traiter_les_notes($notes,$ignorer_autobr) {
    159159        $mes_notes = '';
    160160        if ($notes) {
     
    171171                        .'</div>';
    172172                }
     173                if ($ignorer_autobr)
     174                        $mes_notes = _AUTOBR_IGNORER.$mes_notes;
    173175                $mes_notes = propre($mes_notes);
    174176        }
  • _core_/plugins/textwheel/inc/texte.php

    r59004 r59007  
    522522                $ignorer_autobr = true;
    523523                $t = substr($t, strlen(_AUTOBR_IGNORER));
    524         }
     524        } else
     525                $ignorer_autobr = false;
    525526
    526527        // Appeler les fonctions de pre_traitement
     
    551552
    552553        if ($mes_notes)
    553                 $notes($mes_notes);
     554                $notes($mes_notes,'traiter',$ignorer_autobr);
    554555
    555556        // hack2: wrap des autobr dans l'espace prive, pour affichage css
    556557        // car en css on ne sait pas styler l'element BR
    557558        if ($ignorer_autobr) {
    558                 foreach (array('t', 'mes_notes') as $k) {
    559                         $rep = _DIR_RACINE ? '<span style="color:gray">&para;</span>' : '';
    560                         $$k = str_replace(_AUTOBR, $rep, $$k);
    561                 }
     559                $rep = _DIR_RACINE ? '<span style="color:gray">&para;</span>' : '';
     560                $t = str_replace(_AUTOBR, $rep, $t);
    562561        }
    563562        if (_DIR_RACINE) {
    564563                $manual = "<span style='color:green;'>&#x21B5;";
    565564                $auto = "<span style='color:orange;'>&para;";
    566                 foreach (array('t', 'mes_notes') as $k) {
    567                         if (false !== strpos(strtolower($$k), '<br')) {
    568                                 $$k = preg_replace("/<br\b.*>/UiS", "$manual\\0</span>", $$k);
    569                                 if (_AUTOBR)
    570                                         $$k = str_replace($manual._AUTOBR, $auto._AUTOBR, $$k);
    571                         }
     565                if (false !== strpos(strtolower($t), '<br')) {
     566                        $t = preg_replace("/<br\b.*>/UiS", "$manual\\0</span>", $t);
     567                        if (_AUTOBR)
     568                                $t = str_replace($manual._AUTOBR, $auto._AUTOBR, $t);
    572569                }
    573570        }
Note: See TracChangeset for help on using the changeset viewer.