Only uses autoload to require validation classes.
[platal.git] / templates / xnetgrp / annuaire.tpl
index 5aeec1d..7da8c93 100644 (file)
 {*                                                                        *}
 {**************************************************************************}
 
-<h1>{$asso.nom}&nbsp;: Annuaire du groupe </h1>
+<h1>{$asso->nom}&nbsp;: Annuaire du groupe </h1>
 
 <p class="descr">
-Le groupe {$asso.nom} compte {$nb_tot} membres&nbsp;:
+Le groupe {$asso->nom} compte {$nb_tot} membres&nbsp;:
 </p>
 
 <ul class="descr">
   {if $is_admin}
   <li>
     <a href="{$platal->ns}member/new">
-      {icon name=add title="Ajouter un membre"} 
+      {icon name=add title="Ajouter un membre"}
       Ajouter un membre
     </a>
   </li>
-  {if $asso.has_ml}
+  {if $asso->has_ml}
   <li>
     <a href="{$platal->ns}admin/annuaire">
-      {icon name=wand title="Synchroniser"} 
+      {icon name=wand title="Synchroniser"}
       Synchroniser annuaire et listes de diffusion
     </a>
   </li>
   {/if}
   {/if}
   <li>
-    <a href="{$platal->ns}annuaire/csv/{$asso.diminutif}.csv">
-      {icon name=page_excel title="Fichier Excel"} 
+    <a href="{$platal->ns}annuaire/csv/{$asso->diminutif}.csv">
+      {icon name=page_excel title="Fichier Excel"}
       Obtenir au format Excel
     </a>
   </li>
   <li>
-    <a href="{$platal->ns}annuaire/vcard/photos/{$asso.diminutif}.vcf">
-      {icon name=vcard title="Carte de visite"} 
+    <a href="{$platal->ns}annuaire/vcard/photos/{$asso->diminutif}.vcf">
+      {icon name=vcard title="Carte de visite"}
       Ajouter les membres à ton carnet d'adresse
     </a>
-    (<a href="{$platal->ns}annuaire/vcard/{$asso.diminutif}.vcf">sans les photos</a>)
+    (<a href="{$platal->ns}annuaire/vcard/{$asso->diminutif}.vcf">sans les photos</a>)
   </li>
 </ul>
 
@@ -63,35 +63,38 @@ Le groupe {$asso.nom} compte {$nb_tot} membres&nbsp;:
 {else}
 
 <p class="center">
-[<a href="{$platal->ns}annuaire?order={$smarty.request.order}" {if !$only_admin}class="erreur"{/if}>tous les membres</a>]
-[<a href="{$platal->ns}annuaire?order={$smarty.request.order}&amp;admin=1" {if $only_admin}class="erreur"{/if}>animateurs</a>]<br/>
+[<a href="{$platal->ns}annuaire?order={$order}" {if !$only_admin}class="erreur"{/if}>tous les membres</a>]
+[<a href="{$platal->ns}annuaire?order={$order}&amp;admin=1" {if $only_admin}class="erreur"{/if}>animateurs</a>]<br/>
+{*
+ XXX: This code has been temporary dropped, waiting for a cleaner way to do that stuff
 {foreach from=$alphabet item=c}
 {if $c}
-[<a href="{$platal->ns}annuaire?{$group}={$c}&amp;order={$smarty.request.order}{if $only_admin}&amp;admin=1{/if}"{if $request_group eq $c} class="erreur"{/if}>{$c}</a>]
+[<a href="{$platal->ns}annuaire?order={$order}&amp;admin={$only_admin}"{if $request_group eq $c} class="erreur"{/if}>{$c}</a>]
 {/if}
 {/foreach}
+*}
 </p>
 
 <table summary="membres du groupe" class="bicol">
   <tr>
     <th>
-      <a href="{$platal->ns}annuaire?order=alpha{if $sort neq "alpha_inv"}_inv{/if}{if $request_group and $group eq 'initiale'}&amp;initiale={$request_group}{/if}{if $only_admin}&amp;admin=1{/if}">
-      {if $sort eq 'alpha'}
+      <a href="{$platal->ns}annuaire?order={if $order eq 'directory_name'}-{/if}directory_name&amp;admin={$only_admin}">
+      {if $order eq 'directory_name'}
         <img src="{$platal->baseurl}images/dn.png" alt="" title="Tri croissant" />
-      {elseif $sort eq 'alpha_inv'}
+      {elseif $order eq '-directory_name'}
         <img src="{$platal->baseurl}images/up.png" alt="" title="Tri décroissant" />
       {/if}
-      Prénom NOM 
+      NOM Prénom
       </a>
     </th>
     <th>
-      <a href="{$platal->ns}annuaire?order=promo{if $sort eq "promo"}_inv{/if}{if $request_group and $group eq 'promo'}&amp;promo={$request_group}{/if}">
-      {if $sort eq 'promo_inv'}
+      <a href="{$platal->ns}annuaire?order={if $order eq 'promo'}-{/if}promo&amp;admin={$only_admin}">
+      {if $order eq '-promo'}
         <img src="{$platal->baseurl}images/dn.png" alt="" title="Tri croissant" />
-      {elseif $sort eq 'promo'}
+      {elseif $order eq 'promo'}
         <img src="{$platal->baseurl}images/up.png" alt="" title="Tri décroissant" />
       {/if}
-        Promo
+      Promo
       </a>
     </th>
     <th colspan="2">Infos</th>
@@ -99,51 +102,56 @@ Le groupe {$asso.nom} compte {$nb_tot} membres&nbsp;:
     <th>Actions</th>
     {/if}
   </tr>
-  {iterate from=$ann item=m}
+  {assign var=lostUsers value=false}
+  {foreach from=$users item=user}
   <tr>
     <td>
-      {if $m.admin}<strong>{/if}
-      {if $m.inscrit}
-      <a href="https://www.polytechnique.org/profile/{$m.email}" class="popup2">
-      {elseif $m.x}
-      <a href="https://www.polytechnique.org/marketing/public/{$m.uid}">
-      {/if}
-      {if $m.femme}&bull;{/if}{if $m.prenom || $m.nom}{$m.prenom} {$m.nom|mb_strtoupper}{else}{$m.email}{/if}
-      {if $m.x}</a>{/if} 
-      {if $m.admin}</strong>{/if}
-      {if $m.inscrit && !$m.actif}
-      <a href="https://www.polytechnique.org/marketing/broken/{$m.email}">{icon name=error title="Recherche d'email"}</a>
-      {assign var=broken value=true}
-      {/if}</td>
-    <td>{if $m.admin}<strong>{/if}{$m.promo}{if $m.admin}</strong>{/if}</td>
-    {if $m.comm}
-    <td>{$m.comm}</td>
+      {if $user->lost}{assign var=lostUsers value=true}{/if}
+      {profile user=$user promo=false}
+    </td>
+    <td>
+      {if $user->group_perms eq 'admin' && $user->promo()}<strong>{/if}
+      {$user->promo()}
+      {if $user->group_perms eq 'admin' && $user->promo()}</strong>{/if}
+    </td>
+    {if $user->group_comm}
+    <td>{$user->group_comm}</td>
     {/if}
-    <td class="right" {if !$m.comm}colspan="2"{/if}>
-      {if $m.inscrit}
-      <a href="https://www.polytechnique.org/vcard/{$m.email}.vcf">{icon name=vcard title="[vcard]"}</a>
-      <a href="mailto:{$m.email}@polytechnique.org">{icon name=email title="email"}</a>
-      {else}
-      <a href="mailto:{$m.email}">{icon name=email title="email"}</a>
+    <td class="right"{if !$user->group_comm} colspan="2"{/if}>
+      {if $user->hasProfile()}
+      <a href="https://www.polytechnique.org/vcard/{$user->login()}.vcf">{icon name=vcard title="[vcard]"}</a>
       {/if}
+      <a href="mailto:{$user->bestEmail()}">{icon name=email title="email"}</a>
     </td>
     {if $is_admin}
     <td class="center">
-      <a href="{$platal->ns}member/{if $m.x}{$m.email}{else}{$m.uid}{/if}">{icon name=user_edit title="Edition du profil"}</a>
-      <a href="{$platal->ns}member/del/{if $m.x}{$m.email}{else}{$m.uid}{/if}">{icon name=delete title="Supprimer de l'annuaire"}</a>
+      <a href="{$platal->ns}member/{$user->login()}">{icon name=user_edit title="Édition du profil"}</a>
+      <a href="{$platal->ns}member/del/{$user->login()}">{icon name=delete title="Supprimer de l'annuaire"}</a>
     </td>
     {/if}
   </tr>
-  {/iterate}
+  {/foreach}
 </table>
 
+{if $pages gt 1}
 <p class="descr" style="text-align: center">
-{foreach from=$links item=ofs key=txt}
-<a href="{$platal->ns}annuaire?offset={$ofs}&amp;initiale={$smarty.request.initiale}&amp;order={$sort}"{if $smarty.request.offset eq $ofs} class="erreur"{/if}>{$txt}</a>
-{/foreach}
+{section name="links" loop=$pages}
+{if $smarty.section.links.index eq $current}
+<span class="erreur">{$smarty.section.links.iteration}</span>
+{else}
+{if $smarty.section.links.first}
+<a href="{$platal->ns}annuaire?offset={$current-1}&amp;order={$order}&amp;admin={$only_admin}">précédente</a>
+{/if}
+<a href="{$platal->ns}annuaire?offset={$smarty.section.links.index}&amp;order={$order}&amp;admin={$only_admin}">{$smarty.section.links.iteration}</a>
+{if $smarty.section.links.last}
+<a href="{$platal->ns}annuaire?offset={$current+1}&amp;order={$order}&amp;admin={$only_admin}">suivante</a>
+{/if}
+{/if}
+{/section}
 </p>
+{/if}
 
-{if $broken}
+{if $lostUsers}
 <p class="smaller">
   {icon name=error}&nbsp;Un camarade signalé par ce symbole n'a plus d'adresse de redirection et ne peut donc
   plus être contacté via son adresse polytechnique.org. Si tu connais sa nouvelle adresse, tu peux nous la communiquer en