fix auth problem
[platal.git] / htdocs / wiki.php
index ab25fbc..33697b1 100644 (file)
@@ -31,9 +31,9 @@ if (!$n) {
 }
 
 new_skinned_page('wiki.tpl');
-$perms = get_perms($n);
+$perms = wiki_get_perms($n);
 
-switch (Env::get('action')) {
+switch (Env::v('action')) {
   case '':
     wiki_apply_perms($perms[0]);
     break;
@@ -47,10 +47,26 @@ switch (Env::get('action')) {
     break;
 }
 
+if ($p = Post::v('setrperms')) {
+    wiki_apply_perms('admin');
+    if (wiki_set_perms($n, $p, $perms[1])) {
+        $perms = wiki_get_perms($n);
+        $page->trig('Permissions mises à jour');
+    }
+}
+
+if ($p = Post::v('setwperms')) {
+    wiki_apply_perms('admin');
+    if (wiki_set_perms($n, $perms[0], $p)) {
+        $perms = wiki_get_perms($n);
+        $page->trig('Permissions mises à jour');
+    }
+}
+
 $wiki_cache   = wiki_work_dir().'/cache_'.$n.'.tpl';
 $cache_exists = file_exists($wiki_cache);
 
-if (Env::get('action') || !$cache_exists) {
+if (Env::v('action') || !$cache_exists) {
     @unlink($wiki_cache);
 
     // we leave pmwiki do whatever it wants and store everything
@@ -63,15 +79,13 @@ if (Env::get('action') || !$cache_exists) {
     $j = strpos($wikiAll, "<!--/PageLeftFmt-->", $i);
 }
 
-if (Env::get('action')) {
+if (Env::v('action')) {
     $page->assign('xorg_extra_header', substr($wikiAll, 0, $i));
     $wikiAll = substr($wikiAll, $j);
 } else {
     if (!$cache_exists) {
-        $f = fopen($wiki_cache, 'w');
         $wikiAll = substr($wikiAll, $j);
-        fputs($f, $wikiAll);
-        fclose($f);
+        wiki_putfile($wiki_cache, $wikiAll);
     } else {
         $wikiAll = file_get_contents($wiki_cache);
     }
@@ -89,6 +103,7 @@ $page->assign('wikipage', str_replace('.', '/', $n));
 $page->assign('pmwiki',   $wikiAll);
 
 $page->addCssLink('css/wiki.css');
+$page->addJsLink('javascript/wiki.js');
 
 $page->run();
 ?>