Commit | Line | Data |
---|---|---|
0337d704 | 1 | <?php |
2 | /*************************************************************************** | |
9f5bd98e | 3 | * Copyright (C) 2003-2010 Polytechnique.org * |
0337d704 | 4 | * http://opensource.polytechnique.org/ * |
5 | * * | |
6 | * This program is free software; you can redistribute it and/or modify * | |
7 | * it under the terms of the GNU General Public License as published by * | |
8 | * the Free Software Foundation; either version 2 of the License, or * | |
9 | * (at your option) any later version. * | |
10 | * * | |
11 | * This program is distributed in the hope that it will be useful, * | |
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of * | |
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * | |
14 | * GNU General Public License for more details. * | |
15 | * * | |
16 | * You should have received a copy of the GNU General Public License * | |
17 | * along with this program; if not, write to the Free Software * | |
18 | * Foundation, Inc., * | |
19 | * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * | |
20 | ***************************************************************************/ | |
21 | ||
22 | // {{{ class OrangeReq | |
23 | ||
24 | class OrangeReq extends Validate | |
25 | { | |
26 | // {{{ properties | |
27 | ||
612a2d8a | 28 | public $unique = true; |
0337d704 | 29 | |
016872b4 SJ |
30 | public $oldGradYear; |
31 | public $newGradYear; | |
32 | public $entryYear; | |
eaf30d86 | 33 | |
fb2c09c9 SJ |
34 | public $rules = "À priori accepter (la validation sert à repousser les |
35 | petits malins). Refuse si tu connais la personne et que tu es sûr | |
0337d704 | 36 | qu'elle n'est pas orange."; |
37 | ||
38 | // }}} | |
39 | // {{{ constructor | |
40 | ||
016872b4 | 41 | public function __construct(User &$_user, $_newGradYear) |
0337d704 | 42 | { |
5daf68f6 | 43 | parent::__construct($_user, true, 'orange'); |
016872b4 | 44 | $this->newGradYear = $_newGradYear; |
fb2c09c9 SJ |
45 | $res = XDB::query("SELECT entry_year |
46 | FROM profile_education | |
ce0b2c6f | 47 | WHERE pid = {?} AND FIND_IN_SET('primary', flags)", $this->user->profile()->id()); |
016872b4 SJ |
48 | $this->entryYear = $res->fetchOneCell(); |
49 | $this->oldGradYear = $this->entryYear + 3; | |
0337d704 | 50 | } |
51 | ||
52 | // }}} | |
0337d704 | 53 | // {{{ function formu() |
54 | ||
612a2d8a | 55 | public function formu() |
56 | { | |
57 | return 'include/form.valid.orange.tpl'; | |
58 | } | |
0337d704 | 59 | |
60 | // }}} | |
61 | // {{{ function _mail_subj() | |
62 | ||
612a2d8a | 63 | protected function _mail_subj() |
0337d704 | 64 | { |
83eb5585 | 65 | return "[Polytechnique.org/ORANGE] Changement de promo de sortie"; |
0337d704 | 66 | } |
67 | ||
68 | // }}} | |
69 | // {{{ function _mail_body | |
70 | ||
612a2d8a | 71 | protected function _mail_body($isok) |
0337d704 | 72 | { |
0337d704 | 73 | if ($isok) { |
fb2c09c9 SJ |
74 | return " La demande de changement de promotion de sortie que tu as demandée vient d'être effectuée. " |
75 | . "Si tu le souhaites, tu peux maintenant modifier l'affichage de ta promotion sur le site sur la page suivante : " | |
76 | . "https://www.polytechnique.org/profile/edit"; | |
0337d704 | 77 | } else { |
fb2c09c9 | 78 | return " La demande de changement de promotion de sortie tu avais faite a été refusée."; |
0337d704 | 79 | } |
80 | } | |
81 | ||
82 | // }}} | |
83 | // {{{ function commit() | |
84 | ||
612a2d8a | 85 | public function commit() |
0337d704 | 86 | { |
fb2c09c9 SJ |
87 | XDB::execute("UPDATE profile_education |
88 | SET grad_year = {?} | |
ce0b2c6f | 89 | WHERE pid = {?} AND FIND_IN_SET('primary', flags)", $this->newGradYear, $this->user->profile()->id()); |
0337d704 | 90 | return true; |
91 | } | |
92 | ||
93 | // }}} | |
94 | } | |
95 | // }}} | |
96 | ||
a7de4ef7 | 97 | // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: |
0337d704 | 98 | ?> |