first reimport from platal
[platal.git] / htdocs.net / groupe / inscrire.php
1 <?php
2 require 'xnet.inc.php';
3
4 new_page('xnet/groupe/inscrire.tpl', AUTH_MDP);
5 $page->useMenu();
6 $page->setType($globals->asso('cat'));
7 $page->assign('asso', $globals->asso());
8 $page->assign('admin', may_update());
9
10
11 if (Env::has('u') && may_update()) {
12 $u = Env::get('u');
13 $res = $globals->xdb->query("SELECT nom, prenom, promo, user_id FROM auth_user_md5 AS u INNER JOIN aliases AS al ON (al.id = u.user_id AND al.type != 'liste') WHERE al.alias = {?}", $u);
14
15 if (list($nom, $prenom, $promo, $uid) = $res->fetchOneRow())
16 {
17 $res = $globals->xdb->query("SELECT count(*) FROM groupex.membres AS m
18 INNER JOIN aliases AS a ON ( m.uid = a.id AND a.type != 'homonyme' ) WHERE a.alias = {?} AND m.asso_id = {?}", $u, $globals->asso('id'));
19 $n = $res->fetchOneCell();
20 if ($n)
21 {
22 $page->trig_run("$prenom $nom est déjà membre du groupe !");
23 }
24 elseif (Env::has('accept'))
25 {
26 $globals->xdb->execute("INSERT INTO groupex.membres VALUES ({?}, {?}, 'membre', 'X', NULL, NULL, NULL, NULL)", $globals->asso('id'), $uid);
27 require_once 'diogenes/diogenes.hermes.inc.php';
28 $mailer = new HermesMailer();
29 $mailer->addTo("$u@polytechnique.org");
30 $mailer->setFrom('"'.Session::get('prenom').' '.Session::get('nom').'" <'.Session::get('forlife').'@polytechnique.org>');
31 $mailer->setSubject('['.$globals->asso('nom').'] Demande d\'inscription');
32 $message = "Cher Camarade,\n"
33 . "\n"
34 . " Suite à ta demande d'adhésion à ".$globals->asso('nom').",\n"
35 . "j'ai le plaisir de t'annoncer que ton inscription a bien été validée !\n"
36 . "\n"
37 . "Bien cordialement,\n"
38 . "{$_SESSION["prenom"]} {$_SESSION["nom"]}.";
39 $mailer->setTxtBody($message);
40 $mailer->send();
41 $page->kill("$prenom $nom a bien été inscrit");
42 }
43 elseif (Env::has('refuse'))
44 {
45 require_once 'diogenes/diogenes.hermes.inc.php';
46 $mailer = new HermesMailer();
47 $mailer->addTo("$u@polytechnique.org");
48 $mailer->setFrom('"'.Session::get('prenom').' '.Session::get('nom').'" <'.Session::get('forlife').'@polytechnique.org>');
49 $mailer->setSubject('['.$globals->asso('nom').'] Demande d\'inscription annulée');
50 $mailer->setTxtBody(Env::get('motif'));
51 $mailer->send();
52 $page->kill("la demande $prenom $nom a bien été refusée");
53 }
54 else
55 {
56 $page->assign('show_form', true);
57 $page->gassign('prenom');
58 $page->gassign('nom');
59 $page->gassign('promo');
60 $page->gassign('uid');
61 }
62 }
63 else
64 {
65 $page->kill("utilisateur invalide");
66 }
67 } elseif (is_member()) {
68 $page->kill("tu es déjà membre !");
69 } elseif (Post::has('inscrire')) {
70
71 $res = $globals->xdb->query('SELECT IF(m.email IS NULL, CONCAT(al.alias,"@polytechnique.org"), m.email)
72 FROM groupex.membres AS m
73 INNER JOIN aliases AS al ON (al.type = "a_vie" AND al.id = m.uid)
74 WHERE perms="admin" AND m.asso_id = {?}', $globals->asso('id'));
75 $emails = $res->fetchColumn();
76 $to = implode(',', $emails);
77
78 $append = "\n"
79 . "-- \n"
80 . "Ce message a été envoyé suite à la demande d'inscription de\n"
81 . Session::get('prenom').' '.Session::get('nom').' (X'.Session::get('promo').")\n"
82 . "Via le site www.polytechnique.net. Tu peux choisir de valider ou\n"
83 . "de refuser sa demande d'inscription depuis la page :\n"
84 . "http://www.polytechnique.net/".$globals->asso("diminutif")."/inscrire.php?u=".Session::get('forlife')."\n"
85 . "\n"
86 . "En cas de problème, contacter l'équipe de Polytechnique.org\n"
87 . "à l'adresse : support@polytechnique.org\n";
88
89 if (!$to) {
90 $to = $globals->asso("mail").", support@polytechnique.org";
91 $append = "\n-- \nLe groupe ".$globals->asso("nom")." n'a pas d'administrateur, l'équipe de Polytechnique.org a été prévenue et va rapidement résoudre ce problème.\n";
92 }
93
94 require_once 'diogenes/diogenes.hermes.inc.php';
95 $mailer = new HermesMailer();
96 $mailer->addTo($to);
97 $mailer->setFrom('"'.Session::get('prenom').' '.Session::get('nom').'" <'.Session::get('forlife').'@polytechnique.org>');
98 $mailer->setSubject('['.$globals->asso('nom').'] Demande d\'inscription');
99 $mailer->setTxtBody(Post::get('message').$append);
100 $mailer->send();
101 }
102
103
104 $page->run();
105
106 ?>