source: spip-zone/_plugins_/paniers/paniers_pipelines.php @ 47567

Last change on this file since 47567 was 47567, checked in by rastapopoulos@…, 10 years ago

Oubli du retour à la fin d'un pipeline.

File size: 1.4 KB
Line 
1<?php
2
3// Sécurité
4if (!defined('_ECRIRE_INC_VERSION')) return;
5
6// Supprimer tous les paniers en cours qui sont trop vieux
7function paniers_optimiser_base_disparus($flux){
8        include_spip('inc/config');
9        // On cherche la date depuis quand on a le droit d'avoir fait le panier
10        $depuis_ephemere = date('Y-m-d H:i:s', time() - lire_config('paniers/limite_ephemere', 24*3600));
11        $depuis_enregistres = date('Y-m-d H:i:s', time() - lire_config('paniers/limite_enregistres', 7*24*3600));
12       
13        // Soit le panier est à un anonyme donc on prend la limite éphémère, soit le panier appartient à un auteur et on prend l'autre limite
14        $paniers = sql_allfetsel(
15                'id_panier',
16                'spip_paniers',
17                'statut = '.sql_quote('encours').' and ((id_auteur=0 and date<'.sql_quote($depuis_ephemere).') or (id_auteur>0 and date<'.sql_quote($depuis_enregistres).'))'
18        );
19        if (is_array($paniers))
20                $paniers = array_map('reset', $paniers);
21       
22        // S'il y a bien des paniers à supprimer
23        if ($paniers){
24                // Le in
25                $in = sql_in('id_panier', $paniers);
26               
27                // On supprime d'abord les liens
28                sql_delete(
29                        'spip_paniers_liens',
30                        $in
31                );
32               
33                // Puis les paniers
34                $nombre = intval(sql_delete(
35                        'spip_paniers',
36                        $in
37                ));
38        }
39       
40        $flux['data'] += $nombre;
41        return $flux;
42}
43
44// La CSS pour le panier
45function paniers_insert_head_css($flux){
46        $css = find_in_path('css/paniers.css');
47        $flux .= "<link rel='stylesheet' type='text/css' media='all' href='$css' />\n";
48        return $flux;
49}
50
51?>
Note: See TracBrowser for help on using the repository browser.