Changeset 114257 in spip-zone


Ignore:
Timestamp:
Mar 2, 2019, 7:36:10 AM (6 months ago)
Author:
abelass@…
Message:

les utilisés, prendre en compte les statuts du contexte

Location:
_plugins_/objets_disponibilites/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/objets_disponibilites/trunk/disponibilites/objet_utilise.php

    r114196 r114257  
    55}
    66
    7 function disponibilites_objet_utilise_dist($utilisation_objet, $contexte) {
     7function disponibilites_objet_utilise_dist($utilise_objet, $contexte) {
    88        include_spip('filtres/dates_outils');
    99
     
    1212        $objet = $contexte['objet'];
    1313        $id_objet = $contexte['id_objet'];
     14        $statuts = $contexte['utilise_statuts'];
    1415
    15         if (isset($options['select'])) {
    16                 $select = $options['select'];
     16        if ($contexte['utilise_select']) {
     17                $select = $contexte['utilise_select'];
    1718        }
    1819        else {
     
    2021        }
    2122
    22         if (isset($options['where'])) {
    23                 $where = $options['where'];
     23        if ($contexte['utilise_where']) {
     24                $where = $contexte['utilise_where'];
    2425        }
    2526        else {
    26                 $where = 'objet LIKE ' . sql_quote($objet) . ' AND id_objet=' . $id_objet . ' AND statut NOT LIKE ' . sql_quote('poubelle');
     27                if ($statuts) {
     28                        if (!is_array($statuts)) {
     29                                $statuts = explode(',', $statuts);
     30                        }
     31                        $statut = 'statut IN ("' . implode('","', $statuts) . '")';
     32                }
     33                else {
     34                        $statut = 'statut NOT LIKE ' . sql_quote('poubelle');
     35                }
     36                $where = 'objet LIKE ' . sql_quote($objet) . ' AND id_objet=' . $id_objet . ' AND ' . $statut;
    2737        }
    2838        $dates = [];
    2939
    30         if ($table = table_objet_sql($utilisation_objet)) {
     40        if ($table = table_objet_sql($utilise_objet)) {
    3141        $utilisation = sql_allfetsel($select, $table , $where);
    3242
     
    4757
    4858                        $intervalle = dates_intervalle(
    49                                 $date_debut, 
    50                                 $date_fin, 
     59                                $date_debut,
     60                                $date_fin,
    5161                                $contexte['utilise_decalage_debut'],
    5262                                $contexte['utilise_decalage_fin'],
     
    5464                                $format
    5565                        );
    56                        
     66
    5767                        $dates = array_merge($dates, $intervalle);
    5868                        }
  • _plugins_/objets_disponibilites/trunk/objets_disponibilites_fonctions.php

    r114196 r114257  
    4343        // Les dates considérés comme utilisées
    4444        $dates_utilisees = [];
    45         if (isset($contexte['utilisation_objet'])) {
    46                 $utilisation_objet = $contexte['utilisation_objet'];
    47                 if ($fonction = charger_fonction($utilisation_objet . '_utilise', 'disponibilites', TRUE)) {
     45        if (isset($contexte['utilise_objet'])) {
     46                $utilise_objet = $contexte['utilise_objet'];
     47                if ($fonction = charger_fonction($utilise_objet . '_utilise', 'disponibilites', TRUE)) {
    4848                        $dates_utilisees = $fonction($contexte);;
    4949                }
    5050                else {
    5151                        $fonction = charger_fonction('objet_utilise', 'disponibilites');
    52                         $dates_utilisees = $fonction($utilisation_objet, $contexte);
     52                        $dates_utilisees = $fonction($utilise_objet, $contexte);
    5353                }
    5454        }
  • _plugins_/objets_disponibilites/trunk/paquet.xml

    r114196 r114257  
    22        prefix="objets_disponibilites"
    33        categorie="auteur"
    4         version="1.2.0"
     4        version="1.2.1"
    55        etat="test"
    66        compatibilite="[3.0.0;3.2.*]"
  • _plugins_/objets_disponibilites/trunk/saisies/dates_disponibles.html

    r114196 r114257  
    1515                utilise_decalage_debut : calcul des utilisés, le nombre de jour à ajouter au début
    1616                utilise_decalage_fin : calcul des utilisés, le nombre de jour à ajouter à la fin
    17                 utilisation_objet : l'objet à utiliser pour le calcul des dates utilisées,
     17                utilise_objet : l'objet à utiliser pour le calcul des dates utilisées,
    1818
    1919
     
    3131                utilise_decalage_debut=#ENV{utilise_decalage_debut},
    3232                utilise_decalage_fin=#ENV{utilise_decalage_fin},
    33                 utilisation_objet=#ENV{utilisation_objet},
     33                utilise_objet=#ENV{utilise_objet},
     34                utilise_statuts=#ENV{utilise_statuts},
    3435        })]
    3536]
  • _plugins_/objets_disponibilites/trunk/verifier/dates_diponibles.php

    r114196 r114257  
    2525                        'utilise_decalage_debut' => 1,
    2626                        'utilise_decalage_fin' => 1,
    27                         'utilisation_objet' => '',
    28 
     27                        'utilise_objet' => '',
     28                        'utilise_statuts' => '',
     29                        'utilise_where' => '',
     30                        'utilise_select' => '',
    2931                ];
    3032
Note: See TracChangeset for help on using the changeset viewer.