first reimport from platal
[platal.git] / htdocs / fiche.php
CommitLineData
0337d704 1<?php
2/***************************************************************************
3 * Copyright (C) 2003-2004 Polytechnique.org *
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
23require_once("xorg.inc.php");
24new_simple_page('fiche.tpl', AUTH_PUBLIC);
25require_once('user.func.inc.php');
26
27if (!Env::has('user') && !Env::has('mat')) {
28 $page->kill("cette page n'existe pas");
29}
30
31if (Env::has('user')) {
32 $login = get_user_forlife(Env::get('user'));
33 if ($login === false) {
34 $page->kill("");
35 }
36}
37
38if (Env::has('mat')) {
39 $res = $globals->xdb->query(
40 "SELECT alias
41 FROM aliases AS a
42 INNER JOIN auth_user_md5 AS u ON (a.id=u.user_id AND a.type='a_vie')
43 WHERE matricule={?}", Env::getInt('mat'));
44 $login = $res->fetchOneCell();
45 if (empty($login)) {
46 $page->kill("cette page n'existe pas");
47 }
48}
49
50$new = Env::get('modif') == 'new';
51$user = get_user_details($login, Session::getInt('uid'));
52$title = $user['prenom'] . ' ' . empty($user['nom_usage']) ? $user['nom'] : $user['nom_usage'];
53$page->assign('xorg_title', $title);
54
55// photo
56
57$photo = 'getphoto.php?x='.$user['forlife'].($new ? '&amp;req=true' : '');
58
59if(!isset($user['y']) and !isset($user['x'])) {
60 list($user['x'], $user['y']) = getimagesize("images/none.png");
61}
62if(!isset($user['y']) or $user['y'] < 1) $user['y']=1;
63if(!isset($user['x']) or $user['x'] < 1) $user['x']=1;
64if($user['x'] > 240){
65 $user['y'] = (integer)($user['y']*240/$user['x']);
66 $user['x'] = 240;
67}
68if($user['y'] > 300){
69 $user['x'] = (integer)($user['x']*300/$user['y']);
70 $user['y'] = 300;
71}
72if($user['x'] < 160){
73 $user['y'] = (integer)($user['y']*160/$user['x']);
74 $user['x'] = 160;
75}
76
77// manage the public fiche
78$page->assign('logged', logged() && !Env::has('public'));
79if (!logged() || Env::has('public')) {
80 // hide the orange status
81 $user['promo_sortie'] = $user['promo'] + 3;
82 if ($user['mobile_pub'] != 'public') $user['mobile'] = '';
83 if ($user['web_pub'] != 'public') $user['web'] = '';
84 if ($user['freetext_pub'] != 'public') $user['freetext'] = '';
85 foreach ($user['adr'] as $i=>$adr) {
86 if ($adr['pub'] != 'public' && $adr['tel_pub'] != 'public')
87 unset($user['adr'][$i]);
88 elseif ($adr['pub'] != 'public') {
89 $user['adr'][$i]['adr1'] = '';
90 $user['adr'][$i]['adr2'] = '';
91 $user['adr'][$i]['adr3'] = '';
92 $user['adr'][$i]['city'] = '';
93 $user['adr'][$i]['postcode'] = '';
94 $user['adr'][$i]['region'] = '';
95 $user['adr'][$i]['country'] = '00';
96 $user['adr'][$i]['countrytxt'] = '';
97 }
98 elseif ($adr['tel_pub'] != 'public') {
99 $user['adr'][$i]['tel'] = '';
100 $user['adr'][$i]['fax'] = '';
101 }
102 }
103 foreach ($user['adr_pro'] as $i=>$adr) {
104 if ($adr['pub'] != 'public' && $adr['tel_pub'] != 'public' && $adr['adr_pub'] != 'public' && $adr['email_pub'] != 'public')
105 unset($user['adr_pro'][$i]);
106 else {
107 if ($adr['adr_pub'] != 'public') {
108 $user['adr_pro'][$i]['adr1'] = '';
109 $user['adr_pro'][$i]['adr2'] = '';
110 $user['adr_pro'][$i]['adr3'] = '';
111 $user['adr_pro'][$i]['city'] = '';
112 $user['adr_pro'][$i]['postcode'] = '';
113 $user['adr_pro'][$i]['region'] = '';
114 $user['adr_pro'][$i]['country'] = '00';
115 $user['adr_pro'][$i]['countrytxt'] = '';
116 }
117 if ($adr['pub'] != 'public') {
118 $user['adr_pro'][$i]['entreprise'] = '';
119 $user['adr_pro'][$i]['secteur'] = '';
120 $user['adr_pro'][$i]['fonction'] = '';
121 $user['adr_pro'][$i]['poste'] = '';
122 }
123 if ($adr['tel_pub'] != 'public') {
124 $user['adr_pro'][$i]['tel'] = '';
125 $user['adr_pro'][$i]['fax'] = '';
126 $user['adr_pro'][$i]['mobile'] = '';
127 }
128 if ($adr['email_pub'] != 'public') {
129 $user['adr_pro'][$i]['email'] = '';
130 }
131 }
132 }
133 if ($user['medals_pub'] != 'public') {
134 unset($user['medals']);
135 }
136 if ($user['photo_pub'] != 'public') {
137 $photo = "";
138 }
139}
140foreach($user['adr_pro'] as $i=>$pro) {
141 if ($pro['entreprise'] == '' && $pro['fonction'] == ''
142 && $pro['secteur'] == '' && $pro['poste'] == ''
143 && $pro['adr1'] == '' && $pro['adr2'] == '' && $pro['adr3'] == ''
144 && $pro['postcode'] == '' && $pro['city'] == '' && $pro['country'] == '00'
145 && $pro['tel'] == '' && $pro['fax'] == '' && $pro['mobile'] == ''
146 && $pro['email'] == '')
147 unset($user['adr_pro'][$i]);
148}
149if (count($user['adr_pro']) == 0) unset($user['adr_pro']);
150if (count($user['adr']) == 0) unset($user['adr']);
151$page->assign_by_ref('x', $user);
152
153$page->assign('photo_url', $photo);
154// alias virtual
155$res = $globals->xdb->query(
156 "SELECT alias
157 FROM virtual
158 INNER JOIN virtual_redirect USING(vid)
159 INNER JOIN auth_user_quick ON ( user_id = {?} AND emails_alias_pub = 'public' )
160 WHERE ( redirect={?} OR redirect={?} )
161 AND alias LIKE '%@{$globals->mail->alias_dom}'",
162 Session::getInt('uid'), $user['forlife'].'@'.$globals->mail->domain, $user['forlife'].'@'.$globals->mail->domain2);
163$page->assign('virtualalias', $res->fetchOneCell());
164
165$page->addJsLink('javascript/close_on_esc.js');
166$page->run();
167
168// vim:set et sws=4 sw=4 sts=4:
169?>