source: spip-zone/_plugins_/grappes/trunk/action/dupliquer_grappe.php @ 91006

Last change on this file since 91006 was 91006, checked in by kent1@…, 4 years ago

Pas besoin de ces logs

File size: 1.5 KB
Line 
1<?php
2/**
3 * Plugin Grappes
4 * Licence GPL (c) Matthieu Marcillaud
5 */
6
7
8if (!defined("_ECRIRE_INC_VERSION")) return;
9
10include_spip('inc/filtres');
11
12/**
13 * Action de duplication d'une grappe
14 *
15 * Doit recevoir comme argument ($arg) l'identifiant numérique de la grappe à dupliquer
16 */
17function action_dupliquer_grappe_dist()
18{
19        $securiser_action = charger_fonction('securiser_action', 'inc');
20        $arg = $securiser_action();
21
22        if (!preg_match(",^(\d+)$,", $arg, $r)) {
23                spip_log("action_dupliquer_grappe_dist $arg pas compris");
24        } else action_dupliquer_grappe_post($r[1]);
25}
26
27/**
28 * La duplication de la grappe
29 *
30 * @param int $id_grappe
31 *      Identification numérique de la grappe à supprimer
32 * @return int|bool
33 *      Retourne l'identifiant numérique de la nouvelle grappe si tout s'est bien passé,
34 *      sinon false, si la duplication n'a pu avoir lieu
35 */
36function action_dupliquer_grappe_post($id_grappe)
37{
38        include_spip('action/editer_grappe');
39        $grappe = sql_fetsel('*','spip_grappes','id_grappe='.intval($id_grappe));
40        if($grappe){
41                $nouvelle_grappe = grappe_inserer();
42                unset($grappe['id_grappe']);
43                unset($grappe['id_admin']);
44                unset($grappe['date']);
45                unset($grappe['maj']);
46                grappe_modifier($nouvelle_grappe, $grappe);
47
48                include_spip('action/lier_objets');
49                $objets_lies = sql_select('*','spip_grappes_liens','id_grappe='.intval($id_grappe));
50
51                while($objet_lie = sql_fetch($objets_lies)){
52                        lier_objets('grappe',$nouvelle_grappe,$objet_lie['objet'],$objet_lie['id_objet']);
53                }
54                return $nouvelle_grappe;
55        }
56        return false;
57}
58?>
Note: See TracBrowser for help on using the repository browser.