Fix clear cache on X.net
[platal.git] / include / xnet / page.inc.php
index 6190b5f..8acc8eb 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /***************************************************************************
- *  Copyright (C) 2003-2007 Polytechnique.org                              *
+ *  Copyright (C) 2003-2008 Polytechnique.org                              *
  *  http://opensource.polytechnique.org/                                   *
  *                                                                         *
  *  This program is free software; you can redistribute it and/or modify   *
@@ -88,17 +88,17 @@ class XnetPage extends PlatalPage
         $sub['signaler un bug']   = array('href' => 'send_bug', 'class' => 'popup_840x600');
         $menu["no_title"]   = $sub;
 
+        $perms = S::v('perms');
+        $dim = $globals->asso('diminutif');
         if (S::logged() && $globals->asso()) {
             $sub = array();
-            $dim = $globals->asso('diminutif');
             $sub['présentation'] = "login/$dim/";
-            if (may_update() || (is_member()  && $globals->asso('pub') == 'public')
-                || $globals->asso('cat') == 'Promotions') {
+            if ($perms->hasFlag('groupannu')) {
                 $sub['annuaire du groupe'] = "$dim/annuaire";
                 $sub['trombinoscope'] = "$dim/trombi";
-                $sub['carte'] = "$dim/geoloc";
+                $sub['planisphère'] = "$dim/geoloc";
             }
-            if (is_member() || may_update()) {
+            if ($perms->hasFlag('groupmember')) {
                 if ($globals->asso('forum')) {
                     $sub['forum'] = "$dim/forum";
                 }
@@ -107,14 +107,14 @@ class XnetPage extends PlatalPage
                 }
             }
             $sub['événement'] = "$dim/events";
-            if (may_update() || is_member()) {
+            if ($perms->hasFlag('groupmember')) {
                 $sub['télépaiement'] = "$dim/payment";
             }
 
             $menu[$globals->asso('nom')] = $sub;
         }
 
-        if (S::logged() && may_update()) {
+        if ($globals->asso() && is_object($perms) && $perms->hasFlag('groupadmin')) {
             $sub = array();
             $sub['modifier l\'accueil'] = "$dim/edit";
             $sub['gérer les annonces'] = "$dim/admin/announces";
@@ -125,13 +125,13 @@ class XnetPage extends PlatalPage
             }
             if (S::has_perms()) {
                 $sub['gérer les groupes'] = array('href' => 'admin', 'style' => 'color: gray;');
-                $sub['clear cache'] = array('href' => 'purge_cache', 'style' => 'color: gray;');
+                $sub['clear cache'] = array('href' => 'purge_cache?token=' . S::v('xsrf_token'), 'style' => 'color: gray;');
             }
             $menu['Administrer'] = $sub;
         } elseif (S::has_perms()) {
             $sub = array();
             $sub['gérer les groupes'] = 'admin';
-            $sub['clear cache'] = 'purge_cache';
+            $sub['clear cache'] = 'purge_cache?token=' . S::v('xsrf_token');
             $menu['Administrer'] = $sub;
         }