From dbe4bb87d0140b7637dcb0383af97bfc431afb8f Mon Sep 17 00:00:00 2001 From: Andy Miller Date: Tue, 15 Sep 2015 10:12:30 -0600 Subject: [PATCH] fixes for image links with multilang support --- system/src/Grav/Common/Markdown/ParsedownGravTrait.php | 2 +- system/src/Grav/Common/Page/Page.php | 8 ++++++-- system/src/Grav/Common/Uri.php | 3 +-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/system/src/Grav/Common/Markdown/ParsedownGravTrait.php b/system/src/Grav/Common/Markdown/ParsedownGravTrait.php index 539f9336d..2585d6cf4 100644 --- a/system/src/Grav/Common/Markdown/ParsedownGravTrait.php +++ b/system/src/Grav/Common/Markdown/ParsedownGravTrait.php @@ -133,7 +133,7 @@ trait ParsedownGravTrait $path_parts = pathinfo($url['path']); // get the local path to page media if possible - if ($path_parts['dirname'] == $this->page->url()) { + if ($path_parts['dirname'] == $this->page->url(false, false, false)) { $url['path'] = $path_parts['basename']; // get the media objects for this page $media = $this->page->media(); diff --git a/system/src/Grav/Common/Page/Page.php b/system/src/Grav/Common/Page/Page.php index 65f29bc53..7b4626062 100644 --- a/system/src/Grav/Common/Page/Page.php +++ b/system/src/Grav/Common/Page/Page.php @@ -1236,7 +1236,7 @@ class Page * * @return string The url. */ - public function url($include_host = false, $canonical = false) + public function url($include_host = false, $canonical = false, $include_lang = true) { /** @var Pages $pages */ @@ -1246,7 +1246,11 @@ class Page $language = self::getGrav()['language']; // get pre-route - $pre_route = $language->enabled() && $language->getActive() ? '/'.$language->getActive() : ''; + if ($include_lang) { + $pre_route = $language->enabled() && $language->getActive() ? '/' . $language->getActive() : ''; + } else { + $pre_route = ''; + } // get canonical route if requested if ($canonical) { diff --git a/system/src/Grav/Common/Uri.php b/system/src/Grav/Common/Uri.php index f479f297b..49e3dc46a 100644 --- a/system/src/Grav/Common/Uri.php +++ b/system/src/Grav/Common/Uri.php @@ -493,7 +493,6 @@ class Uri $language_append = $active_language ? '/'.$active_language : ''; } - $pages_dir = $grav['locator']->findResource('page://'); $base_url = rtrim($grav['base_url'] . $grav['pages']->base(), '/') . $language_append; @@ -556,7 +555,7 @@ class Uri $instances = $grav['pages']->instances(); if (isset($instances[$page_path])) { $target = $instances[$page_path]; - $url_bits['path'] = $base_url . $target->route() . $filename; + $url_bits['path'] = $base_url . rtrim($target->route(), '/') . $filename; return Uri::buildUrl($url_bits); }