From 4a1f9a9bddc6e6c0cd721c7f46cceca886244db5 Mon Sep 17 00:00:00 2001 From: Michael Date: Fri, 30 Nov 2018 11:27:17 +0000 Subject: [PATCH] Improved url detection for redirects --- src/App.php | 4 ++-- src/Module/Magic.php | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/App.php b/src/App.php index 845560a4d6..9af56680e0 100644 --- a/src/App.php +++ b/src/App.php @@ -1880,7 +1880,7 @@ class App */ public function internalRedirect($toUrl = '', $ssl = false) { - if (filter_var($toUrl, FILTER_VALIDATE_URL)) { + if (!empty(parse_url($toUrl, PHP_URL_SCHEME))) { throw new InternalServerErrorException("'$toUrl is not a relative path, please use System::externalRedirectTo"); } @@ -1897,7 +1897,7 @@ class App */ public function redirect($toUrl) { - if (filter_var($toUrl, FILTER_VALIDATE_URL)) { + if (!empty(parse_url($toUrl, PHP_URL_SCHEME))) { Core\System::externalRedirect($toUrl); } else { $this->internalRedirect($toUrl); diff --git a/src/Module/Magic.php b/src/Module/Magic.php index ecfe18e596..694af23208 100644 --- a/src/Module/Magic.php +++ b/src/Module/Magic.php @@ -43,7 +43,7 @@ class Magic extends BaseModule } if (!$cid) { - Logger::log('No contact record found: ' . print_r($_REQUEST, true), Logger::DEBUG); + Logger::log('No contact record found: ' . json_encode($_REQUEST), Logger::DEBUG); // @TODO Finding a more elegant possibility to redirect to either internal or external URL $a->redirect($dest); }