<?php
/***************************************************************************
- * Copyright (C) 2003-2006 Polytechnique.org *
+ * Copyright (C) 2003-2007 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
// $GLOBALS['IS_XNET_SITE'] = true;
-require_once dirname(__FILE__).'/../classes/XDB.php';
-require_once dirname(__FILE__).'/../classes/Platal.php';
-require_once dirname(__FILE__).'/../classes/PLModule.php';
-require_once dirname(__FILE__).'/../classes/CoreLogger.php';
-
require_once dirname(__FILE__).'/../include/xorg.inc.php';
if (!($path = Env::v('n')) || ($path{0} < 'A' || $path{0} > 'Z')) {
$platal = new Platal('auth', 'banana', 'carnet', 'email', 'events',
'geoloc', 'lists', 'marketing', 'payment', 'platal',
- 'profile', 'register', 'search', 'stats', 'admin');
+ 'profile', 'register', 'search', 'stats', 'admin',
+ 'newsletter', 'axletter');
$platal->run();
exit;
require_once 'wiki.inc.php';
-$n = wiki_pagename();
+$n = wiki_pagename();
if (!$n) {
pl_redirect('');
}
-new_skinned_page('wiki.tpl');
+new_skinned_page('core/wiki.tpl');
$perms = wiki_get_perms($n);
-switch (Env::v('action')) {
- case '':
- wiki_apply_perms($perms[0]);
- break;
-
- case 'edit':
- wiki_apply_perms($perms[1]);
- break;
-
- default:
- wiki_apply_perms('admin');
- break;
-}
-
if ($p = Post::v('setrperms')) {
wiki_apply_perms('admin');
if (wiki_set_perms($n, $p, $perms[1])) {
}
}
-$wiki_cache = wiki_work_dir().'/cache_'.$n.'.tpl';
+// Generate cache even if we don't have access rights
+$wiki_cache = wiki_work_dir().'/cache_'.wiki_filename($n).'.tpl';
$cache_exists = file_exists($wiki_cache);
if (Env::v('action') || !$cache_exists) {
}
}
+// Check user perms
+switch (Env::v('action')) {
+ case '': case 'search':
+ wiki_apply_perms($perms[0]);
+ break;
+
+ case 'edit':
+ wiki_apply_perms($perms[1]);
+ break;
+
+ default:
+ wiki_apply_perms('admin');
+ break;
+}
+
$page->assign('perms', $perms);
$page->assign('perms_opts', wiki_perms_options());
$page->assign('has_perms', wiki_may_have_perms('admin'));
$page->assign('wikipage', str_replace('.', '/', $n));
-$page->assign('pmwiki', $wikiAll);
-
+if ($perms[1] == 'admin' && !Env::v('action')) {
+ $page->assign('pmwiki_cache', $wiki_cache);
+} else {
+ $page->assign('pmwiki', $wikiAll);
+ $page->assign('text', true);
+}
$page->addCssLink('wiki.css');
$page->addJsLink('wiki.js');