diff options
-rw-r--r-- | engine/lib/output.php | 5 | ||||
-rw-r--r-- | engine/tests/api/helpers.php | 9 |
2 files changed, 14 insertions, 0 deletions
diff --git a/engine/lib/output.php b/engine/lib/output.php index 6f4ef7b96..2c3324b49 100644 --- a/engine/lib/output.php +++ b/engine/lib/output.php @@ -160,6 +160,11 @@ function elgg_normalize_url($url) { return $url; } + // 'install.php', 'install.php?step=step' + elseif (preg_match("#^[^/]*\.php(\?.*)?$#i", $url)) { + return elgg_get_site_url().$url; + } + // 'example.com', 'example.com/subpage' elseif (preg_match("#^[^/]*\.#i", $url)) { return "http://$url"; diff --git a/engine/tests/api/helpers.php b/engine/tests/api/helpers.php index 8dab74ff8..565cf054a 100644 --- a/engine/tests/api/helpers.php +++ b/engine/tests/api/helpers.php @@ -72,10 +72,19 @@ class ElggCoreHelpersTest extends ElggCoreUnitTest { 'http://example.com' => 'http://example.com', 'https://example.com' => 'https://example.com', '//example.com' => '//example.com', + 'example.com' => 'http://example.com', 'example.com/subpage' => 'http://example.com/subpage', + 'pg/page/handler' => elgg_get_site_url().'pg/page/handler', 'mod/plugin/file.php' => elgg_get_site_url().'mod/plugin/file.php', + 'rootfile.php' => elgg_get_site_url().'rootfile.php', + 'rootfile.php?setting=setting' => elgg_get_site_url().'rootfile.php?setting=setting', + + '/pg/page/handler' => elgg_get_site_url().'pg/page/handler', + '/mod/plugin/file.php' => elgg_get_site_url().'mod/plugin/file.php', + '/rootfile.php' => elgg_get_site_url().'rootfile.php', + '/rootfile.php?setting=setting' => elgg_get_site_url().'rootfile.php?setting=setting', ); foreach ($conversions as $input => $output) { |