Changeset 95952 in spip-zone for _plugins_/hashtags


Ignore:
Timestamp:
Mar 13, 2016, 12:24:15 PM (4 years ago)
Author:
spip.franck@…
Message:

des tab à la place d'espace http://www.spip.net/fr_article3497.html#regles_codage

Location:
_plugins_/hashtags/trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/hashtags/trunk/formulaires/configurer_hashtags.html

    r95886 r95952  
    11<div class="formulaire_spip formulaire_configurer formulaire_#FORM">
    22
    3     <h3 class="titrem"><img src="#CHEMIN_IMAGE{hashtag-24.png}" class="cadre-icone" /><:hashtags:titre_configurer_hashtags:></h3>
     3        <h3 class="titrem"><img src="#CHEMIN_IMAGE{hashtag-24.png}" class="cadre-icone" /><:hashtags:titre_configurer_hashtags:></h3>
    44
    5     [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
    6     [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
    7     [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV{erreurs}|count|oui)<:hashtags:verifier_configuration_des_objets:></p>]
     5        [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
     6        [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
     7        [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV{erreurs}|count|oui)<:hashtags:verifier_configuration_des_objets:></p>]
    88
    9     <form method="post" action="#ENV{action}">
    10         #ACTION_FORMULAIRE{#ENV{action}}
     9        <form method="post" action="#ENV{action}">
     10                #ACTION_FORMULAIRE{#ENV{action}}
    1111
    12         <B_data>
     12                <B_data>
    1313
    14             #BOITE_OUVRIR{'','info'}
    15             <p class='info'><:hashtags:info_formulaire_configurer_hashtags:></p>
    16             #BOITE_FERMER
     14                        #BOITE_OUVRIR{'','info'}
     15                        <p class='info'><:hashtags:info_formulaire_configurer_hashtags:></p>
     16                        #BOITE_FERMER
    1717
    18             <BOUCLE_data(DATA){source table, #ENV{objets}}{groupes != ''}{titre != ''}{par titre}>
    19                 <fieldset>
    20                     <h3 class="legend">[<img src="(#CHEMIN_IMAGE{#CLE|concat{-16.png}})" /> ]#TITRE</h3>
    21                     <div>
    22                         <input type="checkbox"
    23                                name="cfg_hashtags[#_data:CLE][active]"
    24                                value="oui"
    25                                [(#ENV{cfg_hashtags/#_data:CLE/active}|=={oui}|oui)checked="checked" ]/>
    26                         <label>[(#VAL{hashtags:activer_hashtags_sur}|_T{#ARRAY{objet,#TITRE}})]</label>
    27                     </div>
    28                     <ul class="editer-groupe">
    29                         <B_champs>
    30                             <li class="editer[ (#ENV{erreurs/#CLE/champs}|oui)erreur]">
    31                                 <label><:ecrire:config_activer_champs:></label>
    32                                 <BOUCLE_champs(DATA){source table, #CHAMPS}>
    33                                     <div class="choix">
    34                                         <input type="checkbox"
    35                                                name="cfg_hashtags[#_data:CLE][champs][]"
    36                                                value="#VALEUR"
    37                                                [(#VALEUR|in_array{#ENV{cfg_hashtags/#_data:CLE/champs, #ARRAY}}|oui)checked="checked"]>
    38                                         <label>[(#VAL{info_}|concat{#VALEUR}|_T)]</label>
    39                                     </div>
    40                                 </BOUCLE_champs>
    41                             </li>
    42                         </B_champs>
    43                         <B_groupes>
    44                             <li class="editer[ (#ENV{erreurs/#CLE/groupes}|oui)erreur]">
    45                                 <label><:mots:titre_groupes_mots:></label>
    46                                 <BOUCLE_groupes(DATA){source table, #GROUPES}>
    47                                     <div class="choix">
    48                                         <input type="radio"
    49                                                name="cfg_hashtags[#_data:CLE][groupes]"
    50                                                [(#ENV{cfg_hashtags/#_data:CLE/groupes}|=={#CLE}|oui)checked="checked"]
    51                                                value="#CLE" />
    52                                         <label><img src="#CHEMIN_IMAGE{groupe_mots-16}"/>[ (#VALEUR)]</label>
    53                                     </div>
    54                                 </BOUCLE_groupes>
    55                             </li>
    56                         </B_groupes>
    57                     </ul>
    58                 </fieldset>
    59             </BOUCLE_data>
    60             <p class="boutons">
    61                 <span class="image_loading">&nbsp;</span>
    62                 <input type="submit" class="submit" value="<:bouton_enregistrer:>" />
    63             </p>
    64         </B_data>
    65             <p class="notice">
    66                 <:hashtags:err_activer_utilisation_mots_cles{
    67                                 url1=#URL_ECRIRE{configurer_contenu},
    68                                 url2=#URL_ECRIRE{mots}}:>
    69             </p>
    70         <//B_data>
    71     </form>
     18                        <BOUCLE_data(DATA){source table, #ENV{objets}}{groupes != ''}{titre != ''}{par titre}>
     19                                <fieldset>
     20                                        <h3 class="legend">[<img src="(#CHEMIN_IMAGE{#CLE|concat{-16.png}})" /> ]#TITRE</h3>
     21                                        <div>
     22                                                <input type="checkbox"
     23                                                                name="cfg_hashtags[#_data:CLE][active]"
     24                                                                value="oui"
     25                                                                [(#ENV{cfg_hashtags/#_data:CLE/active}|=={oui}|oui)checked="checked" ]/>
     26                                                <label>[(#VAL{hashtags:activer_hashtags_sur}|_T{#ARRAY{objet,#TITRE}})]</label>
     27                                        </div>
     28                                        <ul class="editer-groupe">
     29                                                <B_champs>
     30                                                        <li class="editer[ (#ENV{erreurs/#CLE/champs}|oui)erreur]">
     31                                                                <label><:ecrire:config_activer_champs:></label>
     32                                                                <BOUCLE_champs(DATA){source table, #CHAMPS}>
     33                                                                        <div class="choix">
     34                                                                                <input type="checkbox"
     35                                                                                                name="cfg_hashtags[#_data:CLE][champs][]"
     36                                                                                                value="#VALEUR"
     37                                                                                                [(#VALEUR|in_array{#ENV{cfg_hashtags/#_data:CLE/champs, #ARRAY}}|oui)checked="checked"]>
     38                                                                                <label>[(#VAL{info_}|concat{#VALEUR}|_T)]</label>
     39                                                                        </div>
     40                                                                </BOUCLE_champs>
     41                                                        </li>
     42                                                </B_champs>
     43                                                <B_groupes>
     44                                                        <li class="editer[ (#ENV{erreurs/#CLE/groupes}|oui)erreur]">
     45                                                                <label><:mots:titre_groupes_mots:></label>
     46                                                                <BOUCLE_groupes(DATA){source table, #GROUPES}>
     47                                                                        <div class="choix">
     48                                                                                <input type="radio"
     49                                                                                                name="cfg_hashtags[#_data:CLE][groupes]"
     50                                                                                                [(#ENV{cfg_hashtags/#_data:CLE/groupes}|=={#CLE}|oui)checked="checked"]
     51                                                                                                value="#CLE" />
     52                                                                                <label><img src="#CHEMIN_IMAGE{groupe_mots-16}"/>[ (#VALEUR)]</label>
     53                                                                        </div>
     54                                                                </BOUCLE_groupes>
     55                                                        </li>
     56                                                </B_groupes>
     57                                        </ul>
     58                                </fieldset>
     59                        </BOUCLE_data>
     60                        <p class="boutons">
     61                                <span class="image_loading">&nbsp;</span>
     62                                <input type="submit" class="submit" value="<:bouton_enregistrer:>" />
     63                        </p>
     64                </B_data>
     65                        <p class="notice">
     66                                <:hashtags:err_activer_utilisation_mots_cles{
     67                                                                url1=#URL_ECRIRE{configurer_contenu},
     68                                                                url2=#URL_ECRIRE{mots}}:>
     69                        </p>
     70                <//B_data>
     71        </form>
    7272</div>
  • _plugins_/hashtags/trunk/formulaires/configurer_hashtags.php

    r95886 r95952  
    55function formulaires_configurer_hashtags_charger(){
    66
    7     $valeurs = array();
    8     $objets = array();
     7        $valeurs = array();
     8        $objets = array();
    99
    10     $tables = lister_tables_objets_sql();
     10        $tables = lister_tables_objets_sql();
    1111
    12     # Recuperer les champs editables suceptibles de recevoir du texte
    13     $pattern = '#^(text|mediumtext|longtext)#';
     12        # Recuperer les champs editables suceptibles de recevoir du texte
     13        $pattern = '#^(text|mediumtext|longtext)#';
    1414
    15     foreach($tables as $key => $value)
    16         if ( $fieldtxt = array_keys(preg_grep($pattern, $value['field'])) )
    17             $objets[$value['table_objet']] = array('champs'=>$fieldtxt, 'titre' => _T($value['texte_objets']));
     15        foreach($tables as $key => $value)
     16                if ( $fieldtxt = array_keys(preg_grep($pattern, $value['field'])) )
     17                        $objets[$value['table_objet']] = array('champs'=>$fieldtxt, 'titre' => _T($value['texte_objets']));
    1818
    19     # Recuperer la config des groupes de mot clefs
    20     if ( $req = sql_allfetsel('id_groupe, titre, tables_liees', 'spip_groupes_mots', "unseul='non'") )
    21         foreach($req as $k => $v)
    22             foreach(explode(',', $v['tables_liees']) as $tablesliees)
    23                 $objets[$tablesliees]['groupes'][$v['id_groupe']] = $v['titre'];
     19        # Recuperer la config des groupes de mot clefs
     20        if ( $req = sql_allfetsel('id_groupe, titre, tables_liees', 'spip_groupes_mots', "unseul='non'") )
     21                foreach($req as $k => $v)
     22                        foreach(explode(',', $v['tables_liees']) as $tablesliees)
     23                                $objets[$tablesliees]['groupes'][$v['id_groupe']] = $v['titre'];
    2424
    25     # Tous renvoyer au formulaire
    26     $valeurs['objets'] = $objets;
    27     $valeurs['cfg_hashtags'] = lire_config('cfg_hashtags');
     25        # Tous renvoyer au formulaire
     26        $valeurs['objets'] = $objets;
     27        $valeurs['cfg_hashtags'] = lire_config('cfg_hashtags');
    2828
    29     return $valeurs;
     29        return $valeurs;
    3030}
    3131
    3232function formulaires_configurer_hashtags_verifier(){
    3333
    34     $erreurs = array();
     34        $erreurs = array();
    3535
    36     # Si on active les hashtags sur un objet éditorial on doit sélectioner le groupe et au moins un champs
    37     foreach(_request('cfg_hashtags') as $k => $v)
    38         if ( $v['active'] AND $v['active'] === 'oui' )
    39             foreach ( array('champs','groupes') as $obligatoire )
    40                 if ( !count($v[$obligatoire]) )
    41                     $erreurs[$k][$obligatoire] = _T('hashtags:err_champs_et_groupe_obligatoire');
     36        # Si on active les hashtags sur un objet éditorial on doit sélectioner le groupe et au moins un champs
     37        foreach(_request('cfg_hashtags') as $k => $v)
     38                if ( $v['active'] AND $v['active'] === 'oui' )
     39                        foreach ( array('champs','groupes') as $obligatoire )
     40                                if ( !count($v[$obligatoire]) )
     41                                        $erreurs[$k][$obligatoire] = _T('hashtags:err_champs_et_groupe_obligatoire');
    4242
    43     return $erreurs;
     43        return $erreurs;
    4444}
    4545
    4646function formulaires_configurer_hashtags_traiter(){
    4747
    48     include_spip('inc/meta');
    49     if ( $cfg_hashtags = _request('cfg_hashtags') ){
    50         ecrire_config('cfg_hashtags',$cfg_hashtags);
    51         $desc['message_ok'] = _T('config_info_enregistree');
    52     }
    53     else
    54         $desc['message_erreur'] = _L('erreur');
     48        include_spip('inc/meta');
     49        if ( $cfg_hashtags = _request('cfg_hashtags') ){
     50                ecrire_config('cfg_hashtags',$cfg_hashtags);
     51                $desc['message_ok'] = _T('config_info_enregistree');
     52        }
     53        else
     54                $desc['message_erreur'] = _L('erreur');
    5555
    56     return $desc;
     56        return $desc;
    5757}
  • _plugins_/hashtags/trunk/hashtags_fonctions.php

    r95886 r95952  
    55function traitements_hashtags($str, $id_groupe=''){
    66
    7     # Pattern hashtags!
    8     $pattern = "~#(!->|->|!)*(\\w|\\')+(?![^<]*[]>|[^<>]*<\\/)~u";
     7        # Pattern hashtags!
     8        $pattern = "~#(!->|->|!)*(\\w|\\')+(?![^<]*[]>|[^<>]*<\\/)~u";
    99
    10     if ( preg_match_all($pattern, $str, $matches) ) {
     10        if ( preg_match_all($pattern, $str, $matches) ) {
    1111
    12         $tagsBrutes = $matches[0];
    13         $tagsPropres = preg_replace('`#(!->|!|->)*`','',$tagsBrutes);
     12                $tagsBrutes = $matches[0];
     13                $tagsPropres = preg_replace('`#(!->|!|->)*`','',$tagsBrutes);
    1414
    15         # Clause where REGEXP... todo: avec like certainement plus rapide ou eventuellement avec in?
    16         $where = array(
    17             "titre REGEXP '" . addslashes(implode(array_unique($tagsPropres), '|')) . "'",
    18             "id_groupe=$id_groupe");
     15                # Clause where REGEXP... todo: avec like certainement plus rapide ou eventuellement avec in?
     16                $where = array(
     17                        "titre REGEXP '" . addslashes(implode(array_unique($tagsPropres), '|')) . "'",
     18                        "id_groupe=$id_groupe");
    1919
    20         $mots = array();
    21         if ( count($tagsPropres) AND $res = sql_allfetsel('id_mot, titre', 'spip_mots', $where) )
    22             foreach ($res as $r)
    23                $mots[$r['titre']] = $r['id_mot'];
     20                $mots = array();
     21                if ( count($tagsPropres) AND $res = sql_allfetsel('id_mot, titre', 'spip_mots', $where) )
     22                        foreach ($res as $r)
     23                                $mots[$r['titre']] = $r['id_mot'];
    2424
    25         $patterns = array();
    26         foreach ($tagsBrutes as $v)
    27             $patterns[] = '/' . $v .  '(?![\w\d])+(?![^<]*[]>|[^<>]*<\\/)/';
     25                $patterns = array();
     26                foreach ($tagsBrutes as $v)
     27                        $patterns[] = '/' . $v .  '(?![\w\d])+(?![^<]*[]>|[^<>]*<\\/)/';
    2828
    29         $replacements = array();
    30         foreach ( $tagsPropres as $k => $v )
    31             if ( $mots[$v] AND $matches[1][$k] === "!->" )
    32                 $replacements[] = "<strong><a href='" . generer_url_entite($mots[$v], 'mot') . "'>" . $v . "</a></strong>";
    33             elseif ( $mots[$v] AND $matches[1][$k] === "->" )
    34                 $replacements[] = "<a href='" . generer_url_entite($mots[$v], 'mot') . "'>" . $v . "</a>";
    35             elseif ( $mots[$v] AND $matches[1][$k] === "!" )
    36                 $replacements[] = "<strong class=\"hashtag\" data-id-mot=\"$mots[$v]\">" . $v . "</strong>";
    37             elseif ( $mots[$v] )
    38                 $replacements[] = "<span class=\"hashtag\" data-id-mot=\"$mots[$v]\">" . $v . "</span>";
     29                $replacements = array();
     30                foreach ( $tagsPropres as $k => $v )
     31                        if ( $mots[$v] AND $matches[1][$k] === "!->" )
     32                                $replacements[] = "<strong><a href='" . generer_url_entite($mots[$v], 'mot') . "'>" . $v . "</a></strong>";
     33                        elseif ( $mots[$v] AND $matches[1][$k] === "->" )
     34                                $replacements[] = "<a href='" . generer_url_entite($mots[$v], 'mot') . "'>" . $v . "</a>";
     35                        elseif ( $mots[$v] AND $matches[1][$k] === "!" )
     36                                $replacements[] = "<strong class=\"hashtag\" data-id-mot=\"$mots[$v]\">" . $v . "</strong>";
     37                        elseif ( $mots[$v] )
     38                                $replacements[] = "<span class=\"hashtag\" data-id-mot=\"$mots[$v]\">" . $v . "</span>";
    3939
    40         return preg_replace($patterns,$replacements,$str);
    41     }
     40                return preg_replace($patterns,$replacements,$str);
     41        }
    4242
    43     return $str;
     43        return $str;
    4444}
  • _plugins_/hashtags/trunk/hashtags_pipelines.php

    r95886 r95952  
    55function hashtags_post_edition($flux){
    66
    7     include_spip('inc/meta');
    8     $cfg = lire_config('cfg_hashtags');
     7        include_spip('inc/meta');
     8        $cfg = lire_config('cfg_hashtags');
    99
    10     $table_objet = $flux['args']['table_objet'];                // 'articles',
    11     $objet = $flux['args']['type'];                             // 'article'
    12     $id_objet = $flux['args']['id_objet'];                      // '23'
    13    
    14     if ( isset($table_objet) || array_key_exists($table_objet,$cfg) ) {
     10        $table_objet = $flux['args']['table_objet'];                // 'articles',
     11        $objet = $flux['args']['type'];                             // 'article'
     12        $id_objet = $flux['args']['id_objet'];                      // '23'
    1513
    16         # Patterns Hashtags!
    17         $pattern = "~#(!->|->|!)*(\\w|\\')+(?![^<]*[]>|[^<>]*<\\/)~u";
     14        if ( isset($table_objet) || array_key_exists($table_objet,$cfg) ) {
    1815
    19         foreach ($cfg[$table_objet]['champs'] as $champ){
     16                # Patterns Hashtags!
     17                $pattern = "~#(!->|->|!)*(\\w|\\')+(?![^<]*[]>|[^<>]*<\\/)~u";
    2018
    21             if ( preg_match_all($pattern, $flux['data'][$champ], $matches) ) {
     19                foreach ($cfg[$table_objet]['champs'] as $champ){
    2220
    23                 # Déclarer le tableau de mots à lier
    24                 $id_mots = array();
     21                        if ( preg_match_all($pattern, $flux['data'][$champ], $matches) ) {
    2522
    26                 # Récuperer les tags contenus  dans le texte et supprimer les doublons éventuels
    27                 $tags = array_unique($matches['0']);
    28                 $tags = preg_replace('`#(!->|!|->)*`','',$tags);
     23                                # Déclarer le tableau de mots à lier
     24                                $id_mots = array();
    2925
    30                 # Verifier si les mots clef n'existent pas déjà sur le groupe demandé
    31                 if ($req = sql_allfetsel('titre, id_mot', 'spip_mots', sql_in('titre', $tags))) {
    32                     foreach ($req as $ligne => $champ) {
    33                         $tagsConnus[] = $champ['titre'];
    34                         $id_mots[] = $champ['id_mot'];
    35                     }
    36                 }
     26                                # Récuperer les tags contenus  dans le texte et supprimer les doublons éventuels
     27                                $tags = array_unique($matches['0']);
     28                                $tags = preg_replace('`#(!->|!|->)*`','',$tags);
    3729
    38                 $tagsACreer = ($tagsConnus)
    39                     ? array_diff($tags, $tagsConnus) : $tags;
     30                                # Verifier si les mots clef n'existent pas déjà sur le groupe demandé
     31                                if ($req = sql_allfetsel('titre, id_mot', 'spip_mots', sql_in('titre', $tags))) {
     32                                                foreach ($req as $ligne => $champ) {
     33                                                $tagsConnus[] = $champ['titre'];
     34                                                $id_mots[] = $champ['id_mot'];
     35                                                }
     36                                }
    4037
    41                 # Création des mots clefs inexistants et recuperation de leur id respectif
    42                 if (count($tagsACreer)) {
     38                                $tagsACreer = ($tagsConnus)
     39                                        ? array_diff($tags, $tagsConnus) : $tags;
    4340
    44                     $grpmot = sql_fetsel('titre', 'spip_groupes_mots');
     41                                # Création des mots clefs inexistants et recuperation de leur id respectif
     42                                if (count($tagsACreer)) {
    4543
    46                     $ins = array();
    47                     foreach ($tagsACreer as $titre)
    48                         $ins[] = array(
    49                             'titre' => $titre,
    50                             'id_groupe' => $cfg[$table_objet]['groupes'],
    51                             'type' => $grpmot['titre'] );
     44                                        $grpmot = sql_fetsel('titre', 'spip_groupes_mots');
    5245
    53                     # Inserer tous les mots puis récuperer les ids ...
    54                     if (count($ins))
    55                         if (sql_insertq_multi("spip_mots", $ins))
    56                             if ($req = sql_allfetsel('id_mot', 'spip_mots', sql_in('titre', $tagsACreer)))
    57                                 foreach ($req as $ligne => $champ)
    58                                     $id_mots[] = $champ['id_mot'];
    59                 }
     46                                        $ins = array();
     47                                        foreach ($tagsACreer as $titre)
     48                                                $ins[] = array(
     49                                                        'titre' => $titre,
     50                                                        'id_groupe' => $cfg[$table_objet]['groupes'],
     51                                                        'type' => $grpmot['titre'] );
    6052
    61                 # Charger l'api d édition de liens
    62                 include_spip('action/editer_liens');
     53                                        # Inserer tous les mots puis récuperer les ids ...
     54                                        if (count($ins))
     55                                                if (sql_insertq_multi("spip_mots", $ins))
     56                                                        if ($req = sql_allfetsel('id_mot', 'spip_mots', sql_in('titre', $tagsACreer)))
     57                                                                foreach ($req as $ligne => $champ)
     58                                                                        $id_mots[] = $champ['id_mot'];
     59                                }
    6360
    64                 # Associer les mots clefs a l'objet!
    65                 if (count($id_mots))
    66                     objet_associer(array("mot" => $id_mots), array($objet => $id_objet));
    67             }
    68         }
    69     }
     61                                # Charger l'api d édition de liens
     62                                include_spip('action/editer_liens');
    7063
    71     return $flux;
     64                                # Associer les mots clefs a l'objet!
     65                                if (count($id_mots))
     66                                        objet_associer(array("mot" => $id_mots), array($objet => $id_objet));
     67                        }
     68                }
     69        }
     70
     71        return $flux;
    7272}
    7373
    7474function hashtags_declarer_tables_interfaces($interfaces) {
    7575
    76     # Ajouter les traitements qui vont bien en fonctions de la config des mot clefs
    77     if (isset($GLOBALS['meta']['cfg_hashtags']) AND $cfg_hashtags = $GLOBALS['meta']['cfg_hashtags'])
    78         foreach (unserialize($cfg_hashtags) as $k => $v)
    79             foreach ($v['champs'] as $champ)
    80                 $interfaces['table_des_traitements'][strtoupper($champ)][$k] =
    81                     isset ( $interfaces['table_des_traitements'][strtoupper($champ)][$k] )
    82                         ? str_replace("%s",
    83                                       "traitements_hashtags(%s, $v[groupes])",
    84                                       $interfaces['table_des_traitements'][strtoupper($champ)][$k])
    85                         : str_replace("%s",
    86                                       "traitements_hashtags(%s, $v[groupes])",
    87                                       $interfaces['table_des_traitements'][strtoupper($champ)][0]);
     76        # Ajouter les traitements qui vont bien en fonctions de la config des mot clefs
     77        if (isset($GLOBALS['meta']['cfg_hashtags']) AND $cfg_hashtags = $GLOBALS['meta']['cfg_hashtags'])
     78                foreach (unserialize($cfg_hashtags) as $k => $v)
     79                        foreach ($v['champs'] as $champ)
     80                                $interfaces['table_des_traitements'][strtoupper($champ)][$k] =
     81                                        isset ( $interfaces['table_des_traitements'][strtoupper($champ)][$k] )
     82                                                ? str_replace("%s",
     83                                                                                "traitements_hashtags(%s, $v[groupes])",
     84                                                                                $interfaces['table_des_traitements'][strtoupper($champ)][$k])
     85                                                : str_replace("%s",
     86                                                                                "traitements_hashtags(%s, $v[groupes])",
     87                                                                                $interfaces['table_des_traitements'][strtoupper($champ)][0]);
    8888
    89     return $interfaces;
     89        return $interfaces;
    9090}
  • _plugins_/hashtags/trunk/lang/hashtags_fr.php

    r95886 r95952  
    55$GLOBALS[$GLOBALS['idx_lang']] = array(
    66
    7     //A
    8     'activer_hashtags_sur' => 'Activer les hashtags sur @objet@',
     7        //A
     8        'activer_hashtags_sur' => 'Activer les hashtags sur @objet@',
    99
    10     //C
    11     //'titre_champs' => 'Champs',
     10        //C
     11        //'titre_champs' => 'Champs',
    1212
    13     //E
    14     'err_champs_et_groupe_obligatoire' => 'Il faut choisir au moins un champ et un groupe de mots-clés.',
    15     'err_activer_utilisation_mots_cles' => 'Afin de configurer le plugin hastags, vous devez d\'abord activer la gestion des groupes de mots-clés sur la
    16                                             <a href="@url1@">page de configuration des contenus du site</a> et
    17                                             parametrer les l\'association des groupe de mot-clefs sur la <a href="@url2@">page de configuration des mots-clés</a>.',
     13        //E
     14        'err_champs_et_groupe_obligatoire' => 'Il faut choisir au moins un champ et un groupe de mots-clés.',
     15        'err_activer_utilisation_mots_cles' => 'Afin de configurer le plugin hastags, vous devez d\'abord activer la gestion des groupes de mots-clés sur la
     16                                                                                        <a href="@url1@">page de configuration des contenus du site</a> et
     17                                                                                        parametrer les l\'association des groupe de mot-clefs sur la <a href="@url2@">page de configuration des mots-clés</a>.',
    1818
    19     //I
    20     'info_formulaire_configurer_hashtags' => 'Parmi les objets listés ci-dessous, veuillez sélectionner les champs sur lesquelles sera utilisé la syntaxe #hashtags. Pour chaque objet choisi, sélectionnez au moins un champ et un groupe de mots-clés.' ,
     19        //I
     20        'info_formulaire_configurer_hashtags' => 'Parmi les objets listés ci-dessous, veuillez sélectionner les champs sur lesquelles sera utilisé la syntaxe #hashtags. Pour chaque objet choisi, sélectionnez au moins un champ et un groupe de mots-clés.' ,
    2121
    22     //T
    23     'titre_configurer_hashtags' => 'Configurer les hashtags',
     22        //T
     23        'titre_configurer_hashtags' => 'Configurer les hashtags',
    2424
    25     //V
    26     'verifier_configuration_des_objets' => 'Veuillez vérifier la configuration des objets ; vous devez devez choisir au moins un champ et un groupe de mots-clés pour chaque objet activé.',
     25        //V
     26        'verifier_configuration_des_objets' => 'Veuillez vérifier la configuration des objets ; vous devez devez choisir au moins un champ et un groupe de mots-clés pour chaque objet activé.',
    2727
    2828);
  • _plugins_/hashtags/trunk/paquet.xml

    r95886 r95952  
    11<paquet
    2     prefix="hashtags"
    3     categorie="edition"
    4     version="0.0.25"
    5     etat="dev"
    6     documentation="http://blog.roxing.net/spip-plugin-hashtags"
    7     compatibilite="[3.0.0;3.1.*]"
    8     logo="prive/themes/spip/images/hashtag-32.png">
     2        prefix="hashtags"
     3        categorie="edition"
     4        version="0.0.25"
     5        etat="dev"
     6        documentation="http://blog.roxing.net/spip-plugin-hashtags"
     7        compatibilite="[3.0.0;3.1.*]"
     8        logo="prive/themes/spip/images/hashtag-32.png"
     9>
    910
    10     <nom>Hashtags</nom>
     11        <nom>Hashtags</nom>
    1112
    12     <auteur lien="http://blog.roxing.net/pierrox">Pierre LASZCZAK</auteur>
    13     <credit>roxing.net</credit>
     13        <auteur lien="http://blog.roxing.net/pierrox">Pierre LASZCZAK</auteur>
     14        <credit>roxing.net</credit>
    1415
    15     <licence>GNU/GPL</licence>
     16        <licence>GNU/GPL</licence>
    1617
    17     <pipeline nom="post_edition" inclure="hashtags_pipelines.php" />
    18     <pipeline nom="declarer_tables_interfaces" inclure="hashtags_pipelines.php" />
     18        <pipeline nom="post_edition" inclure="hashtags_pipelines.php" />
     19        <pipeline nom="declarer_tables_interfaces" inclure="hashtags_pipelines.php" />
    1920
    2021</paquet>
  • _plugins_/hashtags/trunk/prive/squelettes/contenu/configurer_hashtags.html

    r95886 r95952  
    22
    33<div class="ajax">
    4     #FORMULAIRE_CONFIGURER_HASHTAGS
     4        #FORMULAIRE_CONFIGURER_HASHTAGS
    55</div>
Note: See TracChangeset for help on using the changeset viewer.