Commit | Line | Data |
---|---|---|
0337d704 | 1 | <?php |
2 | /*************************************************************************** | |
ba6ae046 | 3 | * Copyright (C) 2003-2013 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 | ||
c3d1e6b6 | 24 | class OrangeReq extends ProfileValidate |
0337d704 | 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 | ||
26ba053e | 41 | public function __construct(User $_user, Profile $_profile, $_newGradYear) |
0337d704 | 42 | { |
c3d1e6b6 | 43 | parent::__construct($_user, $_profile, true, 'orange'); |
016872b4 | 44 | $this->newGradYear = $_newGradYear; |
7e233317 | 45 | $res = XDB::query("SELECT entry_year, grad_year |
fb2c09c9 | 46 | FROM profile_education |
c3d1e6b6 SJ |
47 | WHERE pid = {?} AND FIND_IN_SET('primary', flags)", |
48 | $this->profile->id()); | |
7e233317 SJ |
49 | $years = $res->fetchOneRow(); |
50 | $this->entryYear = $years[0]; | |
51 | $this->oldGradYear = $years[1]; | |
0337d704 | 52 | } |
53 | ||
54 | // }}} | |
0337d704 | 55 | // {{{ function formu() |
56 | ||
612a2d8a | 57 | public function formu() |
58 | { | |
59 | return 'include/form.valid.orange.tpl'; | |
60 | } | |
0337d704 | 61 | |
62 | // }}} | |
63 | // {{{ function _mail_subj() | |
64 | ||
612a2d8a | 65 | protected function _mail_subj() |
0337d704 | 66 | { |
83eb5585 | 67 | return "[Polytechnique.org/ORANGE] Changement de promo de sortie"; |
0337d704 | 68 | } |
69 | ||
70 | // }}} | |
71 | // {{{ function _mail_body | |
72 | ||
612a2d8a | 73 | protected function _mail_body($isok) |
0337d704 | 74 | { |
0337d704 | 75 | if ($isok) { |
7e233317 | 76 | return " La demande de changement de promotion que tu as demandée vient d'être effectuée. " |
fb2c09c9 SJ |
77 | . "Si tu le souhaites, tu peux maintenant modifier l'affichage de ta promotion sur le site sur la page suivante : " |
78 | . "https://www.polytechnique.org/profile/edit"; | |
0337d704 | 79 | } else { |
7e233317 | 80 | return " La demande de changement de promotion tu avais faite a été refusée."; |
0337d704 | 81 | } |
82 | } | |
83 | ||
84 | // }}} | |
85 | // {{{ function commit() | |
86 | ||
612a2d8a | 87 | public function commit() |
0337d704 | 88 | { |
fb2c09c9 SJ |
89 | XDB::execute("UPDATE profile_education |
90 | SET grad_year = {?} | |
7e233317 | 91 | WHERE pid = {?} AND FIND_IN_SET('primary', flags)", |
c3d1e6b6 | 92 | $this->newGradYear, $this->profile->id()); |
0337d704 | 93 | return true; |
94 | } | |
95 | ||
96 | // }}} | |
97 | } | |
98 | // }}} | |
99 | ||
a7de4ef7 | 100 | // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: |
0337d704 | 101 | ?> |