X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=plugins%2Farchiveorg%2Farchiveorg.php;h=a7b595e163424fa3ce3e1b2a181e3bdc4f9d1575;hb=7f5250421be4832b9679d8140bc4a71c8005dfa3;hp=0ee1c73c9333ef0fd9635db3ededbc64fb44521e;hpb=905f8675a728841b03b300d2c7dc909a1c4f7f03;p=github%2Fshaarli%2FShaarli.git diff --git a/plugins/archiveorg/archiveorg.php b/plugins/archiveorg/archiveorg.php index 0ee1c73c..a7b595e1 100644 --- a/plugins/archiveorg/archiveorg.php +++ b/plugins/archiveorg/archiveorg.php @@ -17,12 +17,16 @@ use Shaarli\Plugin\PluginManager; function hook_archiveorg_render_linklist($data) { $archive_html = file_get_contents(PluginManager::$PLUGINS_PATH . '/archiveorg/archiveorg.html'); + $rootPath = preg_replace('#/index\.php$#', '', $data['_BASE_PATH_'] ?? ''); + $path = $rootPath . '/' . PluginManager::$PLUGINS_PATH; foreach ($data['links'] as &$value) { - if ($value['private'] && preg_match('/^\?[a-zA-Z0-9-_@]{6}($|&|#)/', $value['real_url'])) { + $isNote = startsWith($value['real_url'], '/shaare/'); + if ($value['private'] && $isNote) { continue; } - $archive = sprintf($archive_html, $value['url'], t('View on archive.org')); + $url = $isNote ? rtrim(index_url($_SERVER), '/') . $value['real_url'] : $value['real_url']; + $archive = sprintf($archive_html, $url, $path, t('View on archive.org')); $value['link_plugin'][] = $archive; }