X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=classes%2Fxnet.php;h=f3da66f9c24e49675bfaf79b6fcc869255a137ab;hb=6fb32a231824322d6a42fecb04e52bbf7a421166;hp=c221c450ed9fc8ac5b2e4b804769cad158adcf4c;hpb=409de7a72aeb2cef7abfa7dbb4c3a8289e2312f9;p=platal.git diff --git a/classes/xnet.php b/classes/xnet.php index c221c45..f3da66f 100644 --- a/classes/xnet.php +++ b/classes/xnet.php @@ -1,6 +1,6 @@ asso()) { @@ -38,27 +38,26 @@ class Xnet extends Platal } } - function find_nearest_key($key, &$array) + protected function find_nearest_key($key, array &$array) { global $globals; - $k = parent::find_nearest_key($key, $array); - if (is_null($k) && in_array('%grp', array_keys($array)) && $globals->asso()) { + if (in_array('%grp', array_keys($array)) && $key == $globals->asso('diminutif')) { return '%grp'; } - return $k; + return parent::find_nearest_key($key, $array); } - function list_hooks() + public function near_hook() { - $link = parent::list_hooks(); - if (strpos($link, '%grp') !== false) { - global $globals; - return str_replace('%grp', $globals->asso('diminutif'), $link); - } - return $link; + global $globals; + $link = str_replace('%grp', $globals->asso('diminutif'), parent::near_hook()); + if ($link != $this->path) { + return $link; + } + return null; } - function find_hook() + protected function find_hook() { $ans = parent::find_hook(); if ($ans && $this->ns) { @@ -68,10 +67,11 @@ class Xnet extends Platal return $ans; } - function force_login(&$page) + public function force_login(&$page) { http_redirect(S::v('loginX')); } } +// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: ?>