source: spip-zone/_plugins_/reservation_evenement/trunk/genie/reservation_evenement_cloture.php @ 87382

Last change on this file since 87382 was 87382, checked in by abelass@…, 5 years ago

logs

File size: 1.6 KB
Line 
1<?php
2/**
3 * Utilisations de pipelines par Réservation Événement Cloture
4 *
5 * @plugin     Réservation Événement Cloture
6 * @copyright  2014
7 * @author     Rainer Müller
8 * @licence    GNU/GPL
9 * @package    SPIP\Reservation_evenement_cloture\Genie
10 */
11
12if (!defined('_ECRIRE_INC_VERSION')) return;
13       
14//Cloturer un évènement
15function genie_reservation_evenement_cloture_dist ($t) {
16        $date=date('Y-m-d G:i:s');
17       
18        include_spip('action/editer_objet');
19 
20        //Sélection des détails de réservation concernant d'´événements passé et qui ont action_cloture activé
21        $sql=sql_select(
22                'id_reservations_detail,spip_reservations_details.id_evenement,date_fin',
23                'spip_reservations_details,spip_evenements',
24                'spip_reservations_details.statut="accepte" AND
25                        spip_reservations_details.id_evenement=spip_evenements.id_evenement AND
26                        spip_evenements.date_fin <="'.$date.'" AND
27                        spip_evenements.action_cloture =1' 
28                );
29       
30        $id_evenement=array(); 
31        while($data=sql_fetch($sql)){
32                if(!$date_fin=sql_getfetsel('date_fin','spip_evenements','id_evenement_source='.$data['id_evenement'],'','"date fin" DESC','1'))
33                $date_fin=$data['date_fin'];
34                //Déclencher le changement de statut et les actions qui en dépendent
35                if($date_fin<=$date){
36                        set_request('envoi_separe_actif','oui'); //Nécessaire pour permettre l'envoi du mail
37                        objet_instituer('reservations_detail',$data['id_reservations_detail'],array('statut'=>'cloture'));
38                        $id_evenement[] = $data['id_evenement'];       
39       
40                }
41        };
42       
43        if (count($id_evenement)>0) sql_updateq('spip_evenements',array('action_cloture'=>3),'id_evenement IN ('.implode(',',$id_evenement).')');
44       
45        return 1;
46}
Note: See TracBrowser for help on using the repository browser.