Changeset 109699 in spip-zone for _squelettes_/gribouille_2


Ignore:
Timestamp:
Mar 26, 2018, 10:47:38 PM (20 months ago)
Author:
nicolas.dorigny@…
Message:

PSR

Location:
_squelettes_/gribouille_2/trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • _squelettes_/gribouille_2/trunk/formulaires/ajouter_page_wiki.php

    r53427 r109699  
    55 *
    66 */
    7 if (!defined("_ECRIRE_INC_VERSION")) return;
     7if (!defined("_ECRIRE_INC_VERSION")) {
     8        return;
     9}
    810
    911include_spip('inc/autoriser');
    1012
    11 function formulaires_ajouter_page_wiki_charger($id_rubrique=''){
    12         if(is_numeric($id_rubrique)){
     13function formulaires_ajouter_page_wiki_charger($id_rubrique = '') {
     14        if (is_numeric($id_rubrique)) {
    1315                if (!autoriser('publierdans', 'rubrique', $id_rubrique)) {
    1416                        $editable = false;
    15                 }else{
     17                }
     18                else {
    1619                        $editable = true;
    1720                }
    18         }else{
     21        }
     22        else {
    1923                $editable = true;
    2024        }
    2125        $valeurs['editable'] = $editable;
     26
    2227        return $valeurs;
    2328}
    2429
    25 function formulaires_ajouter_page_wiki_verifier($id_rubrique=''){
     30function formulaires_ajouter_page_wiki_verifier($id_rubrique = '') {
    2631        $titre = _request('ajouter_page_wiki');
    27         if(preg_match(",http://,",_request('ajouter_page_wiki'))){
     32        if (preg_match(",http://,", $titre)) {
    2833                $erreurs['ajouter_page_wiki'] = _T('gribouille:pas_url');
    2934        }
    30         if(_request('pas_de_robot_merci')){
     35        if (_request('pas_de_robot_merci')) {
    3136                $erreurs['pas_de_robot_merci'] = _T('gribouille:pas_de_robot');
    3237        }
     
    3540}
    3641
    37 function formulaires_ajouter_page_wiki_traiter($id_rubrique=''){
     42function formulaires_ajouter_page_wiki_traiter($id_rubrique = '') {
    3843
    3944        $id_article = null;
    40         $message = array();
    41        
     45        $message    = array();
     46
    4247        // on verifie d'abord qu'un article de ce titre n'existe pas deja
    43         $s = sql_select("id_article","spip_articles","titre="
    44         .sql_quote(_request('ajouter_page_wiki'))." AND statut='publie'");
     48        $s = sql_select("id_article", "spip_articles", "titre="
     49                                                                . sql_quote(_request('ajouter_page_wiki')) . " AND statut='publie'");
    4550        if ($t = sql_fetch($s)) {
    4651                $id_article = $t['id_article'];
    47         } else {
     52        }
     53        else {
    4854                if (autoriser('publierdans', 'rubrique', $id_rubrique)) {
    4955                        include_spip('action/editer_article');
     
    5157                        include_spip('inc/modifier');
    5258                        $r = modifier_contenu('article', $id_article,
    53                                 array('champs' => array('titre')),
    54                                 array(
    55                                         'titre' => _request('ajouter_page_wiki')
    56                                 )
     59                                                                  array('champs' => array('titre')),
     60                                                                  array(
     61                                                                          'titre' => _request('ajouter_page_wiki'),
     62                                                                  )
    5763                        );
    58                         if (function_exists('instituer_article'))
    59                                 instituer_article($id_article,array('statut' => 'publie'));
     64                        if (function_exists('instituer_article')) {
     65                                instituer_article($id_article, array('statut' => 'publie'));
     66                        }
    6067                }
    6168        }
    6269
    63         if (!$id_article)
     70        if (!$id_article) {
    6471                die("Erreur : creation d'article interdite");
     72        }
    6573
    6674        $retour = generer_url_entite($id_article, 'article');
     
    6876        include_spip('inc/headers');
    6977        $message['message_ok'] = redirige_formulaire($retour);
    70         $message['editable'] = false;
     78        $message['editable']   = false;
     79
    7180        return $message;
    7281}
    7382
    74 ?>
  • _squelettes_/gribouille_2/trunk/formulaires/ajouter_rubrique_wiki.php

    r53427 r109699  
    55 *
    66 */
    7 if (!defined("_ECRIRE_INC_VERSION")) return;
     7if (!defined("_ECRIRE_INC_VERSION")) {
     8        return;
     9}
    810
    911include_spip('inc/autoriser');
    1012
    11 function formulaires_ajouter_rubrique_wiki_charger($id_rubrique=''){
    12         if(is_numeric($id_rubrique)){
     13function formulaires_ajouter_rubrique_wiki_charger($id_rubrique = '') {
     14        if (is_numeric($id_rubrique)) {
    1315                if (!autoriser('creerrubriquedans', 'rubrique', $id_rubrique)) {
    1416                        $editable = false;
    15                 }else{
     17                }
     18                else {
    1619                        $editable = true;
    1720                }
    18         }else{
     21        }
     22        else {
    1923                $editable = true;
    2024        }
    2125        $valeurs['editable'] = $editable;
     26
    2227        return $valeurs;
    2328}
    2429
    25 function formulaires_ajouter_rubrique_wiki_verifier($id_rubrique=''){
     30function formulaires_ajouter_rubrique_wiki_verifier($id_rubrique = '') {
    2631        $titre = _request('ajouter_rubrique_wiki');
    27         if(preg_match(",http://,",_request('ajouter_rubrique_wiki'))){
     32        if (preg_match(",http://,", $titre)) {
    2833                $erreurs['ajouter_rubrique_wiki'] = _T('gribouille:pas_url');
    2934        }
    30         if(_request('pas_de_robot_merci')){
     35        if (_request('pas_de_robot_merci')) {
    3136                $erreurs['pas_de_robot_merci'] = _T('gribouille:pas_de_robot');
    3237        }
     
    3540}
    3641
    37 function formulaires_ajouter_rubrique_wiki_traiter($id_rubrique=''){
     42function formulaires_ajouter_rubrique_wiki_traiter($id_rubrique = '') {
    3843
    3944        $id_article = null;
    40         $message = "";
    41        
     45        $message    = "";
     46
    4247        // on verifie d'abord qu'un article de ce titre n'existe pas deja
    43         $s = sql_select("id_rubrique","spip_rubriques","titre="
    44         .sql_quote(_request('ajouter_rubrique_wiki')));
     48        $s = sql_select("id_rubrique", "spip_rubriques", "titre="
     49                                                                 . sql_quote(_request('ajouter_rubrique_wiki')));
    4550        if ($t = sql_fetch($s)) {
    4651                $new_rubrique = $t['id_rubrique'];
    47         } else {
     52        }
     53        else {
    4854                if (autoriser('creerrubriquedans', 'rubrique', $id_rubrique)) {
    4955                        include_spip('action/editer_rubrique');
    5056                        $new_rubrique = insert_rubrique($id_rubrique);
    51                         $c = array('titre' => _request('ajouter_rubrique_wiki'));
    52                         revisions_rubriques($new_rubrique,$c);
     57                        $c            = array('titre' => _request('ajouter_rubrique_wiki'));
     58                        revisions_rubriques($new_rubrique, $c);
    5359                }
    5460        }
    5561
    56         if (!$new_rubrique)
     62        if (!$new_rubrique) {
    5763                die("Erreur : creation de rubrique interdite");
     64        }
    5865
    5966        $retour = generer_url_entite($new_rubrique, 'rubrique');
     
    6168        include_spip('inc/headers');
    6269        $message .= redirige_formulaire($retour);
     70
    6371        return $message;
    6472}
    6573
    66 ?>
  • _squelettes_/gribouille_2/trunk/gribouille_autoriser.php

    r109698 r109699  
    11<?php
    2 if (!defined("_ECRIRE_INC_VERSION")) return;
    3 /* pour que le pipeline ne rale pas ! */
    4 function gribouille_autoriser(){}
     2/**
     3 * Plugin / Squelettes Gribouille
     4 * © Fil
     5 * Distribue sous licence GNU/GPL
     6 */
     7
     8if (!defined("_ECRIRE_INC_VERSION")) {
     9        return;
     10}
     11
     12function gribouille_autoriser() { }
    513
    614/**
     
    816 * - On se base d'abord sur l'autorisation de base de SPIP
    917 * - Sinon on se base sur la configuration du cfg que nous avons faite
    10  * 
     18 *
    1119 * @param object $faire
    1220 * @param object $quoi
     
    1422 * @param object $qui
    1523 * @param object $opts
    16  * @return
     24 *
     25 * @return boolean
    1726 */
    18 function autoriser_article_modifier($faire,$quoi,$id,$qui,$opts){
     27function autoriser_article_modifier($faire, $quoi, $id, $qui, $opts) {
    1928        $autorise = false;
    20         if(autoriser_article_modifier_dist($faire,$quoi,$id,$qui,$opts)){
    21                 return autoriser_article_modifier_dist($faire,$quoi,$id,$qui,$opts);
     29        if (autoriser_article_modifier_dist($faire, $quoi, $id, $qui, $opts)) {
     30                return autoriser_article_modifier_dist($faire, $quoi, $id, $qui, $opts);
    2231        }
    23         if(function_exists('lire_config')){
     32        if (function_exists('lire_config')) {
    2433                $secteurs_wiki = lire_config('gribouille/secteurs_wiki', array());
    25                 $id_secteur = sql_getfetsel('id_secteur','spip_articles','id_article='.intval($id));
    26                 if(in_array($id_secteur,$secteurs_wiki)){
     34                $id_secteur    = sql_getfetsel('id_secteur', 'spip_articles', 'id_article=' . intval($id));
     35                if (in_array($id_secteur, $secteurs_wiki)) {
    2736                        $type = lire_config('gribouille/autorisations/ecrire_type', 'webmestre');
    28                         switch($type) {
     37                        switch ($type) {
    2938                                case 'webmestre':
    3039                                        // Webmestres uniquement
     
    3342                                case 'par_statut':
    3443                                        // Traitement spécifique pour la valeur 'tous'
    35                                         if(in_array('tous',lire_config('gribouille/autorisations/ecrire_statuts',array()))){
     44                                        if (in_array('tous', lire_config('gribouille/autorisations/ecrire_statuts', array()))) {
    3645                                                return true;
    3746                                        }
    3847                                        // Autorisation par statut
    39                                         $autorise = in_array($qui['statut'], lire_config('gribouille/autorisations/ecrire_statuts',array('0minirezo')));
     48                                        $autorise = in_array($qui['statut'], lire_config('gribouille/autorisations/ecrire_statuts', array('0minirezo')));
    4049                                        break;
    4150                                case 'par_auteur':
    4251                                        // Autorisation par id d'auteurs
    43                                         $autorise = in_array($qui['id_auteur'], lire_config('gribouille/autorisations/ecrire_auteurs',array()));
     52                                        $autorise = in_array($qui['id_auteur'], lire_config('gribouille/autorisations/ecrire_auteurs', array()));
    4453                                        break;
    4554                        }
    4655                }
    47         }else{
    48                 return autoriser('modifier','article',$id,$qui,$opts);
    4956        }
     57        else {
     58                return autoriser('modifier', 'article', $id, $qui, $opts);
     59        }
     60
    5061        return $autorise;
    5162}
     
    5566 * - On se base d'abord sur l'autorisation de base de SPIP
    5667 * - Sinon on se base sur la configuration du cfg que nous avons faite
    57  * 
     68 *
    5869 * @param object $faire
    5970 * @param object $quoi
     
    6172 * @param object $qui
    6273 * @param object $opts
    63  * @return
     74 *
     75 * @return boolean
    6476 */
    65 function autoriser_rubrique_publierdans($faire,$quoi,$id,$qui,$opts){
     77function autoriser_rubrique_publierdans($faire, $quoi, $id, $qui, $opts) {
    6678        $autorise = false;
    67         if(autoriser_rubrique_publierdans_dist($faire,$quoi,$id,$qui,$opts)){
    68                 return autoriser_rubrique_publierdans_dist($faire,$quoi,$id,$qui,$opts);
     79        if (autoriser_rubrique_publierdans_dist($faire, $quoi, $id, $qui, $opts)) {
     80                return autoriser_rubrique_publierdans_dist($faire, $quoi, $id, $qui, $opts);
    6981        }
    70         if(function_exists('lire_config')){
     82        if (function_exists('lire_config')) {
    7183                $secteurs_wiki = lire_config('gribouille/secteurs_wiki', array());
    72                 $id_secteur = sql_getfetsel('id_secteur','spip_rubriques','id_rubrique='.intval($id));
    73                 if(in_array($id_secteur,$secteurs_wiki)){
     84                $id_secteur    = sql_getfetsel('id_secteur', 'spip_rubriques', 'id_rubrique=' . intval($id));
     85                if (in_array($id_secteur, $secteurs_wiki)) {
    7486                        $type = lire_config('gribouille/autorisations/ecrire_type', 'webmestre');
    75                         switch($type) {
     87                        switch ($type) {
    7688                                case 'webmestre':
    7789                                        // Webmestres uniquement
     
    8092                                case 'par_statut':
    8193                                        // Traitement spécifique pour la valeur 'tous'
    82                                         if(in_array('tous',lire_config('gribouille/autorisations/ecrire_statuts',array()))){
     94                                        if (in_array('tous', lire_config('gribouille/autorisations/ecrire_statuts', array()))) {
    8395                                                return true;
    8496                                        }
    8597                                        // Autorisation par statut
    86                                         $autorise = in_array($qui['statut'], lire_config('gribouille/autorisations/ecrire_statuts',array('0minirezo')));
     98                                        $autorise = in_array($qui['statut'], lire_config('gribouille/autorisations/ecrire_statuts', array('0minirezo')));
    8799                                        break;
    88100                                case 'par_auteur':
    89101                                        // Autorisation par id d'auteurs
    90                                         $autorise = in_array($qui['id_auteur'], lire_config('gribouille/autorisations/ecrire_auteurs',array()));
     102                                        $autorise = in_array($qui['id_auteur'], lire_config('gribouille/autorisations/ecrire_auteurs', array()));
    91103                                        break;
    92104                        }
    93105                }
    94         }else{
    95                 return autoriser('publier_dans','rubrique',$id,$qui,$opts);
    96106        }
     107        else {
     108                return autoriser('publier_dans', 'rubrique', $id, $qui, $opts);
     109        }
     110
    97111        return $autorise;
    98112}
     
    105119 * Si oui, on passe outre la configuration
    106120 * - On vérifie ensuite si on est autorisé dans le CFG
    107  * 
     121 *
    108122 * @param string $faire L'action à réaliser
    109  * @param string $quoi L'objet sur lequel on réalise cette action
    110  * @param int $id L'id de l'objet en question
    111  * @param array $qui L'array des infos de session de l'auteur connecté
     123 * @param string $quoi  L'objet sur lequel on réalise cette action
     124 * @param int    $id    L'id de l'objet en question
     125 * @param array  $qui  L'array des infos de session de l'auteur connecté
    112126 * @param object $opts
    113  * @return true ou false
     127 *
     128 * @return boolean
    114129 */
    115 function autoriser_rubrique_voir($faire,$quoi,$id,$qui,$opts){
     130function autoriser_rubrique_voir($faire, $quoi, $id, $qui, $opts) {
    116131        $autorise = false;
    117         if(autoriser('publierdans','rubrique',$id,$qui,$opts)){
    118                 return autoriser('publierdans','rubrique',$id,$qui,$opts);
     132        if (autoriser('publierdans', 'rubrique', $id, $qui, $opts)) {
     133                return autoriser('publierdans', 'rubrique', $id, $qui, $opts);
    119134        }
    120         if(function_exists('lire_config')){
     135        if (function_exists('lire_config')) {
    121136                $secteurs_wiki = lire_config('gribouille/secteurs_wiki', array());
    122                 $id_secteur = sql_getfetsel('id_secteur','spip_rubriques','id_rubrique='.intval($id));
    123                 if(in_array($id_secteur,$secteurs_wiki)){
     137                $id_secteur    = sql_getfetsel('id_secteur', 'spip_rubriques', 'id_rubrique=' . intval($id));
     138                if (in_array($id_secteur, $secteurs_wiki)) {
    124139                        $type = lire_config('gribouille/autorisations/voir_type', 'webmestre');
    125                         switch($type) {
     140                        switch ($type) {
    126141                                case 'webmestre':
    127142                                        // Webmestres uniquement
     
    130145                                case 'par_statut':
    131146                                        // Traitement spécifique pour la valeur 'tous'
    132                                         if(in_array('tous',lire_config('gribouille/autorisations/voir_statuts',array()))){
     147                                        if (in_array('tous', lire_config('gribouille/autorisations/voir_statuts', array()))) {
    133148                                                return true;
    134149                                        }
    135150                                        // Autorisation par statut
    136                                         $autorise = in_array($qui['statut'], lire_config('gribouille/autorisations/voir_statuts',array('0minirezo')));
     151                                        $autorise = in_array($qui['statut'], lire_config('gribouille/autorisations/voir_statuts', array('0minirezo')));
    137152                                        break;
    138153                                case 'par_auteur':
    139154                                        // Autorisation par id d'auteurs
    140                                         $autorise = in_array($qui['id_auteur'], lire_config('gribouille/autorisations/voir_auteurs',array()));
     155                                        $autorise = in_array($qui['id_auteur'], lire_config('gribouille/autorisations/voir_auteurs', array()));
    141156                                        break;
    142157                        }
    143158                }
    144         }else{
    145                 return autoriser('voir','rubrique',$id,$qui,$opts);
    146159        }
     160        else {
     161                return autoriser('voir', 'rubrique', $id, $qui, $opts);
     162        }
     163
    147164        return $autorise;
    148165}
    149 function gribouille_verifier_webmestre($qui){
    150         $webmestre =  false;
    151         $webmestre = in_array($qui['id_auteur'],explode(':', _ID_WEBMESTRES));
    152         if(!$webmestre && ($qui['webmestre']=='oui')){
    153                 $webmestre =  true;
     166
     167function gribouille_verifier_webmestre($qui) {
     168        $webmestre = in_array($qui['id_auteur'], explode(':', _ID_WEBMESTRES));
     169        if (!$webmestre && ($qui['webmestre'] == 'oui')) {
     170                $webmestre = true;
    154171        }
    155         return $webmestres;
     172
     173        return $webmestre;
    156174}
    157 ?>
     175
  • _squelettes_/gribouille_2/trunk/gribouille_fonctions.php

    r109697 r109699  
    11<?php
    2 if (!defined("_ECRIRE_INC_VERSION")) return;
    32/**
    4  * Affiche le diff d'un objet
     3 * Plugin / Squelettes Gribouille
     4 * © Fil
     5 * Distribue sous licence GNU/GPL
     6 */
     7
     8if (!defined("_ECRIRE_INC_VERSION")) {
     9        return;
     10}
     11
     12/**
     13 * Affiche le diff d'un objet
    514 * (uniquement pour les articles en 2.0.X)
    615 * Ex: [<small> (#ID_ARTICLE|affiche_diff{article,#ID_VERSION,diff}|supprimer_tags|couper{50})</small>]
    7  * 
    8  * @param int $id_objet
     16 *
     17 * @param int    $id_objet
    918 * @param string $objet
    10  * @param int $id_version
     19 * @param int    $id_version
    1120 * @param string $format [optional]
    12  * @return
     21 *
     22 * @return string
    1323 */
    14 function affiche_diff($id_objet,$objet, $id_version, $format='complet') {
     24function affiche_diff($id_objet, $objet, $id_version, $format = 'complet') {
    1525        include_spip('inc/suivi_versions');
    16        
    17         if($GLOBALS['spip_version_branche'] < '2.1'){
    18                 if($objet == 'article'){
    19                         $textes = revision_comparee($id_objet, $id_version, $format);   
    20                 }else{
     26
     27        if ($GLOBALS['spip_version_branche'] < '2.1') {
     28                if ($objet == 'article') {
     29                        $textes = revision_comparee($id_objet, $id_version, $format);
     30                }
     31                else {
    2132                        return;
    2233                }
    23         }else{
    24                 $textes = revision_comparee($id_objet,$objet, $id_version, $format);
     34        }
     35        else {
     36                $textes = revision_comparee($id_objet, $objet, $id_version, $format);
    2537        }
    2638
     
    2941                $texte = propre_diff($texte);
    3042
    31                 if ($champ == 'titre')
     43                if ($champ == 'titre') {
    3244                        $texte = "<h1>$texte</h1>";
    33                 else
     45                }
     46                else {
    3447                        $texte = "<div class='$k'>$texte</div>";
     48                }
    3549
    36                 $ret .= "\n<hr/>\n". $texte;
     50                $ret .= "\n<hr/>\n" . $texte;
    3751        }
    3852
     
    4660/**
    4761 * Affiche le nom de l'auteur à partir de son id_auteur
    48  * 
     62 *
    4963 * @param object $auteur
    50  * @return
     64 *
     65 * @return string
    5166 */
    5267function affiche_auteur_diff($auteur) {
    5368        // Si c'est un nombre, c'est un auteur de la table spip_auteurs
    5469        if ($auteur == intval($auteur)
    55         AND $s = sql_getfetsel("nom","spip_auteurs","id_auteur=".intval($auteur))) {
     70                AND $s = sql_getfetsel("nom", "spip_auteurs", "id_auteur=" . intval($auteur))) {
    5671                return typo($s);
    57         } else {
     72        }
     73        else {
    5874                return $auteur;
    5975        }
    6076}
    6177
    62 ?>
  • _squelettes_/gribouille_2/trunk/gribouille_options.php

    r109697 r109699  
    11<?php
    2 if (!defined("_ECRIRE_INC_VERSION")) return;
     2/**
     3 * Plugin / Squelettes Gribouille
     4 * © Fil
     5 * Distribue sous licence GNU/GPL
     6 */
     7
     8if (!defined("_ECRIRE_INC_VERSION")) {
     9        return;
     10}
     11
    312// {recherche} ou {recherche susan}
    413// https://www.spip.net/@recherche
     
    615function critere_recherche($idb, &$boucles, $crit) {
    716
    8         $boucle = &$boucles[$idb];
     17        $boucle = &$boucles[ $idb ];
    918
    10         if (isset($crit->param[0]))
    11                 $quoi = calculer_liste($crit->param[0], array(), $boucles, $boucles[$idb]->id_parent);
    12         else
     19        if (isset($crit->param[0])) {
     20                $quoi = calculer_liste($crit->param[0], array(), $boucles, $boucles[ $idb ]->id_parent);
     21        }
     22        else {
    1323                $quoi = '@$Pile[0]["recherche"]';
    14         $tout = $boucle->modificateur["tout"] ? 1 : 0;
     24        }
     25        $tout         = $boucle->modificateur["tout"] ? 1 : 0;
    1526        $boucle->hash .= '
    1627        // RECHERCHE
    1728        $prepare_recherche = charger_fonction(\'prepare_recherche\', \'inc\');
    18         list($rech_select, $rech_where) = $prepare_recherche('.$quoi.', "'.$boucle->id_table.'", "'.$crit->cond.'","' . $boucle->sql_serveur . '",'.$tout.');
     29        list($rech_select, $rech_where) = $prepare_recherche(' . $quoi . ', "' . $boucle->id_table . '", "' . $crit->cond . '","' . $boucle->sql_serveur . '",' . $tout . ');
    1930        ';
    2031
    2132        $t = $boucle->id_table . '.' . $boucle->primary;
    22         if (!in_array($t, $boucles[$idb]->select))
    23           $boucle->select[]= $t; # pour postgres, neuneu ici
    24         $boucle->join['resultats']=array("'".$boucle->id_table."'","'id'","'".$boucle->primary."'");
    25         $boucle->from['resultats']='spip_resultats';
    26         $boucle->select[]= '$rech_select';
     33        if (!in_array($t, $boucles[ $idb ]->select)) {
     34                $boucle->select[] = $t;
     35        } # pour postgres, neuneu ici
     36        $boucle->join['resultats'] = array(
     37                "'" . $boucle->id_table . "'",
     38                "'id'",
     39                "'" . $boucle->primary . "'",
     40        );
     41        $boucle->from['resultats'] = 'spip_resultats';
     42        $boucle->select[]          = '$rech_select';
    2743        //$boucle->where[]= "\$rech_where?'resultats.id=".$boucle->id_table.".".$boucle->primary."':''";
    2844
    2945        // et la recherche trouve
    30         $boucle->where[]= '$rech_where?$rech_where:\'\'';
     46        $boucle->where[] = '$rech_where?$rech_where:\'\'';
    3147}
    3248
    33         @define('_DELAI_CACHE_resultats',600);
    34        
     49@define('_DELAI_CACHE_resultats', 600);
     50
    3551// Preparer les listes id_article IN (...) pour les parties WHERE
    3652// et points =  des requetes du moteur de recherche
    3753// https://code.spip.net/@inc_prepare_recherche_dist
    38 function inc_prepare_recherche($recherche, $table='articles', $cond=false, $serveur='',$tout=false) {
     54function inc_prepare_recherche($recherche, $table = 'articles', $cond = false, $serveur = '', $tout = false) {
    3955        include_spip('inc/rechercher');
    4056        static $cache = array();
    41         $delai_fraicheur = min(_DELAI_CACHE_resultats,time()-$GLOBALS['meta']['derniere_modif']);
     57        $delai_fraicheur = min(_DELAI_CACHE_resultats, time() - $GLOBALS['meta']['derniere_modif']);
    4258
    4359        // si recherche n'est pas dans le contexte, on va prendre en globals
    4460        // ca permet de faire des inclure simple.
    45         if (!isset($recherche) AND isset($GLOBALS['recherche']))
     61        if (!isset($recherche) AND isset($GLOBALS['recherche'])) {
    4662                $recherche = $GLOBALS['recherche'];
     63        }
    4764
    4865        // traiter le cas {recherche?}
    49         if ($cond AND !strlen($recherche))
    50                 return array("0 as points" /* as points */, /* where */ '');
    51                
    52        
     66        if ($cond AND !strlen($recherche)) {
     67                return array(
     68                        "0 as points"
     69                        /* as points */,
     70                        /* where */
     71                        '',
     72                );
     73        }
     74
    5375        $rechercher = false;
    5476
    55         if (!isset($cache[$recherche][$table])){
    56                 $hash = substr(md5($recherche . $table),0,16);
    57                 $row = sql_fetsel('UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(maj) AS fraicheur','spip_resultats',"recherche='$hash'",'','fraicheur DESC','0,1','',$serveur);
    58                 if (!$row OR ($row['fraicheur']>$delai_fraicheur)){
    59                         $rechercher = true;
     77        if (!isset($cache[ $recherche ][ $table ])) {
     78                $hash = substr(md5($recherche . $table), 0, 16);
     79                $row  = sql_fetsel('UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(maj) AS fraicheur', 'spip_resultats', "recherche='$hash'", '', 'fraicheur DESC', '0,1', '', $serveur);
     80                if (!$row OR ($row['fraicheur'] > $delai_fraicheur)) {
     81                        $rechercher = true;
    6082                }
    61                 $cache[$recherche][$table] = array("resultats.points AS points","recherche='$hash'");
     83                $cache[ $recherche ][ $table ] = array(
     84                        "resultats.points AS points",
     85                        "recherche='$hash'",
     86                );
    6287        }
    6388
     
    6691                //$tables = liste_des_champs();
    6792                $x = preg_replace(',s$,', '', $table); // eurk
    68                 if ($x == 'syndic') $x = 'site';
     93                if ($x == 'syndic') {
     94                        $x = 'site';
     95                }
    6996                $points = recherche_en_base($recherche,
    70                         $x,
    71                         array(
    72                                 'score' => true,
    73                                 'toutvoir' => true,
    74                                 'jointures' => true
    75                                 ),
    76                                             $serveur);
    77                 $points = $points[$x];
     97                                                                        $x,
     98                                                                        array(
     99                                                                                'score'    => true,
     100                                                                                'toutvoir' => true,
     101                                                                                'jointures' => true,
     102                                                                        ),
     103                                                                        $serveur);
     104                $points = $points[ $x ];
    78105
    79106                // permettre aux plugins de modifier le resultat
    80                 $points = pipeline('prepare_recherche',array(
    81                         'args'=>array('type'=>$x,'recherche'=>$recherche,'serveur'=>$serveur,'tout'=>$tout),
    82                         'data'=>$points
     107                $points = pipeline('prepare_recherche', array(
     108                        'args' => array(
     109                                'type'      => $x,
     110                                'recherche' => $recherche,
     111                                'serveur'   => $serveur,
     112                                'tout'      => $tout,
     113                        ),
     114                        'data' => $points,
    83115                ));
    84116
    85117                // supprimer les anciens resultats de cette recherche
    86118                // et les resultats trop vieux avec une marge
    87                 sql_delete('spip_resultats','(maj<DATE_SUB(NOW(), INTERVAL '.($delai_fraicheur+100)." SECOND)) OR (recherche='$hash')",$serveur);
     119                sql_delete('spip_resultats', '(maj<DATE_SUB(NOW(), INTERVAL ' . ($delai_fraicheur + 100) . " SECOND)) OR (recherche='$hash')", $serveur);
    88120
    89121                // inserer les resultats dans la table de cache des resultats
    90                 if (count($points)){
     122                if (count($points)) {
    91123                        $tab_couples = array();
    92                         foreach ($points as $id => $p){
     124                        foreach ($points as $id => $p) {
    93125                                $tab_couples[] = array(
    94126                                        'recherche' => $hash,
    95                                         'id' => $id,
    96                                         'points' => $p['score']
     127                                        'id'        => $id,
     128                                        'points'    => $p['score'],
    97129                                );
    98130                        }
    99                         sql_insertq_multi('spip_resultats',$tab_couples,array(),$serveur);
     131                        sql_insertq_multi('spip_resultats', $tab_couples, array(), $serveur);
    100132                }
    101133        }
    102134
    103         return $cache[$recherche][$table];
     135        return $cache[ $recherche ][ $table ];
    104136}
    105137
     
    107139        return true;
    108140}
    109 ?>
     141
  • _squelettes_/gribouille_2/trunk/gribouille_pipelines.php

    r109698 r109699  
    11<?php
    2 if (!defined("_ECRIRE_INC_VERSION")) return;
    32/**
    43 * Plugin / Squelettes Gribouille
     
    76 */
    87
     8if (!defined("_ECRIRE_INC_VERSION")) {
     9        return;
     10}
    911
    1012/**
     
    1315 * d'une rubrique de Gribouille
    1416 *
    15  * @param object $flux
    16  * @return
     17 * @param array $flux
     18 *
     19 * @return array
    1720 */
    18 function gribouille_styliser($flux){
    19         /**
    20          * Gribouille ne s'active que sur les rubriques et les articles
    21          */
     21function gribouille_styliser($flux) {
     22        // Gribouille ne s'active que sur les rubriques et les articles
    2223        if (($fond = $flux['args']['fond'])
    23         AND in_array($fond, array('article','rubrique'))) {
     24                AND in_array($fond, array(
     25                        'article',
     26                        'rubrique',
     27                ))) {
    2428
    2529                $ext = $flux['args']['ext'];
    26                
    27                 /**
    28                  * Si la rubrique fait partie du secteur défini dans la configuration on change son fond
    29                  */
    30                 if($id_rubrique = $flux['args']['id_rubrique']) {
     30
     31                // Si la rubrique fait partie du secteur défini dans la configuration on change son fond
     32                if ($id_rubrique = $flux['args']['id_rubrique']) {
    3133                        $id_secteur = sql_getfetsel('id_secteur', 'spip_rubriques', 'id_rubrique=' . intval($id_rubrique));
    32                         if (in_array($id_secteur, lire_config('gribouille/secteurs_wiki', array(0,-1)))) {
     34                        if (in_array($id_secteur, lire_config('gribouille/secteurs_wiki', array(
     35                                0,
     36                                -1,
     37                        )))) {
    3338                                include_spip('inc/autoriser');
    34                                 /**
    35                                  * On vérifie si nous sommes autorisé à voir le Wiki
    36                                  */
    37                                 if(autoriser('voir','rubrique',$id_rubrique,$GLOBALS['visiteur_session'])){
     39                                // On vérifie si nous sommes autorisé à voir le Wiki
     40                                if (autoriser('voir', 'rubrique', $id_rubrique, $GLOBALS['visiteur_session'])) {
    3841                                        if ($squelette = test_squelette_gribouille($fond, $ext)) {
    3942                                                $flux['data'] = $squelette;
    4043                                        }
    41                                 }else{
     44                                }
     45                                else {
    4246                                        unset($flux['args']);
    4347                                }
     
    4549                }
    4650        }
     51
    4752        return $flux;
    4853}
     
    5055/**
    5156 * Fonction qui vérifie la présence d'un squelette gribouille disponible
    52  * 
     57 *
    5358 * @param string $fond article ou rubrique
    54  * @param string $ext extension des squelettes (html)
    55  * @return
     59 * @param string $ext  extension des squelettes (html)
     60 *
     61 * @return mixed
    5662 */
    5763function test_squelette_gribouille($fond, $ext) {
    58         if ($squelette = find_in_path($fond."_gribouille.$ext")) {
     64        if ($squelette = find_in_path($fond . "_gribouille.$ext")) {
    5965                return substr($squelette, 0, -strlen(".$ext"));
    6066        }
     67
    6168        return false;
    6269}
     
    6774 *
    6875 * @param array $flux
     76 *
    6977 * @return array
    7078 */
    71 function gribouille_prepare_recherche($flux){
    72         if(lire_config('gribouille/exclure_recherche') == 'on'){
     79function gribouille_prepare_recherche($flux) {
     80        if (lire_config('gribouille/exclure_recherche') == 'on') {
    7381                $id_secteurs = lire_config('gribouille/secteurs_wiki');
    74                 if(is_array($id_secteurs)){
    75                         if ($flux['args']['type']=='article'
    76                                 AND $flux['args']['tout']=='0'
    77                           AND $points = $flux['data']){
    78                           $serveur =  $flux['args']['serveur'];
    79                                 $p2 = array();
    80                                 $s = sql_select("id_article", "spip_articles", "statut='publie' AND ".sql_in('id_article', array_keys($points), '','','','',$serveur)." AND ".sql_in('id_secteur', array_values($id_secteurs), 'NOT','','','',$serveur));
    81                                 while ($t = sql_fetch($s, $serveur)){
    82                                         $p2[$t['id_article']] ='';
     82                if (is_array($id_secteurs)) {
     83                        if ($flux['args']['type'] == 'article'
     84                                AND $flux['args']['tout'] == '0'
     85                                AND $points = $flux['data']) {
     86                                $serveur = $flux['args']['serveur'];
     87                                $p2      = array();
     88                                $s       = sql_select(
     89                                        "id_article",
     90                                        "spip_articles",
     91                                        "statut='publie'
     92                                                AND " . sql_in('id_article', array_keys($points), '', '', '', '', $serveur) . "
     93                                                AND " . sql_in('id_secteur', array_values($id_secteurs), 'NOT', '', '', '', $serveur)
     94                                );
     95                                while ($t = sql_fetch($s, $serveur)) {
     96                                        $p2[ $t['id_article'] ] = '';
    8397                                }
    84                                 $p2 = array_intersect_key($points,$p2);
     98                                $p2           = array_intersect_key($points, $p2);
    8599                                $flux['data'] = $p2;
    86100                        }
    87                         if ($flux['args']['type']=='rubrique'
    88                           AND $flux['args']['tout']=='0'
    89                           AND $points = $flux['data']){
    90                           $serveur =  $flux['args']['serveur'];
    91                                 $p2 = array();
    92                                 $s = sql_select("id_rubrique", "spip_rubriques", "statut='publie' AND ".sql_in('id_rubrique', array_keys($points), '','','','',$serveur)." AND ".sql_in('id_secteur', array_values($id_secteurs), 'NOT','','','',$serveur));
    93                                 while ($t = sql_fetch($s, $serveur)){
    94                                         $p2[$t['id_article']] ='';
     101                        if ($flux['args']['type'] == 'rubrique'
     102                                AND $flux['args']['tout'] == '0'
     103                                AND $points = $flux['data']) {
     104                                $serveur = $flux['args']['serveur'];
     105                                $p2      = array();
     106                                $s       = sql_select(
     107                                        "id_rubrique",
     108                                        "spip_rubriques",
     109                                        "statut='publie'
     110                                                AND " . sql_in('id_rubrique', array_keys($points), '', '', '', '', $serveur) . "
     111                                                AND " . sql_in('id_secteur', array_values($id_secteurs), 'NOT', '', '', '', $serveur)
     112                                );
     113                                while ($t = sql_fetch($s, $serveur)) {
     114                                        $p2[ $t['id_article'] ] = '';
    95115                                }
    96                                 $p2 = array_intersect_key($points,$p2);
     116                                $p2           = array_intersect_key($points, $p2);
    97117                                $flux['data'] = $p2;
    98118                        }
    99119                }
    100120        }
     121
    101122        return $flux;
    102123}
    103 ?>
     124
  • _squelettes_/gribouille_2/trunk/lang/gribouille_fr.php

    r109698 r109699  
    11<?php
     2// This is a SPIP language file  --  Ceci est un fichier langue de SPIP
    23
    3 // This is a SPIP language file  --  Ceci est un fichier langue de SPIP
    4 // Fichier source, a modifier dans svn://trac.rezo.net/spip-zone/_plugins_/_test_/inscription2/inscription2_2_0/lang
    5 if (!defined("_ECRIRE_INC_VERSION")) return;
     4if (!defined("_ECRIRE_INC_VERSION")) {
     5        return;
     6}
    67
    7 $GLOBALS[$GLOBALS['idx_lang']] = array(
    8        
     8$GLOBALS[ $GLOBALS['idx_lang'] ] = array(
     9
    910        // A
    10         'ajouter_article_wiki' => 'Ajouter une page',
    11         'ajouter_rubrique_wiki' => 'Ajouter une rubrique',
    12        
     11        'ajouter_article_wiki'                      => 'Ajouter une page',
     12        'ajouter_rubrique_wiki'                     => 'Ajouter une rubrique',
     13
    1314        // C
    14         'cette_version' => 'Cette version',
    15         'cfg_aucun_secteur' => 'Aucun',
    16         'cfg_description_titre' => 'Configuration du plugin Gribouille',
    17         'cfg_inf_type_autorisation' => 'Si vous choisissez par statut ou par auteur, il vous sera demand&eacute; ci-dessous votre s&eacute;lection de statuts ou d\'auteurs.',
    18         'cfg_lbl_autorisation_auteurs' => 'Autoriser par liste d\'auteurs',
    19         'cfg_lbl_autorisation_statuts' => 'Autoriser par statut d\'auteurs',
    20         'cfg_lbl_autorisation_webmestre' => 'Autoriser les webmestres uniquement',
    21         'cfg_lbl_liste_auteurs' => 'Auteurs du site',
    22         'cfg_lbl_statuts_auteurs' => 'Statuts possibles',
    23         'cfg_lbl_type_autorisation' => 'M&eacute;thode d\'autorisation',
    24         'cfg_lgd_autorisation_ecrire' => 'Autoriser &agrave; modifier le Wiki',
    25         'cfg_lgd_autorisation_voir' => 'Autoriser &agrave; voir le Wiki',
    26         'cfg_secteur_wiki' => 'Secteur(s) Wiki',
    27         'click_ajout_texte' => 'double-cliquez pour ajouter du texte',
    28        
     15        'cette_version'                             => 'Cette version',
     16        'cfg_aucun_secteur'                         => 'Aucun',
     17        'cfg_description_titre'                     => 'Configuration du plugin Gribouille',
     18        'cfg_inf_type_autorisation'                 => 'Si vous choisissez par statut ou par auteur, il vous sera demand&eacute; ci-dessous votre s&eacute;lection de statuts ou d\'auteurs.',
     19        'cfg_lbl_autorisation_auteurs'              => 'Autoriser par liste d\'auteurs',
     20        'cfg_lbl_autorisation_statuts'              => 'Autoriser par statut d\'auteurs',
     21        'cfg_lbl_autorisation_webmestre'            => 'Autoriser les webmestres uniquement',
     22        'cfg_lbl_liste_auteurs'                     => 'Auteurs du site',
     23        'cfg_lbl_statuts_auteurs'                   => 'Statuts possibles',
     24        'cfg_lbl_type_autorisation'                 => 'M&eacute;thode d\'autorisation',
     25        'cfg_lgd_autorisation_ecrire'               => 'Autoriser &agrave; modifier le Wiki',
     26        'cfg_lgd_autorisation_voir'                 => 'Autoriser &agrave; voir le Wiki',
     27        'cfg_secteur_wiki'                          => 'Secteur(s) Wiki',
     28        'click_ajout_texte'                         => 'double-cliquez pour ajouter du texte',
     29
    2930        // D
    30         'deconnexion' => 'd&#233;connexion',
    31         'derniers_changements' => 'Derniers changements',
    32         'disclaimer' => 'Ce site fonctionne avec le squelette <a href="https://contrib.spip.net/Gribouille">Gribouille</a>&nbsp;; inspir&#233; de <a href="http://www.wikini.net/wakka.php?wiki=PagePrincipale">WikiNi</a>',
    33        
     31        'deconnexion'                               => 'd&#233;connexion',
     32        'derniers_changements'                      => 'Derniers changements',
     33        'disclaimer'                                => 'Ce site fonctionne avec le squelette <a href="https://contrib.spip.net/Gribouille">Gribouille</a>&nbsp;; inspir&#233; de <a href="http://www.wikini.net/wakka.php?wiki=PagePrincipale">WikiNi</a>',
     34
    3435        // E
    35         'editer_page' => '&Eacute;diter cette page',
    36         'explication_exclure_recherche' => 'Le contenu du Wiki n\'appara&icirc;tra plus dans la recherche par d&eacute;faut de SPIP dans l\'espace public',
    37        
     36        'editer_page'                               => '&Eacute;diter cette page',
     37        'explication_exclure_recherche'             => 'Le contenu du Wiki n\'appara&icirc;tra plus dans la recherche par d&eacute;faut de SPIP dans l\'espace public',
     38
    3839        // G
    39         'gribouille' => 'Configuration principale',
    40         'gribouille_autorisations' => 'Configuration des autorisations',
    41         'gribouille_titre' => 'Gribouille',
    42        
     40        'gribouille'                                => 'Configuration principale',
     41        'gribouille_autorisations'                  => 'Configuration des autorisations',
     42        'gribouille_titre'                          => 'Gribouille',
     43
    4344        // H
    44         'historique' => 'Historique',
    45        
     45        'historique'                                => 'Historique',
     46
    4647        // L
    47         'label_exclure_recherche' => 'Exclure de la recherche',
    48        
     48        'label_exclure_recherche'                   => 'Exclure de la recherche',
     49
    4950        // N
    50         'nom_visiteur' => 'Vous &ecirc;tes @nom@',
    51        
     51        'nom_visiteur'                              => 'Vous &ecirc;tes @nom@',
     52
    5253        // P
    53         'piege_a_robot' => 'Laissez ce champ vide :',
    54        
     54        'piege_a_robot'                             => 'Laissez ce champ vide :',
     55
    5556        // R
    56         'recherche' => 'Recherche',
    57         'retour_version_actuelle' => 'Retour &#224; la version actuelle',
    58         'retour_version_courante' => 'Retour &#224; la version courante',
    59        
     57        'recherche'                                 => 'Recherche',
     58        'retour_version_actuelle'                   => 'Retour &#224; la version actuelle',
     59        'retour_version_courante'                   => 'Retour &#224; la version courante',
     60
    6061        // S
    61         'sous_rubriques' => 'Sous-rubriques',
    62        
     62        'sous_rubriques'                            => 'Sous-rubriques',
     63
    6364        // T
    64         'titre_configurer_gribouille' => 'Configurer Gribouille',
     65        'titre_configurer_gribouille'               => 'Configurer Gribouille',
    6566        'titre_configurer_gribouille_autorisations' => 'Configurer les autorisations de Gribouille',
    66         'texte_bienvenue' => 'Bienvenue sur le carnet de notes de @nom_site@.',
    67         'titre_input' => 'Titre...',
    68        
     67        'texte_bienvenue'                           => 'Bienvenue sur le carnet de notes de @nom_site@.',
     68        'titre_input'                               => 'Titre...',
     69
    6970        // Z
    70         'z' => 'zzz'
     71        'z'                                         => 'zzz',
    7172);
  • _squelettes_/gribouille_2/trunk/lang/paquet-gribouille_fr.php

    r109698 r109699  
    66}
    77
    8 $GLOBALS[$GLOBALS['idx_lang']] = array(
     8$GLOBALS[ $GLOBALS['idx_lang'] ] = array(
    99
    1010        // G
    1111        'gribouille_description' => '',
    12         'gribouille_nom' => 'Gribouille',
    13         'gribouille_slogan' => 'Un Wiki pour SPIP',
     12        'gribouille_nom'         => 'Gribouille',
     13        'gribouille_slogan'      => 'Un Wiki pour SPIP',
    1414);
Note: See TracChangeset for help on using the changeset viewer.