X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;ds=sidebyside;f=classes%2Fxnet.php;h=a5a739a5243e4981e2b9cfc8fa16331dbaae2f2a;hb=0c058df59eeee4396280cf6ee431baa4e2c8d221;hp=c221c450ed9fc8ac5b2e4b804769cad158adcf4c;hpb=409de7a72aeb2cef7abfa7dbb4c3a8289e2312f9;p=platal.git diff --git a/classes/xnet.php b/classes/xnet.php index c221c45..a5a739a 100644 --- a/classes/xnet.php +++ b/classes/xnet.php @@ -1,6 +1,6 @@ asso()) { @@ -38,29 +38,35 @@ 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); + global $globals; + $link = str_replace('%grp', $globals->asso('diminutif'), parent::near_hook()); + if ($link != $this->path) { + return $link; } - return $link; + return null; + } + + public function pl_self($n = null) + { + global $globals; + return str_replace('%grp', $globals->asso('diminutif'), parent::pl_self($n)); } - function find_hook() + protected function find_hook() { $ans = parent::find_hook(); + $this->https = false; if ($ans && $this->ns) { $this->path = $this->ns . substr($this->path, 5); $this->argv[0] = $this->ns . substr($this->argv[0], 5); @@ -68,10 +74,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: ?>