*/
public function formatUrl($bookmark)
{
- if (! empty($this->contextData['index_url']) && (
- startsWith($bookmark->getUrl(), '?') || startsWith($bookmark->getUrl(), '/')
- )) {
- return $this->contextData['index_url'] . escape($bookmark->getUrl());
+ if ($bookmark->isNote() && isset($this->contextData['index_url'])) {
+ return rtrim($this->contextData['index_url'], '/') . '/' . escape(ltrim($bookmark->getUrl(), '/'));
}
+
return escape($bookmark->getUrl());
}
*/
protected function formatRealUrl($bookmark)
{
- if (! empty($this->contextData['index_url']) && (
- startsWith($bookmark->getUrl(), '?') || startsWith($bookmark->getUrl(), '/')
- )) {
- return $this->contextData['index_url'] . escape($bookmark->getUrl());
+ if ($bookmark->isNote()) {
+ if (isset($this->contextData['index_url'])) {
+ $prefix = rtrim($this->contextData['index_url'], '/') . '/';
+ }
+
+ if (isset($this->contextData['base_path'])) {
+ $prefix = rtrim($this->contextData['base_path'], '/') . '/';
+ }
+
+ return escape($prefix ?? '') . escape(ltrim($bookmark->getUrl(), '/'));
}
+
return escape($bookmark->getUrl());
}