aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTristan Darricau <tristan.darricau@sensiolabs.com>2015-08-18 21:03:03 +0200
committerTristan Darricau <tristan.darricau@sensiolabs.com>2015-08-18 21:03:03 +0200
commit5f905f67ee79093a217f6ffbe1143386851b843d (patch)
tree24a974c848cc1641b48f3c654d87fb9a7668e341
parent5b534369d1b35c945756e3f45545f0e2894bea71 (diff)
downloadforums-5f905f67ee79093a217f6ffbe1143386851b843d.tar
forums-5f905f67ee79093a217f6ffbe1143386851b843d.tar.gz
forums-5f905f67ee79093a217f6ffbe1143386851b843d.tar.bz2
forums-5f905f67ee79093a217f6ffbe1143386851b843d.tar.xz
forums-5f905f67ee79093a217f6ffbe1143386851b843d.zip
[ticket/14099] Fix the assets
PHPBB3-14099
-rw-r--r--phpBB/phpbb/template/asset.php17
1 files changed, 14 insertions, 3 deletions
diff --git a/phpBB/phpbb/template/asset.php b/phpBB/phpbb/template/asset.php
index e2edbcddc1..ff9366af4a 100644
--- a/phpBB/phpbb/template/asset.php
+++ b/phpBB/phpbb/template/asset.php
@@ -153,10 +153,21 @@ class asset
public function set_path($path, $urlencode = false)
{
// Since 1.7.0 Twig returns the real path of the file. We need it to be relative to the working directory.
- $real_root_path = realpath('.') . DIRECTORY_SEPARATOR;
- if ($real_root_path && substr($path . DIRECTORY_SEPARATOR, 0, strlen($real_root_path)) === $real_root_path)
+ $real_root_path = realpath($this->path_helper->get_phpbb_root_path()) . DIRECTORY_SEPARATOR;
+
+ // If the asset is under the phpBB root path we need to remove its path and then prepend $phpbb_root_path
+ if (substr($path . DIRECTORY_SEPARATOR, 0, strlen($real_root_path)) === $real_root_path)
+ {
+ $path = $this->path_helper->get_phpbb_root_path() . str_replace('\\', '/', substr($path, strlen($real_root_path)));
+ }
+ else
{
- $path = str_replace('\\', '/', substr($path, strlen($real_root_path)));
+ // Else we make the path relative to the current working directory
+ $real_root_path = realpath('.') . DIRECTORY_SEPARATOR;
+ if ($real_root_path && substr($path . DIRECTORY_SEPARATOR, 0, strlen($real_root_path)) === $real_root_path)
+ {
+ $path = str_replace('\\', '/', substr($path, strlen($real_root_path)));
+ }
}
if ($urlencode)