Changeset 80963 in spip-zone


Ignore:
Timestamp:
Feb 20, 2014, 10:30:37 PM (5 years ago)
Author:
kent1@…
Message:

Les modifications du sélecteurs de rubriques ne sont pas forcément uniquement utiles dans le public.

Si le secteur n'a pas de sous-rubriques, on vire le sélecteur de rubrique simple également lorsque l'on a désactivé la polyhiérarchie

Location:
_plugins_/diogene/diogene/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/diogene/diogene/trunk/diogene_autoriser.php

    r79249 r80963  
    66 * kent1 (http://www.kent1.info - kent1@arscenic.info)
    77 *
    8  * © 2010-2012 - Distribue sous licence GNU/GPL
     8 * © 2010-2014 - Distribue sous licence GNU/GPL
    99 *
    1010 * Autorisations spécifiques à Diogene
  • _plugins_/diogene/diogene/trunk/diogene_pipelines.php

    r80445 r80963  
    160160                         * On fait attention au fait qu'il y ait ou pas polyhiérarchie
    161161                         */
    162                         if (!test_espace_prive() && preg_match(",<li [^>]*class=[\"']editer editer_parent,Uims",$flux['data'],$regs) && (!preg_match(",<li [^>]*class=[\"']editer editer_parents,Uims",$flux['data'],$regs2) OR ($args['options_complements']['polyhier_desactiver'] == 'on'))){
     162                        if (preg_match(",<li [^>]*class=[\"']editer editer_parent,Uims",$flux['data'],$regs) && (!preg_match(",<li [^>]*class=[\"']editer editer_parents,Uims",$flux['data'],$regs2) OR ($args['options_complements']['polyhier_desactiver'] == 'on'))){
    163163                                $contexte_selecteur = array(
    164164                                        'id_rubrique_limite'=>$id_secteur,
     
    166166                                        'id_parent'=>$args['contexte']['id_parent'],
    167167                                        'rubrique_principale' => $rubrique_principale);
    168                                 if($type == 'rubrique'){
     168                                if($type == 'rubrique')
    169169                                        $contexte_selecteur['id_rubrique'] = $args['contexte']['id_rubrique'];
    170                                 }
     170
    171171                                if(count($regs2) > 0){
    172172                                        $class = "editer editer_parents";
     
    186186                                else
    187187                                        $flux['data'] = preg_replace(",(<li [^>]*class=[\"']$class.*)(<li [^>]*class=[\"'](editer|fieldset).*),Uims","\\2",$flux['data'],1);
    188                                 if(($class == 'editer editer_parents') && ($args['options_complements']['polyhier_desactiver'] == 'on'))
    189                                         $flux['data'] = preg_replace(",(<li [^>]*class=[\"']editer editer_parent.*)(<li [^>]*class=[\"']editer.*),Uims",''."\\2",$flux['data'],1);
    190                         }else if(!test_espace_prive() && ($type != 'page') && preg_match(",<li [^>]*class=[\"']editer editer_parents,Uims",$flux['data'],$regs)){
     188                                if(($class == 'editer editer_parents') && ($args['options_complements']['polyhier_desactiver'] == 'on')){
     189                                        $sous_rub_count = sql_countsel('id_rubrique','spip_rubriques','id_secteur='.intval($args['id_secteur']));
     190                                        if($sous_rub_count == 0){
     191                                                $flux['data'] = preg_replace(",(<li [^>]*class=[\"']editer editer_parent.*)(<li [^>]*class=[\"']editer.*),Uims",''."\\2",$flux['data'],1);
     192                                                $flux['data'] = preg_replace(",(<li [^>]*class=[\"']editer editer_parents.*)(<li [^>]*class=[\"']editer.*),Uims",''."\\2",$flux['data'],1);
     193                                        }
     194                                        else
     195                                                $flux['data'] = preg_replace(",(<li [^>]*class=[\"']editer editer_parents.*)(<li [^>]*class=[\"']editer.*),Uims",''."\\2",$flux['data'],1);
     196                                }
     197                        }else if(($type != 'page') && preg_match(",<li [^>]*class=[\"']editer editer_parents,Uims",$flux['data'],$regs)){
    191198                                $contexte = $args['contexte'];
    192199                                $contexte['id_rubrique'] = $diogene['id_secteur'];
Note: See TracChangeset for help on using the changeset viewer.