X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=include%2Fxnet%2Fpage.inc.php;h=1fce8e4abc73eac69b71a4834baf231c539d2c74;hb=f70f2bcdc077c220e40ecebaf569e097f6028743;hp=525890339702adb206958de9280664be5692a017;hpb=e336465e05bbca91fd0eb3f5b4c27f1391529f98;p=platal.git diff --git a/include/xnet/page.inc.php b/include/xnet/page.inc.php index 5258903..1fce8e4 100644 --- a/include/xnet/page.inc.php +++ b/include/xnet/page.inc.php @@ -1,6 +1,6 @@ PlatalPage($tpl, $type); + parent::__construct(); $this->register_function('list_all_my_groups', 'list_all_my_groups'); $this->register_modifier('cat_pp', 'cat_pp'); $this->assign('it_is_xnet', true); - if (!S::logged() && Get::has('auth')) { - XnetSession::doAuthX(); + global $globals; + $this->assign('is_logged', S::logged()); + if ($globals->asso('id')) { + $this->assign('asso', $globals->asso()); + $this->setType($globals->asso('cat')); + $this->assign('is_admin', may_update()); + $this->assign('is_member', is_member()); } } // }}} // {{{ function run() - function run() + public function run() { + if (!$this->nomenu) { + $this->useMenu(); + } $this->_run('xnet/skin.tpl'); } // }}} // {{{ function setType - function setType($type) + public function setType($type) { $this->assign('xnet_type', strtolower($type)); } @@ -57,56 +65,62 @@ class XnetPage extends PlatalPage // }}} // {{{ function useMenu - function useMenu() + private function useMenu() { global $globals; $menu = array(); - if (S::logged()) { - $sub = array(); - $sub['déconnexion'] = 'exit'; - $menu['no_title'] = $sub; - } - $sub = array(); - $sub['accueil'] = ''; $sub['liste des groupes'] = 'plan'; $sub['documentation'] = 'Xnet'; - $menu["Menu Principal"] = $sub; + $sub['signaler un bug'] = array('href' => 'send_bug', 'class' => 'popup_840x600'); + $menu["no_title"] = $sub; - if (S::logged() && (is_member() || may_update())) { + $perms = S::v('perms'); + $dim = $globals->asso('diminutif'); + if (S::logged() && $globals->asso()) { $sub = array(); - $dim = $globals->asso('diminutif'); - $sub['présentation'] = "$dim/"; - if (may_update() || $globals->asso('pub') == 'public') { + $sub['présentation'] = "login/$dim/"; + if ($perms->hasFlag('groupannu')) { $sub['annuaire du groupe'] = "$dim/annuaire"; - $sub['carte'] = "$dim/geoloc"; + $sub['trombinoscope'] = "$dim/trombi"; + $sub['planisphère'] = "$dim/geoloc"; } - if ($globals->asso('mail_domain')) { - $sub['listes de diffusion'] = "$dim/lists"; - $sub['envoyer un mail'] = "$dim/mail"; + if ($perms->hasFlag('groupmember')) { + if ($globals->asso('forum')) { + $sub['forum'] = "$dim/forum"; + } + if ($globals->asso('mail_domain')) { + $sub['listes de diffusion'] = "$dim/lists"; + } + } + $sub['événement'] = "$dim/events"; + if ($perms->hasFlag('groupmember')) { + $sub['télépaiement'] = "$dim/payment"; } - $sub['événement'] = "$dim/events"; - $sub['télépaiement'] = "$dim/paiement"; $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"; if ($globals->asso('mail_domain')) { - $sub['créer une liste'] = "$dim/lists/create"; - $sub['créer un alias'] = "$dim/alias/create"; + $sub['envoyer un mail'] = "$dim/mail"; + $sub['créer une liste'] = "$dim/lists/create"; + $sub['créer un alias'] = "$dim/alias/create"; } if (S::has_perms()) { - $sub['gérer les groupes'] = 'admin'; + $sub['gérer les groupes'] = array('href' => 'admin', 'style' => 'color: gray;'); + $sub['clear cache'] = array('href' => 'purge_cache', 'style' => 'color: gray;'); } $menu['Administrer'] = $sub; } elseif (S::has_perms()) { $sub = array(); - $sub['gérer les groupes'] = 'admin'; + $sub['gérer les groupes'] = 'admin'; + $sub['clear cache'] = 'purge_cache'; $menu['Administrer'] = $sub; } @@ -128,9 +142,10 @@ function list_all_my_groups($params) FROM groupex.asso AS a INNER JOIN groupex.membres AS m ON m.asso_id = a.id WHERE m.uid={?}", S::v('uid')); - $html = '
Mes groupes :
'; + $links = 'déconnexion'; + $html = '
Mes groupes (' . $links . ') :
'; while (list($nom, $mini) = $res->next()) { - $html .= "• $nom"; + $html .= "$nom"; } return $html; } @@ -152,5 +167,5 @@ function cat_pp($cat) // }}} -// vim:set et sw=4 sts=4 sws=4 foldmethod=marker: +// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: ?>