Force auth on newsletter unsubscription link
[platal.git] / include / banana / hooks.inc.php
index 6c4f19d..af146f5 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /***************************************************************************
- *  Copyright (C) 2003-2009 Polytechnique.org                              *
+ *  Copyright (C) 2003-2014 Polytechnique.org                              *
  *  http://opensource.polytechnique.org/                                   *
  *                                                                         *
  *  This program is free software; you can redistribute it and/or modify   *
@@ -19,7 +19,8 @@
  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
  ***************************************************************************/
 
-require_once 'banana/banana.inc.php';
+require_once dirname(__FILE__) . '/../../banana/banana/banana.inc.php';
+require_once dirname(__FILE__) . '/../../banana/banana/message.func.inc.php';
 
 function hook_formatDisplayHeader($_header, $_text, $in_spool = false)
 {
@@ -76,7 +77,7 @@ function hook_platalRSS($group)
     } else {
         $group = '';
     }
-    return '/rss/' . $group . S::v('hruid') . '/' . S::s('token') . '/rss.xml';
+    return '/rss/' . $group . S::v('hruid') . '/' . S::user()->token . '/rss.xml';
 }
 
 function hook_platalMessageLink($params)
@@ -190,9 +191,9 @@ function hook_getXFace($headers)
     }
     if (isset($headers['x-face'])) {
         $user = User::getSilent($login);
-        $res = XDB::query('SELECT  pf.uid
+        $res = XDB::query("SELECT  pf.uid
                              FROM  forum_profiles AS pf
-                            WHERE  pf.uid = {?} AND FIND_IN_SET(\'xface\', pf.flags)',
+                            WHERE  pf.uid = {?} AND FIND_IN_SET('xface', pf.flags)",
                           $user->id());
         if ($res->numRows()) {
             // User wants his xface to be showed, fallback to default handler
@@ -214,7 +215,7 @@ function make_Organization()
     global $globals;
     $perms = S::v('perms');
     $group = $globals->asso('nom');
-    if (S::has_perms()) {
+    if (S::admin()) {
         return "Administrateur de Polytechnique.org";
     } else if ($group && $perms->hasFlag('groupadmin')) {
         return "Animateur de $group";
@@ -306,7 +307,7 @@ class PlatalBananaPage extends BananaPage
 
 class BananaHandler
 {
-    public function __construct(PlWizard &$wiz)
+    public function __construct(PlWizard $wiz)
     {
     }
 
@@ -315,19 +316,21 @@ class BananaHandler
         return 'banana/index.tpl';
     }
 
-    public function prepare(PlPage &$page, $id)
+    public function prepare(PlPage $page, $id)
     {
     }
 
-    public function process()
+    public function success() { }
+
+    public function process(&$success)
     {
         return PlWizard::CURRENT_PAGE;
     }
 }
 
-function run_banana(&$page, $class, array $args)
+function run_banana($page, $class, array $args)
 {
-    $user =& S::user();
+    $user = S::user();
     $banana = new $class($user, $args);
     $page->assign('banana', $banana->run());
     $page->addCssInline($banana->css());
@@ -346,5 +349,5 @@ function run_banana(&$page, $class, array $args)
     }
 }
 
-// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker fenc=utf-8:
 ?>