From 04d87141d2bdaabd081cbe64d5e0fb7ffa54d41c Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Thu, 15 Mar 2018 16:03:16 +0100 Subject: [inc/Dictionary] Hide languages that are missing flag.png AND name.txt --- inc/dictionary.inc.php | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'inc/dictionary.inc.php') diff --git a/inc/dictionary.inc.php b/inc/dictionary.inc.php index ee196f59..fcbfdfb8 100644 --- a/inc/dictionary.inc.php +++ b/inc/dictionary.inc.php @@ -17,6 +17,8 @@ class Dictionary { self::$languages = array(); foreach (glob('lang/??', GLOB_ONLYDIR) as $lang) { + if (!file_exists($lang . '/name.txt') && !file_exists($lang . '/flag.png')) + continue; $lang = basename($lang); if ($lang === '..') continue; @@ -191,6 +193,8 @@ class Dictionary foreach (self::$languages as $lang) { if (file_exists("lang/$lang/name.txt")) { $name = file_get_contents("lang/$lang/name.txt"); + } else { + $name = false; } if (!isset($name) || $name === false) { $name = $lang; -- cgit v1.2.3-55-g7522 From 120956761383f8365e95e669a11b344af4764c74 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 30 Jan 2019 13:39:41 +0100 Subject: [inc/Dictionary] Teh evil unvalidated redirects must die! --- inc/dictionary.inc.php | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'inc/dictionary.inc.php') diff --git a/inc/dictionary.inc.php b/inc/dictionary.inc.php index fcbfdfb8..935d1f4e 100644 --- a/inc/dictionary.inc.php +++ b/inc/dictionary.inc.php @@ -30,10 +30,15 @@ class Dictionary if ($lang !== false && in_array($lang, self::$languages)) { setcookie('lang', $lang, time() + 60 * 60 * 24 * 30 * 12); $url = Request::get('url'); - if ($url === false && isset($_SERVER['HTTP_REFERER'])) + if ($url === false && isset($_SERVER['HTTP_REFERER'])) { $url = $_SERVER['HTTP_REFERER']; - if ($url === false) - $url = '?do=Main'; + } + $parts = parse_url($url); + if ($url === false || $parts === false || empty($parts['query'])) { + $url = '?do=main'; + } else { + $url = '?' . $parts['query']; + } Util::redirect($url); } -- cgit v1.2.3-55-g7522