Changeset 118438 in spip-zone


Ignore:
Timestamp:
Nov 6, 2019, 10:35:54 AM (5 weeks ago)
Author:
peetdu@…
Message:

retour sur r118254 : il faut alors garder le sélecteur de rubrique. Sinon, on n’a plus d’id_parent.
Et sur r118260 : si l’objet n’est pas géré par la restriction par rubrique de LIM, vérifier qu’il a pour parent direct une rubrique

Location:
_plugins_/lim/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/lim/trunk/inc/lim_api.php

    r116026 r118438  
    5252        }
    5353        return false;
    54 }
    55 
    56 /**
    57  * si LIM est activé pour un objet et si une seule rubrique est activée, ne pas afficher le sélecteur de rubrique
    58  * surcharge de inc/chercher_rubrique.php
    59  * @return string
    60  *     Code HTML du sélecteur
    61  */
    62 function inc_chercher_rubrique($id_rubrique, $type, $restreint, $idem = 0, $do = 'aff') {
    63         include_spip('inc/chercher_rubrique');
    64         if (sql_countsel('spip_rubriques') < 1) {
    65                 return '';
    66         }
    67         /* surcharge */
    68         $rubriques_restreintes = lire_config("lim_rubriques/$type");
    69         if (!is_null($rubriques_restreintes)) {
    70                 $nbre_rubriques_total           = sql_countsel('spip_rubriques');
    71                 $nbre_rubriques_desactives      = count($rubriques_restreintes);
    72 
    73                 if ($nbre_rubriques_total - $nbre_rubriques_desactives <= 1) {
    74                         return '';
    75                 }
    76         }
    77         // note : du coup, plus de input name='id_parent' ! Un traitement via le pipeline "editer_contenu_objet" s'occupe de palier à ce problème.
    78         /* fin surcharge */
    79                
    80 
    81         // Mode sans Ajax :
    82         // - soit parce que le cookie ajax n'est pas la
    83         // - soit parce qu'il y a peu de rubriques
    84         if (_SPIP_AJAX < 1
    85                 or $type == 'breve'
    86                 or sql_countsel('spip_rubriques') < _SPIP_SELECT_RUBRIQUES
    87         ) {
    88                 return selecteur_rubrique_html($id_rubrique, $type, $restreint, $idem);
    89         } else {
    90                 return selecteur_rubrique_ajax($id_rubrique, $type, $restreint, $idem, $do);
    91         }
    92 
    9354}
    9455
  • _plugins_/lim/trunk/lim_pipelines.php

    r118260 r118438  
    5252 *
    5353 * Cas #2 : objet non géré par la restriction par rubrique de LIM.
    54  * -> même traitement que pour le cas #1.2
     54 * -> Vérifier que l'objet a comme parent une rubrique et si oui, même traitement que pour le cas #1.2
    5555 *
    5656 * @param array $flux
     
    6565                $objet = substr($flux['args']['form'], 7); // 'editer_article' -> 'article'
    6666                $nom_table      = table_objet_sql($objet); // article -> spip_articles
    67 
    6867                $tableau_conf_lim_objet = lire_config("lim_rubriques/$objet");
    69                 $nbre_rubriques = sql_countsel('spip_rubriques');
    70                 $nbre_rubriques_autorisees = $nbre_rubriques - count($tableau_conf_lim_objet);
     68               
    7169
    7270                if (isset($tableau_conf_lim_objet)) {
     71                        $nbre_rubriques = sql_countsel('spip_rubriques');
     72                        $nbre_rubriques_autorisees = $nbre_rubriques - count($tableau_conf_lim_objet);
    7373
    7474                        // Cas #0 : voir TODO's
     
    8787                        }
    8888                } else { // Cas #2
    89                         $id_parent = '';
     89                        // ici dans l'idéal, il faudrait utiliser l'API du plugin  Declarer_parent
     90                        $trouver_table = charger_fonction('trouver_table', 'base');
     91                        $desc = $trouver_table($nom_table);
     92                        if (isset($desc['field']['id_rubrique'])) {
     93                                $id_parent = '';
     94                        }
    9095                }
    91                 if ($id_parent) {
     96
     97                if (isset($id_parent)) {
    9298                        $flux['data']['id_parent'] = $id_parent;
    93                 } else {
    94                         unset($flux['data']['id_parent']);
    9599                }
    96100        }
  • _plugins_/lim/trunk/paquet.xml

    r118260 r118438  
    22        prefix="lim"
    33        categorie="maintenance"
    4         version="2.1.3"
     4        version="2.1.4"
    55        etat="stable"
    66        compatibilite="[3.2.0;3.3.*]"
Note: See TracChangeset for help on using the changeset viewer.