Fixed Admin::redirect() check for /admin, /en/admin, /root/admin or /root/en/admin

This commit is contained in:
Matias Griese
2019-09-16 21:59:56 +03:00
parent 7f5027bfb3
commit 899d05fb7c

View File

@@ -369,7 +369,7 @@ class Admin
$root = '';
}
$pattern = '|^((' . preg_quote($root, '|') . ')?\/[\w\d_-]+)' . preg_quote($base, '|') . '|ui';
$pattern = '`^((' . preg_quote($root, '`') . ')?(/[^/]+)?)' . preg_quote($base, '`') . '`ui';
// Check if we already have an admin path: /admin, /en/admin, /root/admin or /root/en/admin.
if (preg_match($pattern, $redirect)) {
$redirect = preg_replace('|^' . preg_quote($root, '|') . '|', '', $redirect);