Ignore:
Timestamp:
Nov 3, 2019, 9:09:52 AM (12 months ago)
Author:
Rainer Müller
Message:

v3.3.2 - eviter des erreurs php dans l'espace publique

Location:
_plugins_/edition_directe/branches/3.0
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/edition_directe/branches/3.0

  • _plugins_/edition_directe/branches/3.0/edition_directe_fonctions.php

    r113240 r118388  
    11<?php
     2/**
     3 * Fonctions utiles au plugin Edition_directe
     4 *
     5 * @plugin     Edition_directe
     6 * @copyright  2011 - 2019
     7 * @author     Rainer Müller
     8 * @licence    GNU/GPL
     9 * @package    SPIP\Edition_directe\Fonctions
     10 */
     11
    212// teste si l'objet est en mode edition directe ou non
    3 function objets_edition_directe(){
     13function objets_edition_directe() {
    414        include_spip('inc/config');
    515        include_spip('inc/session');
    616
     17        // Récuperer la séléction des objets depuis la config
     18        $objets = lire_config('edition_directe/objets', []);
    719
    8         // Récuperer la séléction des objets depuis la config
    9         $objets=lire_config('edition_directe/objets', []);
     20        // Récupère les préférence de l'auteur, pour émodifier le choix par défaut
     21        $prefs = session_get('prefs');
    1022
    11         //Récupère les préférence de l'auteur, pour émodifier le choix par défaut
    12         $prefs=session_get('prefs');
    13 
    14         // Apparament session_get  retourne suivant le contexte, un tableau serialisé, assurer qu'il ne soir pas sérialisé
    15         if(!is_array($prefs))$prefs=unserialize($prefs);
     23        // Apparament session_get retourne suivant le contexte, un tableau serialisé, assurer qu'il ne soir pas sérialisé
     24        if (!is_array($prefs))
     25                $prefs = unserialize($prefs);
    1626
    1727        // Sie rien n'est configuré, on se base sur les objets éditables de la séléction personelle de l'auteur
    18         if(count($objets)<1){
    19                 $objets=lister_objets($prefs);
     28
     29        if (count($objets) < 1) {
     30                $objets = lister_objets($prefs);
    2031        }
    21         else{
    22                 //Sinon on prend les objets de la config, si l'auteur ne la pas désactivé
    23                 $objets2=array();
    24                 foreach($objets AS $objet){
    25                         if($prefs['edition_directe'][$objet]!='inactive')$objets2[]=$objet;
     32        else {
     33                // Sinon on prend les objets de la config, si l'auteur ne la pas désactivé
     34                $objets2 = array();
     35                foreach ($objets as $objet) {
     36                        if ($prefs['edition_directe'][$objet] != 'inactive')
     37                                $objets2[] = $objet;
    2638                }
    27                 $objets=$objets2;
     39                $objets = $objets2;
    2840        }
    2941        // Si l'auteur à activé des objets qui ne sont pas dans la configuration initiale, les prendre quand même en compte
    30         if(is_array($prefs['edition_directe'])){
    31                 $objets_prefs=array();
    32                 foreach($prefs['edition_directe'] AS $o=>$pref){
    33                         if($pref!='inactive')$objets_prefs[]=$o;
     42        if (is_array($prefs['edition_directe'])) {
     43                $objets_prefs = array();
     44                foreach ($prefs['edition_directe'] as $o => $pref) {
     45                        if ($pref != 'inactive')
     46                                $objets_prefs[] = $o;
    3447                }
    35                 $objets=array_merge($objets,$objets_prefs);
     48                $objets = array_merge($objets, $objets_prefs);
    3649        }
    3750
    38         //Pipeline
    39         $pipeline= pipeline('edition_directe_controle',array(
    40                 'args'=>array(
    41                         'objet'=>$objet
     51        // Pipeline
     52        pipeline('edition_directe_controle', array(
     53                'args' => array(
     54                        'objet' => $objet
    4255                ),
    43                 'data'=>$objets
     56                'data' => $objets
    4457        ));
    4558        return $objets;
    4659}
    4760
    48 
    4961// Liste les objets disponible pour l'édition directe
    50 function lister_objets($prefs){
     62function lister_objets($prefs) {
    5163        include_spip('base/objets');
    5264
    5365        // Lister les objets éditables auf ceux qui sont désactivé par l'utilisateur
     66<<<<<<< HEAD
    5467        $liste_objets=lister_tables_objets_sql();
    5568        $objets=array();
     
    5972        return $objets;
    6073}
     74=======
     75        $liste_objets = lister_tables_objets_sql();
     76        $objets = array();
     77        foreach ($liste_objets as $valeur) {
     78                if ($valeur['editable'] and $valeur['page'] and $prefs['edition_directe'][$valeur['page']] != 'inactive')
     79                        $objets[] = $valeur['page'];
     80        }
     81        return $objets;
     82}
     83>>>>>>> master
Note: See TracChangeset for help on using the changeset viewer.