Fixes a few issues in the process of the broken addresses.
[platal.git] / modules / carnet.php
index 2bd196c..54a118d 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /***************************************************************************
- *  Copyright (C) 2003-2008 Polytechnique.org                              *
+ *  Copyright (C) 2003-2009 Polytechnique.org                              *
  *  http://opensource.polytechnique.org/                                   *
  *                                                                         *
  *  This program is free software; you can redistribute it and/or modify   *
@@ -29,9 +29,9 @@ class CarnetModule extends PLModule
             'carnet/notifs'         => $this->make_hook('notifs',   AUTH_COOKIE),
 
             'carnet/contacts'       => $this->make_hook('contacts', AUTH_COOKIE),
-            'carnet/contacts/pdf'   => $this->make_hook('pdf',      AUTH_COOKIE, 'user', NO_HTTPS),
+            'carnet/contacts/pdf'   => $this->make_hook('pdf',      AUTH_COOKIE),
+            'carnet/contacts/vcard' => $this->make_hook('vcard',    AUTH_COOKIE),
             'carnet/contacts/ical'  => $this->make_hook('ical',     AUTH_PUBLIC, 'user', NO_HTTPS),
-            'carnet/contacts/vcard' => $this->make_hook('vcard',    AUTH_COOKIE, 'user', NO_HTTPS),
 
             'carnet/rss'            => $this->make_hook('rss',      AUTH_PUBLIC, 'user', NO_HTTPS),
         );
@@ -43,7 +43,7 @@ class CarnetModule extends PLModule
             return;
         }
         $page->setRssLink('Polytechnique.org :: Carnet',
-                          '/carnet/rss/'.S::v('forlife') .'/'.S::v('core_rss_hash').'/rss.xml');
+                          '/carnet/rss/'.S::v('hruid').'/'.S::v('core_rss_hash').'/rss.xml');
     }
 
     function handler_index(&$page)
@@ -78,7 +78,7 @@ class CarnetModule extends PLModule
         if(preg_match('!^ *(\d{4}) *$!', $arg, $matches)) {
             $p = intval($matches[1]);
             if($p<1900 || $p>2100) {
-                $page->trigError("la promo entrée est invalide");
+                $page->trigError('La promo entrée est invalide.');
             } else {
                 if ($action == 'add_promo') {
                     $watch->_promos->add($p);
@@ -90,9 +90,9 @@ class CarnetModule extends PLModule
             $p1 = intval($matches[1]);
             $p2 = intval($matches[2]);
             if($p1<1900 || $p1>2100) {
-                $page->trigError('la première promo de la plage entrée est invalide');
+                $page->trigError('La première promo de la plage entrée est invalide.');
             } elseif($p2<1900 || $p2>2100) {
-                $page->trigError('la seconde promo de la plage entrée est invalide');
+                $page->trigError('La seconde promo de la plage entrée est invalide.');
             } else {
                 if ($action == 'add_promo') {
                     $watch->_promos->addRange($p1, $p2);
@@ -158,41 +158,6 @@ class CarnetModule extends PLModule
         $page->assign_by_ref('watch', $watch);
     }
 
-    function _get_list($offset, $limit) {
-        $uid   = S::v('uid');
-        $res   = XDB::query("SELECT COUNT(*) FROM contacts WHERE uid = {?}", $uid);
-        $total = $res->fetchOneCell();
-
-        $order = Get::v('order');
-        $orders = Array(
-            'nom'     => 'nom DESC, u.prenom, u.promo',
-            'promo'   => 'promo DESC, nom, u.prenom',
-            'last'    => 'u.date DESC, nom, u.prenom, promo');
-        if ($order != 'promo' && $order != 'last')
-            $order = 'nom';
-        $order = $orders[$order];
-        if (Get::v('inv') == '')
-            $order = str_replace(" DESC,", ",", $order);
-
-        $res   = XDB::query("
-                SELECT  u.prenom, IF(u.nom_usage='',u.nom,u.nom_usage) AS nom, a.alias AS forlife, u.promo
-                  FROM  contacts       AS c
-            INNER JOIN  auth_user_md5  AS u   ON (u.user_id = c.contact)
-            INNER JOIN  aliases        AS a   ON (u.user_id = a.id AND a.type='a_vie')
-                 WHERE  c.uid = {?}
-              ORDER BY  $order
-                 LIMIT  {?}, {?}", $uid, $offset*$limit, $limit);
-        $list  = $res->fetchAllAssoc();
-
-        return Array($total, $list);
-    }
-
-    function searchErrorHandler($explain) {
-        $page =& Platal::page();
-        $page->trigError($explain);
-        $this->handler_contacts($page);
-    }
-
     function handler_contacts(&$page, $action = null, $subaction = null, $ssaction = null)
     {
         $page->setTitle('Mes contacts');
@@ -211,7 +176,7 @@ class CarnetModule extends PLModule
                 if (($user = User::get(Env::v('user')))) {
                     if (XDB::execute("DELETE FROM  contacts
                                             WHERE  uid = {?} AND contact = {?}", $uid, $user->id())) {
-                        $page->trigSuccess("Contact retiré !");
+                        $page->trigSuccess("Contact retiré&nbsp;!");
                     }
                 }
                 break;
@@ -220,9 +185,9 @@ class CarnetModule extends PLModule
                 if (($user = User::get(Env::v('user')))) {
                     if (XDB::execute("REPLACE INTO  contacts (uid, contact)
                                             VALUES  ({?}, {?})", $uid, $user->id())) {
-                        $page->trigSuccess('Contact ajouté !');
+                        $page->trigSuccess('Contact ajouté&nbsp;!');
                     } else {
-                        $page->trigWarning('Contact déjà dans la liste !');
+                        $page->trigWarning('Contact déjà dans la liste&nbsp;!');
                     }
                 }
                 break;
@@ -309,6 +274,7 @@ class CarnetModule extends PLModule
         } else if (!$uid) {
             exit;
         }
+
         require_once 'ical.inc.php';
         $page->changeTpl('carnet/calendar.tpl', NO_SKIN);
         $page->register_function('display_ical', 'display_ical');
@@ -320,21 +286,21 @@ class CarnetModule extends PLModule
                         u.naissance,
                         DATE_ADD(u.naissance, INTERVAL 1 DAY) AS end,
                         u.date_ins,
-                        a.alias AS forlife
+                        u.hruid
                    FROM contacts      AS c
              INNER JOIN auth_user_md5 AS u ON (u.user_id = c.contact)
              INNER JOIN aliases       AS a ON (u.user_id = a.id AND a.type = \'a_vie\')
                   WHERE c.uid = {?}', $uid);
 
         $annivs = Array();
-        while (list($prenom, $nom, $promo, $naissance, $end, $ts, $forlife) = $res->next()) {
+        while (list($prenom, $nom, $promo, $naissance, $end, $ts, $hruid) = $res->next()) {
             $naissance = str_replace('-', '', $naissance);
             $end       = str_replace('-', '', $end);
             $annivs[] = array(
                 'timestamp' => strtotime($ts),
                 'date'      => $naissance,
                 'tomorrow'  => $end,
-                'forlife'   => $forlife,
+                'hruid'     => $hruid,
                 'summary'   => 'Anniversaire de '.$prenom
                                 .' '.$nom.' - x '.$promo,
             );