Commit | Line | Data |
---|---|---|
832e6fcb FB |
1 | <?php |
2 | /*************************************************************************** | |
12262f13 | 3 | * Copyright (C) 2003-2011 Polytechnique.org * |
832e6fcb FB |
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 | ||
26ba053e | 22 | function smarty_function_profile($params, $smarty) |
832e6fcb | 23 | { |
f00c59e8 | 24 | $params = new PlDict($params); |
31fd9b46 | 25 | $with_promo = $params->b('promo', false) || $params->b('cat', false); |
f00c59e8 FB |
26 | $with_sex = $params->b('sex', true); |
27 | $with_link = $params->b('link', true); | |
e019ea3d | 28 | $with_dir = $params->b('directory', true); |
f00c59e8 | 29 | $with_groupperms = $params->b('groupperms', true); |
9169d55a | 30 | $raw = $params->b('raw', false); |
f00c59e8 | 31 | $user = $params->v('user'); |
4533e245 RB |
32 | $profile = $params->v('profile'); |
33 | ||
4aae4d2c | 34 | if (is_int($user) || ctype_digit($user)) { |
f00c59e8 FB |
35 | $user = User::getWithUID($user); |
36 | } | |
832e6fcb | 37 | |
e019ea3d FB |
38 | if ($with_dir) { |
39 | $name = pl_entities($user->directoryName()); | |
40 | } else { | |
41 | $name = pl_entities($user->fullName()); | |
42 | } | |
832e6fcb | 43 | if ($with_promo) { |
31fd9b46 | 44 | $promo = $user->category(); |
45dcd6dd FB |
45 | if ($promo) { |
46 | $name .= ' (' . pl_entities($promo) . ')'; | |
47 | } | |
832e6fcb | 48 | } |
f16f89d8 SJ |
49 | if ($raw) { |
50 | return $name; | |
51 | } | |
52 | ||
53 | if ($with_sex && $user->isFemale()) { | |
54 | $name = '•' . $name; | |
55 | } | |
832e6fcb | 56 | if ($with_link) { |
4533e245 RB |
57 | if (is_null($profile)) { |
58 | $profile = $user->profile(); | |
59 | } | |
60 | ||
45dcd6dd FB |
61 | if ($profile) { |
62 | $name = '<a href="profile/' . $profile->hrid() . '" class="popup2">' . $name . '</a>'; | |
63 | } | |
64 | } | |
711f1d35 AL |
65 | if ($profile && $profile->isDead()) { |
66 | $name .= ' †'; | |
67 | } else if ($user->lost) { | |
f6c626bd SJ |
68 | $name .= ' <a href="https://www.polytechnique.org/marketing/broken/' . $user->hruid . '"><img src="images/icons/error.gif" alt="Patte cassée" /></a>'; |
69 | } | |
a1534b3f | 70 | if ($with_groupperms && $user instanceof User && $user->group_perms == 'admin' && !empty($name)) { |
45dcd6dd | 71 | $name = '<strong>' . $name . '</strong>'; |
832e6fcb FB |
72 | } |
73 | return $name; | |
74 | } | |
75 | ||
76 | // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: | |
77 | ?> |