members -> directory
[platal.git] / htdocs.net / groupe / evt-detail.php
CommitLineData
0337d704 1<?php
2
b479e26b 3require_once 'xnet.inc.php';
0337d704 4
5new_group_page('xnet/groupe/evt-detail.tpl');
6
fa36e526 7if (!Env::get("eid")) {
8 redirect("evenements.php");
9}
0337d704 10
11$may_participate = !$members_only || is_member() || may_update();
12$page->assign('may_participate', $may_participate);
13
14if (Env::get('ins')) {
15 $total = 0;
16 for ($i=1; Env::has('item_id'.$i); $i++)
17 $total += (Env::get('item_'.Env::get('item_id'.$i)) > 0)?Env::get('item_'.Env::get('item_id'.$i)):0;
18
19 $participate = $total > 0;
20 $res = $globals->xdb->query("SELECT paid FROM groupex.evenements_participants WHERE eid = {?} AND uid = {?}", Env::get("eid"), Session::get("uid"));
21 $paid = $res->fetchOneCell();
22 if (!$paid) $paid = 0;
23
24 // prevent desinscription if there is a manual paiement
25 if (!$participate && $paid) {
26 $page->trig("Impossible de te désinscrire complètement parce que tu as fait un paiement par chèque ou par liquide. Contacte un administrateur du groupe si tu es sûr de ne pas venir");
27 $participate = true;
28 $page->assign('no_ins', true);
29 } else
30 for ($i=1; Env::has('item_id'.$i); $i++)
31 {
32 $j = Env::get('item_id'.$i);
33 $nb = Env::get('item_'.$j);
34 if ($nb == '+') $nb = Env::get('itemnb_'.$j)+1;
35 if ($nb > 0) {
36 $globals->xdb->execute(
37 "REPLACE INTO groupex.evenements_participants
38 VALUES ({?}, {?}, {?}, {?}, {?})",
39 Env::get("eid"), Session::get("uid"), $j, $nb, $paid);
40 } else {
41 $globals->xdb->execute(
42 "DELETE FROM groupex.evenements_participants
43 WHERE eid = {?} AND uid = {?} AND item_id = {?}",
44 Env::get("eid"), Session::get("uid"), $j);
45 }
46 }
47}
48
49require_once('xnet/evenements.php');
50$evt = get_event_detail(Env::get('eid'));
3b3e9d15 51
fa36e526 52if (!$evt) {
53 redirect("evenements.php");
54}
3b3e9d15 55
0337d704 56if (Env::has('ins')) {
57 subscribe_lists_event($participate, Session::get("uid"), $evt['participant_list'], $evt['absent_list']);
fa36e526 58 redirect("evenements.php?backfrom=".Env::get('eid'));
0337d704 59}
60
61$page->assign('participate', $participate);
62$page->assign('evt', $evt);
63
64$moments = $globals->xdb->iterator(
65 "SELECT titre, i.item_id, details, montant, nb
66 FROM groupex.evenements_items AS i
67 LEFT JOIN groupex.evenements_participants AS p
68 ON(i.eid = p.eid AND i.item_id = p.item_id AND uid = {?})
69 WHERE i.eid = {?}",
70 Session::get('uid'), Env::get('eid'));
71
72$page->assign('moments', $moments);
73
74if (!$paid) {
75 $res = $globals->xdb->query("SELECT paid FROM groupex.evenements_participants WHERE eid = {?} AND uid = {?}", Env::get("eid"), Session::get("uid"));
76 $paid = $res->fetchOneCell();
77 $page->assign('paid_manual', $paid);
78}
79if ($evt['paiement_id']) {
80 $res = $globals->xdb->query(
81 "SELECT montant
82 FROM {$globals->money->mpay_tprefix}transactions AS t
83 WHERE ref = {?} AND uid = {?}",
84 $evt['paiement_id'], Session::getInt('uid', -1));
85 $montants = $res->fetchColumn();
86 foreach ($montants as $m) {
87 $p = strtr(substr($m, 0, strpos($m, "EUR")), ",", ".");
88 $paid += trim($p);
89 }
90}
91$page->assign('paid', $paid);
92
93$page->run();
94
95?>