X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=include%2Fbanana%2Fml.inc.php;h=1a5413f4e94946cf3044878e2f0a002466714cda;hb=730a173a333507926e0029d8a96c3a26b55756e4;hp=8a42f30e9d72531b6452a88ab307244cdd5d96b0;hpb=580d1c7d53dbcb617012217f9bd83e07a79b73e0;p=platal.git diff --git a/include/banana/ml.inc.php b/include/banana/ml.inc.php index 8a42f30..1a5413f 100644 --- a/include/banana/ml.inc.php +++ b/include/banana/ml.inc.php @@ -1,6 +1,6 @@ baseurl . '/' . $platal->ns . 'lists/archives/' . MLBanana::$listname; - $base = $base . hook_platalMessageLink($params); - if (@$params['action'] == 'showext') { - $base .= '?action=showext'; + public function __construct() + { + parent::__construct(); + global $platal; + $this->handler = 'BananaMLHandler'; + $this->base = $platal->pl_self(1); + } +} + +class BananaMLHandler extends BananaHandler +{ + public function template() + { + return 'lists/archives.tpl'; } - return $base; } class MLBanana extends Banana @@ -38,20 +46,28 @@ class MLBanana extends Banana static public $listname; static public $domain; - function __construct($params = null) + function __construct($forlife, $params = null) { + global $globals; Banana::$spool_root = $globals->banana->spool_root; Banana::$spool_boxlist = false; Banana::$msgedit_canattach = true; + Banana::$debug_mbox = ($globals->debug & DEBUG_BT); + Banana::$debug_smarty = ($globals->debug & DEBUG_SMARTY); + Banana::$mbox_helper = $globals->banana->mbox_helper; + Banana::$feed_updateOnDemand = true; if (S::has_perms()) { Banana::$msgshow_mimeparts[] = 'source'; - } + } array_push(Banana::$msgparse_headers, 'x-org-id', 'x-org-mail'); + if (!S::v('core_rss_hash')) { + Banana::$feed_active = false; + } MLBanana::$listname = $params['listname']; MLBanana::$domain = $params['domain']; $params['group'] = $params['listname'] . '@' . $params['domain']; - parent::__construct($params, 'MLArchive'); + parent::__construct($params, 'MLArchive', 'PlatalBananaMLPage'); } public function run() @@ -64,13 +80,13 @@ class MLBanana extends Banana Banana::$msgedit_headers['X-Org-Mail'] = S::v('forlife') . '@' . $globals->mail->domain; // Build user profile - Banana::$profile['headers']['From'] = utf8_encode("$nom <$mail>"); - Banana::$profile['headers']['Organization'] = 'Utilisateur de Polytechnique.org'; - Banana::$profile['signature'] = utf8_encode($sig); - + Banana::$profile['headers']['From'] = "$nom <$mail>"; + Banana::$profile['headers']['Organization'] = make_Organization(); + Banana::$profile['signature'] = $sig; + // Page design Banana::$page->killPage('forums'); - Banana::$page->killPage('subscribe'); + Banana::$page->killPage('subscribe'); // Run Banana return parent::run(); @@ -90,13 +106,13 @@ class BananaMLArchive extends BananaMBox { global $globals; $spool = $globals->lists->spool . '/'; - $list = glob($spool . '*.mbox', GLOB_ONLYDIR); + $list = glob($spool . '*.mbox/*.mbox'); if ($list === false) { return array(); } $groups = array(); foreach ($list as $path) { - $path = substr($path, strlen($spool)); + $path = substr($path, strpos($path, 'mbox/') + 5); $path = substr($path, 0, -5); list($domain, $listname) = explode($globals->lists->vhost_sep, $path, 2); $group = $listname . '@' . $domain; @@ -131,4 +147,5 @@ class BananaMLArchive extends BananaMBox } } +// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: ?>