Moving to GitHub.
[platal.git] / classes / xnetpage.php
index 7fdd2bb..280585f 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /***************************************************************************
- *  Copyright (C) 2003-2009 Polytechnique.org                              *
+ *  Copyright (C) 2003-2014 Polytechnique.org                              *
  *  http://opensource.polytechnique.org/                                   *
  *                                                                         *
  *  This program is free software; you can redistribute it and/or modify   *
@@ -27,6 +27,7 @@ class XnetPage extends PlPage
 
     public function __construct()
     {
+        global $globals;
         parent::__construct();
 
         $this->register_function('list_all_my_groups', 'list_all_my_groups');
@@ -41,10 +42,16 @@ class XnetPage extends PlPage
             $this->assign('is_admin', may_update());
             $this->assign('is_member', is_member());
         }
-        $this->addJsLink('jquery.js');
+        if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false) {
+            $this->addJsLink('json2.js');
+        }
+        $this->addJsLink('jquery.xorg.js');
         $this->addJsLink('overlib.js');
-        $this->addJsLink('wiki.js');
+        $this->addJsLink('core.js');
         $this->addJsLink('xorg.js');
+        if ($globals->core->sentry_js_dsn) {
+            $this->addJsLink('raven.min.js');
+        }
         $this->setTitle('Les associations polytechniciennes');
     }
 
@@ -55,6 +62,8 @@ class XnetPage extends PlPage
     {
         if (!$this->nomenu) {
             $this->useMenu();
+        } else {
+            $this->assign('menu', false);
         }
         $this->_run('xnet/skin.tpl');
     }
@@ -79,6 +88,10 @@ class XnetPage extends PlPage
         $sub = array();
         $sub['tous les groupes'] = 'plan';
         $sub['documentation']     = 'Xnet';
+        if (S::user()->type == 'xnet') {
+            $sub['mon compte'] = 'edit';
+            $sub['mes préférences'] = $globals->xnet->xorg_baseurl . 'prefs';
+        }
         $sub['signaler un bug']   = array('href' => 'send_bug/'.$_SERVER['REQUEST_URI'], 'class' => 'popup_840x600');
         $menu["no_title"]   = $sub;
 
@@ -91,16 +104,19 @@ class XnetPage extends PlPage
                 $sub['annuaire du groupe'] = "$dim/annuaire";
                 $sub['trombinoscope'] = "$dim/trombi";
             }
+            if ($globals->asso('forum')) {
+                $sub['forum'] = "$dim/forum";
+            }
             if ($perms->hasFlag('groupmember')) {
-                if ($globals->asso('forum')) {
-                    $sub['forum'] = "$dim/forum";
-                }
                 if ($globals->asso('mail_domain')) {
                     $sub['listes de diffusion'] = "$dim/lists";
                 }
+                if ($globals->asso('has_nl')) {
+                    $sub['newsletter'] = "$dim/nl";
+                }
             }
             $sub['événement'] = "$dim/events";
-            if ($perms->hasFlag('groupmember')) {
+            if ($perms->hasFlag('groupadmin')) {
                 $sub['télépaiement'] = "$dim/payment";
             }
 
@@ -112,10 +128,15 @@ class XnetPage extends PlPage
             $sub['modifier l\'accueil'] = "$dim/edit";
             $sub['gérer les annonces'] = "$dim/admin/announces";
             if ($globals->asso('mail_domain')) {
-                $sub['envoyer un mail']     = "$dim/mail";
+                if (!$globals->asso('disable_mails')) {
+                    $sub['envoyer un mail']     = "$dim/mail";
+                }
                 $sub['créer une liste']     = "$dim/lists/create";
                 $sub['créer un alias']      = "$dim/alias/create";
             }
+            if (!$globals->asso('has_nl')) {
+                $sub['créer la newsletter'] = "$dim/admin/nl/enable";
+            }
             if (S::admin()) {
                 $sub['gérer les groupes'] = array('href' => 'admin', 'style' => 'color: gray;');
                 $sub['clear cache'] = array('href' => 'purge_cache?token=' . S::v('xsrf_token'), 'style' => 'color: gray;');
@@ -142,8 +163,8 @@ function list_all_my_groups($params)
         return;
     }
     $res = XDB::iterRow('SELECT  a.nom, a.diminutif
-                           FROM  #groupex#.asso    AS a
-                     INNER JOIN  #groupex#.membres AS m ON m.asso_id = a.id
+                           FROM  groups    AS a
+                     INNER JOIN  group_members AS m ON m.asso_id = a.id
                           WHERE  m.uid = {?}', S::i('uid'));
     $links = '<a href="exit">déconnexion</a>';
     $html = '<div>Mes groupes (' . $links . ') :</div>';
@@ -170,5 +191,5 @@ function cat_pp($cat)
 
 // }}}
 
-// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker fenc=utf-8:
 ?>