$file = wiki_work_dir().'/'.str_replace('/', '.', $n);
$lines = explode("\n", @file_get_contents($file));
foreach ($lines as $line) {
- list($k, $v) = explode('=', $line, 2);
+ @list($k, $v) = explode('=', $line, 2);
if ($k == 'platal_perms') {
return explode(':', $v);
}
}
function wiki_apply_perms($perm) {
- global $page, $platal;
+ global $page, $platal, $globals;
switch ($perm) {
case 'public':
return;
case 'logged':
- if ((empty($GLOBALS['IS_XNET_SITE']) && !XorgSession::doAuthCookie()) ||
- ($GLOBALS['IS_XNET_SITE'] && !$_SESSION['session']->doAuth())) {
+ if (!call_user_func(array($globals->session, 'doAuthCookie'))) {
$platal = new Platal();
$platal->force_login($page);
}
return;
default:
- if (!$_SESSION['session']->doAuth()) {
- $platal = new Platal();
+ if (!call_user_func(array($globals->session, 'doAuth'))) {
+ $platal = empty($GLOBALS['IS_XNET_SITE']) ? new Platal() : new Xnet();
$platal->force_login($page);
}
if ($perm == 'admin') {
}
}
+function wiki_require_page($pagename)
+{
+ global $globals;
+ $pagename_slashes = str_replace('.','/',$pagename);
+ $pagename_dots = str_replace('/','.',$pagename);
+ if (is_file(wiki_work_dir().'/cache_'.$pagename_dots.'.tpl')) return;
+ system('wget '.$globals->baseurl.'/'.$pagename_slashes.' -O /dev/null');
+}
+
?>