Fix networking display on profiles
[platal.git] / templates / profile / profile.tpl
... / ...
CommitLineData
1{**************************************************************************}
2{* *}
3{* Copyright (C) 2003-2010 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
23{literal}
24<script type="text/javascript">//<![CDATA[
25function chgMainWinLoc(strPage)
26{
27 strPage = platal_baseurl + strPage;
28 if (parent.opener) {
29 try {
30 parent.opener.document.location = strPage;
31 window.close();
32 } catch(e) {
33 window.open(strPage);
34 }
35 } else {
36 document.location = strPage;
37 }
38}
39//]]></script>
40{/literal}
41
42<div id="fiche">
43 <div id="photo" class="part">
44 {assign var=photo value=$profile->getPhoto(false)}
45 {if $photo}<img alt="Photo de {$profile->fullName()}" src="photo/{$profile->hrid()}" width="{$photo->width()}"/>{/if}
46
47 {if $logged && $view eq 'private' && ( $profile->section|smarty:nodefaults || $profile->getBinets()|smarty:nodefaults || ($owner && $owner->groups()|smarty:nodefaults))}
48 <h2>À l'X&hellip;</h2>
49 {if $profile->section}<div><em class="intitule">Section&nbsp;: </em><span>{$profile->section}</span></div>{/if}
50
51 {assign var=binets value=$profile->getBinets()}
52 {if $binets|@count}<div><em class="intitule">Binet{if count($binets) > 1}s{/if}&nbsp;: </em>
53 <span>{', '|implode:$profile->getBinetsNames()}</span></div>{/if}
54
55 {if $owner && $view eq 'private'}
56 {assign var=groups value=$owner->groupNames(true)}
57 {if $groups|@count}<div><em class="intitule">Groupe{if count($groups) > 1}s{/if} et institution{if count($groups) > 1}s{/if} X&nbsp;: </em>
58 <span><br/>
59 {foreach from=$groups item=group key=gk}{if $gk != 0}, {/if}<span title="{$group.nom}"><a href="{$group.site}">{$group.nom}</a></span>{/foreach}
60 </span></div>{/if}
61 {/if}
62
63 {/if}
64
65 {* 458752 stands for 0x70000 = Profile::NETWORKING_ALL *}
66 {assign var=networking value=$profile->getNetworking(458752)}
67 {if count($networking) > 0}
68 <h2>Sur le web...</h2>
69 {foreach from=$networking item=network}
70 <img style="width: auto; padding: 0" src="profile/networking/{$network.nwid}" alt="{$network.name}" title="{$network.name}"/>
71 {if $network.link}
72 <a href="{$network.link|replace:'%s':$network.address}">{$network.address}</a>
73 {else}
74 {$network.address}
75 {/if}
76 <br/>
77 {/foreach}
78 {/if}
79
80 {if $profile->freetext}
81 <h2>Commentaires&nbsp;:</h2>
82 <span>{$profile->freetext|miniwiki|smarty:nodefaults}</span>
83 {/if}
84
85 </div>
86
87 <div id="fiche_identite" class="part">
88 <div class="civilite">
89 {if $profile->isFemale()}&bull;{/if}
90 <span {if $profile->name_tooltip neq ""}class="hinted" title="{$profile->name_tooltip}"{/if}>{$profile->shortName()}</span>
91 {if $logged}
92 {if $profile->nickname} (alias {$profile->nickname}){/if}
93 {/if}
94
95 {if $logged}
96 &nbsp;{if !$profile->isDead()}<a href="vcard/{$owner->login()}.vcf">{*
97 *}{icon name=vcard title="Afficher la carte de visite"}</a>{/if}
98
99 {if !$smarty.session.user->isContact($profile)}
100 <a href="javascript:chgMainWinLoc('carnet/contacts?action=ajouter&amp;user={$owner->login()}&amp;token={xsrf_token}')">
101 {icon name=add title="Ajouter à mes contacts"}</a>
102 {else}
103 <a href="javascript:chgMainWinLoc('carnet/contacts?action=retirer&amp;user={$owner->login()}&amp;token={xsrf_token}')">
104 {icon name=cross title="Retirer de mes contacts"}</a>
105 {/if}
106
107 {if hasPerm('admin')}
108 <a href="javascript:chgMainWinLoc('admin/user/{$owner->login()}')">
109 {icon name=wrench title="administrer user"}</a>
110 {/if}
111
112 {if $owner->login() eq $smarty.session.hruid}
113 <a href="javascript:chgMainWinLoc('profile/edit')">{icon name="user_edit" title="Modifier ma fiche"}</a>
114 {/if}
115
116 {/if}
117 </div>
118
119 {if $logged && $view eq 'private'}
120 <div class='maj'>
121 Fiche mise à jour<br />
122 le {$profile->last_change|date_format}
123 </div>
124 {/if}
125
126 {* 121634816 is Profile::PHONE_LINK_PROFILE | Profile::PHONE_TYPE_ANY = 0x7400000 *}
127 {assign var=phones value=$profile->getPhones(121634816)}
128 {if ($logged && $view eq 'private') || count($phones) > 0}
129 <div class="contact">
130 {if $logged && $view eq 'private'}
131 <div class='email'>
132 {if $profile->isDead()}
133 Décédé{if $profile->isFemale()}e{/if} le {$profile->deathdate|date_format}
134 {elseif $owner && $owner->lost}
135 Ce{if $profile->isFemale()}tte{/if} camarade n'a plus d'adresse de redirection valide,<br />
136 <a href="marketing/broken/{$owner->login()}" class="popup">clique ici si tu connais son adresse email&nbsp;!</a>
137 {elseif $owner && $owner->state != 'active'}
138 Cette personne n'est pas inscrite à Polytechnique.org,<br />
139 <a href="marketing/public/{$owner->login()}" class="popup">clique ici si tu connais son adresse email&nbsp;!</a>
140 {else}
141 {if $virtualalias}
142 <a href="mailto:{$virtualalias}">{$virtualalias}</a><br />
143 {/if}
144 <a href="mailto:{$owner->bestEmail()}">{$owner->bestEmail()}</a>
145 {if $owner->bestEmail() neq $owner->forlifeEmail()}<br />
146 <a href="mailto:{$owner->forlifeEmail()}">{$owner->forlifeEmail()}</a>
147 {/if}
148 {/if}
149 </div>
150 {/if}
151 {if count($phones) > 0}
152 <div style="float: right">
153 {display_phones tels=$phones dcd=$profile->isDead()}
154 </div>
155 {/if}
156 <div class='spacer'></div>
157 </div>
158 {/if}
159
160 <div class='formation'>
161 {foreach from=$profile->nationalities() item=nat}
162 <img src='images/flags/{$nat}.gif' alt='{$nat}' height='11' title='{$nat}' />&nbsp;
163 {/foreach}
164
165 {$profile->promo()}
166
167 {if $logged && $profile->mentor_expertise}
168 [<a href="referent/{$profile->hrid()}" class='popup2'>Ma fiche référent</a>]
169 {/if}
170
171 {assign var=educations value=$profile->getEducations(32)}
172 {if count($educations) > 0}
173 &nbsp;-&nbsp;Formation&nbsp;:
174 <ul>
175 {foreach from=$educations item=edu}
176 <li>{display_education edu=$edu profile=$profile}</li>
177 {/foreach}
178 </ul>
179 {/if}
180
181 {assign var=corps value=$profile->getCorps()}
182 {if $corps && ($corps->current || $corps->original)}
183 <ul>
184 {if $corps->current}
185 <li>Corps actuel&nbsp;: {$corps->current_name} {$corps->current_rank}</li>
186 {/if}
187 {if $corps->original}
188 <li>Corps d'origine&nbsp;: {$corps->original_name}</li>
189 {/if}
190 </ul>
191 {/if}
192
193 </div>
194 </div>
195
196 {assign var=addr value=$profile->getAddresses(3)}
197 {if count($addr) > 0}
198 <div class="part">
199 <h2>Contact&nbsp;: </h2>
200 {if $profile->isDead()}
201 {assign var=address_name value="Dernière adresse"}
202 {else}
203 {assign var=address_name value="Adresse"}
204 {/if}
205 {foreach from=$addr item="address" name=addresses}
206 {if $smarty.foreach.addresses.iteration is even}
207 {assign var=pos value="right"}
208 {else}
209 {assign var=pos value="left"}
210 {/if}
211 {if $address->hasFlag('current')}
212 {include file="geoloc/address.tpl" address=$address titre_div=true titre=$address_name|@cat:" actuelle&nbsp;:"
213 for="`$profile->firstname` `$profile->lastname`" pos=$pos}
214 {elseif $address->hasFlag('secondary')}
215 {include file="geoloc/address.tpl" address=$address titre_div=true titre=$address_name|@cat:" secondaire&nbsp;:"
216 for="`$profile->firstname` `$profile->lastname`" pos=$pos}
217 {else}
218 {include file="geoloc/address.tpl" address=$address titre_div=true titre=$address_name|@cat:" principale&nbsp;:"
219 for="`$profile->firstname` `$profile->lastname`" pos=$pos}
220 {/if}
221 {if $smarty.foreach.addresses.iteration is even}<div class="spacer"></div>{/if}
222 {/foreach}
223 </div>
224 {/if}
225
226 {assign var=jobs value=$profile->getJobs(2)}
227 {if count($jobs) > 0}
228 <div class="part">
229 <h2>Informations professionnelles&nbsp;:</h2>
230 {foreach from=$jobs item="job" key="i"}
231 {if $i neq 0}<hr />{/if}
232 {include file="include/emploi.tpl" job=$job}
233 {assign var=phones value=$job->phones()}
234 {if $job->address()}
235 {include file="geoloc/address.tpl" address=$job->address() titre="Adresse&nbsp;: " for=$job->company->name pos="left" phones=$phones}
236 {elseif $phones}
237 {display_phones tels=$phones}
238 {/if}
239 <div class="spacer">&nbsp;</div>
240 {/foreach}
241 </div>
242 {/if}
243
244 {assign var=medals value=$profile->getMedals()}
245 {if count($medals) > 0}
246 <div class="part">
247 <h2>Distinctions&nbsp;: </h2>
248 {foreach from=$medals item=m}
249 <div class="medal_frame">
250 <img src="profile/medal/thumb/{$m.mid}" height="50px" alt="{$m.text}" title="{$m.text}" style='float: left;' />
251 <div class="medal_text">
252 {$m.text}<br />{$m.grade}
253 </div>
254 </div>
255 {/foreach}
256 <div class="spacer">&nbsp;</div>
257 </div>
258 {/if}
259
260 {if $logged && $profile->cv}
261 <div class="part">
262 <h2>Curriculum Vitae&nbsp;:</h2>
263 {$profile->cv|miniwiki:title|smarty:nodefaults}
264 </div>
265 {/if}
266
267 {if $view eq 'public'}
268 <div class="part">
269 <small>
270 Cette fiche est publique et visible par tout internaute,<br />
271 vous pouvez aussi voir <a href="profile/private/{$profile->hrid()}?display=light">celle&nbsp;réservée&nbsp;aux&nbsp;X</a>.
272 </small>
273 </div>
274 {elseif $view eq 'ax'}
275 <div class="part">
276 <small>
277 Cette fiche est privée et ne recense que les informations transmises à l'AX.
278 </small>
279 </div>
280 {/if}
281
282 <div class="spacer"></div>
283</div>
284
285{* vim:set et sw=2 sts=2 sws=2 enc=utf-8: *}