Changeset 75250 in spip-zone


Ignore:
Timestamp:
Sep 3, 2013, 10:59:48 PM (6 years ago)
Author:
patfr@…
Message:

Glossaire Interne : suite des vérifications...
+ notice PHP

Location:
_plugins_/couteau_suisse
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/couteau_suisse/lang/couteauprive_fr.php

    r73767 r75250  
    406406        'glossaire_erreur' => 'Le mot «@mot1@» rend indétectable le mot «@mot2@»',
    407407        'glossaire_inverser' => 'Correction proposée : inverser l\'ordre des mots en base.',
     408        'glossaire_verifier' => 'Correction proposée : vérifier les expressions régulières.',
    408409        'glossaire_js' => 'Solution JavaScript',
    409410        'glossaire_ok' => '@nb@ mot(s) étudié(s). Tout semble correct.',
  • _plugins_/couteau_suisse/outils/boites_privees.php

    r75095 r75250  
    216216                $now = date('Y-m-d H:i:s');
    217217                $info = ' ('._T('couteau:url_verrouillee').')';
    218                 while ($t = sql_fetch($s)) $res .= ($res?'<br />':'').'&bull;&nbsp;<html>'.$t['url'].($t[date]>$now?$info:'')."</html>\n";
     218                while ($t = sql_fetch($s)) $res .= ($res?'<br />':'').'&bull;&nbsp;<html>'.$t['url'].($t['date']>$now?$info:'')."</html>\n";
    219219                if(!find_in_path($f = $type."."._EXTENSION_SQUELETTES))
    220220                        $lien_public .= '{{[!]}} {'._T('info_erreur_squelette2',array('fichier'=>$f))."}\n\n";
  • _plugins_/couteau_suisse/outils/glossaire_action_rapide.php

    r75243 r75250  
    99function glossaire_verifie(&$c) {
    1010        include_spip('public/parametrer'); // pour mes_fonctions
    11         $res = array();
     11        $res = $res2 = array();
    1212        $c = count($gloss = glossaire_query_tab());
    13         for($i=0; $i<$c; $i++) for($j=$i+1; $j<$c; $j++) {
    14                 $gi = &$gloss[$i]; $gj = &$gloss[$j];
    15                 if(!isset($gi['mots'])) {
    16                         list($gi['mots'],$gi['regs'],$gi['titre2'], $ok_regexp) = glossaire_parse(extraire_multi($gi['titre']));
    17                         if(!$ok_regexp) $res[] = "&bull; ".htmlentities(_L('Erreur Regexp : @reg@ tirée du titre "@titre@"', array('reg'=>var_export($gi['regs'], 1), 'titre'=>extraire_multi($gi['titre']))))."\n_ ";
    18                 }
    19                 if(!isset($gj['mots'])) {
    20                         list($gj['mots'],$gj['regs'],$gj['titre2'], $ok_regexp) = glossaire_parse(extraire_multi($gj['titre']));
    21                         if(!$ok_regexp) $res[] = "&bull; ".htmlentities(_L('Erreur Regexp : @reg@ tirée du titre "@titre@"', array('reg'=>var_export($gi['regs'], 1), 'titre'=>extraire_multi($gi['titre']))))."\n_ ";
    22                 }
    23                 $u = false;
    24                 $titre = $gi['mots']?glossaire_gogogo($gj['titre2'], $gi['mots'], -1, $u):'';
    25                 if(count($gi['regs']))
    26                         $titre .= preg_replace_callback($gi['regs'], "glossaire_echappe_mot_callback", $gj[titre], -1);
    27                 if(strpos($titre,'@@GLOSS')!==false) { 
    28                         $a = '['.$gi['titre'].'->mot'.$gi['id_mot'].']';
    29                         $b = '['.$gj['titre'].'->mot'.$gj['id_mot'].']';
    30                         $res[] = "&bull; "._T('couteauprive:glossaire_erreur', array('mot1'=>$a, 'mot2'=>$b))."\n_ ";
     13        for($i=0; $i<$c; $i++) {
     14                $gi = &$gloss[$i]; glossaire_verifie_init($gi, $res);
     15                for($j=$i+1; $j<$c; $j++) {
     16                        $gj = &$gloss[$j]; glossaire_verifie_init($gj, $res);
     17                        $u = false;
     18                        $titre = $gi['mots']?glossaire_gogogo($gj['titre2'], $gi['mots'], -1, $u):'';
     19                        if(count($gi['regs']))
     20                                $titre .= preg_replace_callback($gi['regs'], "glossaire_echappe_mot_callback", $gj['titre'], -1);
     21                        if(strpos($titre,'@@GLOSS')!==false) { 
     22                                $a = '['.$gi['titre'].'->mot'.$gi['id_mot'].']';
     23                                $b = '['.$gj['titre'].'->mot'.$gj['id_mot'].']';
     24                                $res2[] = "&bull; ".couteauprive_T('glossaire_erreur', array('mot1'=>$a, 'mot2'=>$b));
     25                        }
    3126                }
    3227        }
    33         if(count($res)) return propre(join('', $res)._T('couteauprive:glossaire_inverser'));
    34         return '';
     28        if(count($res)) $res[] = couteauprive_T('glossaire_verifier');
     29        if(count($res2)) $res2[] = couteauprive_T('glossaire_inverser');
     30        return propre(join("\n_ ", array_merge($res, $res2)));
    3531}
    3632
     33// function d'initialisation utilisee par la precedente
     34function glossaire_verifie_init(&$g, &$res) {
     35        static $gu;
     36        if(!isset($g['mots'])) {
     37                if(!isset($gu)) $gu = function_exists('glossaire_generer_url')?'glossaire_generer_url':'glossaire_generer_url_dist';
     38                list($g['mots'], $g['regs'], $g['titre2'], $ok_regexp) = glossaire_parse(extraire_multi($g['titre']));
     39                if(!$ok_regexp) $res[] = "&bull; <html>"._L('Erreur : ') . cs_lien(glossaire_generer_url_dist($g['id_mot']), htmlentities(extraire_multi($g['titre'])))."</html>";
     40        }
     41}
    3742
    3843function glossaire_action_rapide($actif) {
  • _plugins_/couteau_suisse/outils/glossaire_fonctions.php

    r75243 r75250  
    3636function glossaire_generer_url_dist($id_mot, $titre_mot) {
    3737        if(defined('_SPIP19300'))
    38                 return generer_url_entite($id_mot, 'mot'); // depuis SPIP 2.0
    39                 else { charger_generer_url(); return generer_url_mot($id_mot); } // avant SPIP 2.0
     38                return generer_url_entite($id_mot, 'mot');
     39        // avant SPIP 2.0 :
     40        charger_generer_url(); return generer_url_mot($id_mot);
    4041}
    4142
     
    152153                $mots = str_replace("'", "(?:'|&#8217;)", glossaire_accents(join('|', $mots)));
    153154        } else $mots = '';
    154         $ok_regexp = @preg_replace_callback($regs, 'glossaire_echappe_mot_callback', 'test', 1)!==false;
    155         return array($mots, $regs, $titres, $ok_regexp);
     155        $ok_regexp = count($regs)?preg_replace($regs, 't', 'test', 1)!==null:true;
     156        return array($mots,$ok_regexp?$regs:array(), $titres, $ok_regexp);
    156157}
    157158
Note: See TracChangeset for help on using the changeset viewer.