From e3a55098b1cfd274d8965fc307a316d9f0c447a1 Mon Sep 17 00:00:00 2001 From: Vincent Zanotti Date: Sun, 15 Jun 2008 23:13:26 +0200 Subject: [PATCH] Converts Banana to the new forlife/hruid scheme. Signed-off-by: Vincent Zanotti --- include/banana/forum.inc.php | 24 +++++++++++------------- include/banana/hooks.inc.php | 4 ++-- include/banana/ml.inc.php | 6 +++--- include/banana/moderate.inc.php | 4 ++-- include/validations/evts.inc.php | 4 +--- modules/forums.php | 4 ++-- modules/lists.php | 2 +- modules/xnetgrp.php | 2 +- 8 files changed, 23 insertions(+), 27 deletions(-) diff --git a/include/banana/forum.inc.php b/include/banana/forum.inc.php index 394ae99..2f233af 100644 --- a/include/banana/forum.inc.php +++ b/include/banana/forum.inc.php @@ -24,22 +24,22 @@ require_once 'banana/hooks.inc.php'; function hook_checkcancel($_headers) { - return ($_headers['x-org-id'] == S::v('forlife') or S::has_perms()); + return ($_headers['x-org-id'] == S::v('hruid') or S::has_perms()); } class ForumsBanana extends Banana { - private $forlife; + private $user; - public function __construct($forlife, $params = null) + public function __construct(User &$user, $params = null) { - $this->forlife = $forlife; + $this->user = &$user; global $globals; Banana::$msgedit_canattach = false; Banana::$spool_root = $globals->banana->spool_root; array_push(Banana::$msgparse_headers, 'x-org-id', 'x-org-mail'); - Banana::$nntp_host = 'news://web_'.$forlife + Banana::$nntp_host = 'news://web_' . $user->login() . ":{$globals->banana->password}@{$globals->banana->server}:{$globals->banana->port}/"; if (S::has_perms()) { Banana::$msgshow_mimeparts[] = 'source'; @@ -73,7 +73,7 @@ class ForumsBanana extends Banana WHERE uid={?}", S::i('uid')); if (!(list($nom,$mail,$sig,$disp,$maj) = $req->fetchOneRow())) { $nom = S::v('prenom')." ".S::v('nom'); - $mail = S::v('forlife')."@" . $globals->mail->domain; + $mail = $this->user->forlifeEmail(); $sig = $nom." (".S::v('promo').")"; $disp = 0; $maj = 1; @@ -131,13 +131,11 @@ class ForumsBanana extends Banana public function post($dest, $reply, $subject, $body) { global $globals; - $res = XDB::query('SELECT nom, prenom, promo, b.alias AS bestalias + $res = XDB::query('SELECT nom, prenom, promo FROM auth_user_md5 AS u - INNER JOIN aliases AS a ON (a.id = u.user_id) - INNER JOIN aliases AS b ON (b.id = a.id AND FIND_IN_SET(\'bestalias\', b.flags)) - WHERE a.alias = {?}', $this->forlife); - list($nom, $prenom, $promo, $bestalias) = $res->fetchOneRow(); - Banana::$profile['headers']['From'] = "$prenom $nom ($promo) <$bestalias@{$globals->mail->domain}>"; + WHERE u.user_id = {?}', $this->user->id()); + list($nom, $prenom, $promo) = $res->fetchOneRow(); + Banana::$profile['headers']['From'] = "$prenom $nom ($promo) <{$this->user->bestEmail()}>"; Banana::$profile['headers']['Organization'] = make_Organization(); return parent::post($dest, $reply, $subject, $body); } @@ -189,7 +187,7 @@ class ForumsBanana extends Banana WHERE uid = {?}", S::v('uid')); if (!(list($nom, $mail, $sig, $disp, $maj, $xface) = $req->fetchOneRow())) { $nom = S::v('prenom').' '.S::v('nom'); - $mail = S::v('forlife').'@'.$globals->mail->domain; + $mail = $this->user->forlifeEmail(); $sig = $nom.' ('.S::v('promo').')'; $disp = 0; $maj = 0; diff --git a/include/banana/hooks.inc.php b/include/banana/hooks.inc.php index f0a2362..e475b27 100644 --- a/include/banana/hooks.inc.php +++ b/include/banana/hooks.inc.php @@ -76,7 +76,7 @@ function hook_platalRSS($group) } else { $group = ''; } - return '/rss/' . $group . S::v('forlife') . '/' . S::v('core_rss_hash') . '/rss.xml'; + return '/rss/' . $group . S::v('hruid') . '/' . S::v('core_rss_hash') . '/rss.xml'; } function hook_platalMessageLink($params) @@ -323,7 +323,7 @@ class BananaHandler function run_banana(&$page, $class, array $args) { - $banana = new $class(S::v('forlife'), $args); + $banana = new $class(S::user(), $args); $page->assign('banana', $banana->run()); $page->addCssInline($banana->css()); $page->addCssLink('banana.css'); diff --git a/include/banana/ml.inc.php b/include/banana/ml.inc.php index 1a5413f..bf7be94 100644 --- a/include/banana/ml.inc.php +++ b/include/banana/ml.inc.php @@ -46,7 +46,7 @@ class MLBanana extends Banana static public $listname; static public $domain; - function __construct($forlife, $params = null) + function __construct(User &$user, $params = null) { global $globals; Banana::$spool_root = $globals->banana->spool_root; @@ -75,9 +75,9 @@ class MLBanana extends Banana global $platal, $globals; $nom = S::v('prenom') . ' ' . S::v('nom'); - $mail = S::v('bestalias') . '@' . $globals->mail->domain; + $mail = $user->bestEmail(); $sig = $nom . ' (' . S::v('promo') . ')'; - Banana::$msgedit_headers['X-Org-Mail'] = S::v('forlife') . '@' . $globals->mail->domain; + Banana::$msgedit_headers['X-Org-Mail'] = $user->forlifeEmail(); // Build user profile Banana::$profile['headers']['From'] = "$nom <$mail>"; diff --git a/include/banana/moderate.inc.php b/include/banana/moderate.inc.php index 70cc2fa..688bc94 100644 --- a/include/banana/moderate.inc.php +++ b/include/banana/moderate.inc.php @@ -25,7 +25,7 @@ require_once 'banana/hooks.inc.php'; function hook_checkcancel($_headers) { - return ($_headers['x-org-id'] == S::v('forlife') or S::has_perms()); + return ($_headers['x-org-id'] == S::v('hruid') or S::has_perms()); } function hook_makeLink($params) @@ -57,7 +57,7 @@ class ModerationBanana extends Banana static public $domain; static public $client; - function __construct($forlife, $params = null) + function __construct(User &$user, $params = null) { global $globals; ModerationBanana::$client = $params['client']; diff --git a/include/validations/evts.inc.php b/include/validations/evts.inc.php index c33ce5e..f409530 100644 --- a/include/validations/evts.inc.php +++ b/include/validations/evts.inc.php @@ -147,10 +147,8 @@ class EvtReq extends Validate } global $globals; if ($globals->banana->event_forum) { - require_once 'user.func.inc.php'; - $forlife = get_user_forlife($this->uid); require_once 'banana/forum.inc.php'; - $banana = new ForumsBanana($forlife); + $banana = new ForumsBanana(User::getSilent($this->uid)); $post = $banana->post($globals->banana->event_forum, $globals->banana->event_reply, $this->titre, MiniWiki::wikiToText($this->texte, false, 0, 80)); diff --git a/modules/forums.php b/modules/forums.php index 3354d85..69c0243 100644 --- a/modules/forums.php +++ b/modules/forums.php @@ -89,7 +89,7 @@ class ForumsModule extends PLModule WHERE uid = {?}", S::v('uid')); if (!(list($nom, $mail, $sig, $disp, $maj, $xface) = $req->fetchOneRow())) { $nom = S::v('prenom').' '.S::v('nom'); - $mail = S::v('forlife').'@'.$globals->mail->domain; + $mail = S::user()->forlifeEmail(); $sig = $nom.' ('.S::v('promo').')'; $disp = 0; $maj = 0; @@ -140,7 +140,7 @@ class ForumsModule extends PLModule $_SESSION = array_merge($row, $_SESSION); require_once 'banana/forum.inc.php'; - $banana = new ForumsBanana(S::v('forlife'), array('group' => $group, 'action' => 'rss2')); + $banana = new ForumsBanana(S::user(), array('group' => $group, 'action' => 'rss2')); $banana->run(); exit; } diff --git a/modules/lists.php b/modules/lists.php index bc6078b..965709e 100644 --- a/modules/lists.php +++ b/modules/lists.php @@ -375,7 +375,7 @@ class ListsModule extends PLModule exit; } require_once('banana/ml.inc.php'); - $banana = new MLBanana(S::v('forlife'), Array('listname' => $liste, 'domain' => $domain, 'action' => 'rss2')); + $banana = new MLBanana(S::user(), Array('listname' => $liste, 'domain' => $domain, 'action' => 'rss2')); $banana->run(); } exit; diff --git a/modules/xnetgrp.php b/modules/xnetgrp.php index 270a010..0a18d0f 100644 --- a/modules/xnetgrp.php +++ b/modules/xnetgrp.php @@ -1179,7 +1179,7 @@ class XnetGrpModule extends PLModule $post = null;/* if ($globals->asso('forum')) { require_once 'banana/forum.inc.php'; - $banana = new ForumsBanana(S::v('forlife')); + $banana = new ForumsBanana(S::user()); $post = $banana->post($globals->asso('forum'), null, $art['titre'], MiniWiki::wikiToText($fulltext, false, 0, 80)); }*/ -- 2.1.4