if (!S::v('core_rss_hash')) {
Banana::$feed_active = false;
}
- parent::__construct($params);
+ parent::__construct($params, 'NNTP', 'PlatalBananaPage');
}
public function run()
return $base . '/' . $params['page'];
}
if (@$params['action'] == 'subscribe') {
- return $base . '/subscription';
+ return $base . '/subscribe';
}
if (!isset($params['group'])) {
}
}
+class PlatalBananaPage extends BananaPage
+{
+ public function __construct()
+ {
+ Banana::$withtabs = false;
+ parent::__construct();
+ }
+
+ protected function prepare()
+ {
+ $tpl = parent::prepare();
+ global $wiz, $page;
+ $wiz = new PlWizard('Banana', 'core/plwizard.tpl', true, false);
+ foreach ($this->pages as $name=>&$mpage) {
+ $wiz->addPage('BananaHandler', $mpage['text'], $name);
+ }
+ $wiz->apply($page, 'banana', $this->page);
+ return $tpl;
+ }
+}
+
+class BananaHandler
+{
+ public function __construct(PlWizard &$wiz)
+ {
+ }
+
+ public function template()
+ {
+ return 'banana/index.tpl';
+ }
+
+ public function prepare(PlatalPage &$page, $id)
+ {
+ }
+
+ public function process()
+ {
+ return PlWizard::CURRENT_PAGE;
+ }
+}
+
function run_banana(&$page, $class, array $args)
{
$banana = new $class(S::v('forlife'), $args);
}
}
-require_once('banana/page.inc.php');
-
class ModerationPage extends BananaPage
{
protected function prepare()
}
}
-require_once('banana/protocoleinterface.inc.php');
-require_once('banana/message.inc.php');
-
class BananaMLInterface implements BananaProtocoleInterface
{
private $infos; //(list, addr, host, desc, info, diff, ins, priv, sub, own, nbsub)
{
return array(
'banana' => $this->make_hook('banana', AUTH_COOKIE),
+ 'banana/forums' => $this->make_hook('banana', AUTH_COOKIE),
+ 'banana/message' => $this->make_hook('message', AUTH_COOKIE),
+ 'banana/thread' => $this->make_hook('thread', AUTH_COOKIE),
'banana/profile' => $this->make_hook('profile', AUTH_MDP),
- 'banana/subscription' => $this->make_hook('subscription', AUTH_COOKIE),
+ 'banana/subscribe' => $this->make_hook('subscription', AUTH_COOKIE),
'banana/rss' => $this->make_hook('rss', AUTH_PUBLIC, 'user', NO_HTTPS),
);
}
run_banana($page, 'ForumsBanana', $get);
}
+ function handler_message(&$page)
+ {
+ pl_redirect('banana/' . S::v('banana_group') . '/read/' . S::i('banana_artid'));
+ }
+
+ function handler_thread(&$page)
+ {
+ pl_redirect('banana/' . S::v('banana_group'));
+ }
+
function handler_profile(&$page, $action = null)
{
global $globals;