From 9fbc42294e7667c5ef19cafa0d1fcfbc1c0f36a9 Mon Sep 17 00:00:00 2001 From: ArthurHoaro Date: Sun, 26 Jul 2020 14:43:10 +0200 Subject: New basePath: fix officiel plugin paths and vintage template --- plugins/qrcode/qrcode.php | 5 +++-- plugins/qrcode/shaarli-qrcode.js | 15 ++++++++------- 2 files changed, 11 insertions(+), 9 deletions(-) (limited to 'plugins/qrcode') diff --git a/plugins/qrcode/qrcode.php b/plugins/qrcode/qrcode.php index 2ec0cb65..3b5dae34 100644 --- a/plugins/qrcode/qrcode.php +++ b/plugins/qrcode/qrcode.php @@ -19,11 +19,12 @@ function hook_qrcode_render_linklist($data) { $qrcode_html = file_get_contents(PluginManager::$PLUGINS_PATH . '/qrcode/qrcode.html'); + $path = ($data['_BASE_PATH_'] ?? '') . '/' . PluginManager::$PLUGINS_PATH; foreach ($data['links'] as &$value) { $qrcode = sprintf( $qrcode_html, $value['url'], - PluginManager::$PLUGINS_PATH + $path ); $value['link_plugin'][] = $qrcode; } @@ -41,7 +42,7 @@ function hook_qrcode_render_linklist($data) function hook_qrcode_render_footer($data) { if ($data['_PAGE_'] == TemplatePage::LINKLIST) { - $data['js_files'][] = PluginManager::$PLUGINS_PATH . '/qrcode/shaarli-qrcode.js'; + $data['js_files'][] = PluginManager::$PLUGINS_PATH . '/qrcode/shaarli-qrcode.js'; } return $data; diff --git a/plugins/qrcode/shaarli-qrcode.js b/plugins/qrcode/shaarli-qrcode.js index fe77c4cd..3316d6f6 100644 --- a/plugins/qrcode/shaarli-qrcode.js +++ b/plugins/qrcode/shaarli-qrcode.js @@ -28,14 +28,15 @@ // Show the QR-Code of a permalink (when the QR-Code icon is clicked). function showQrCode(caller,loading) -{ +{ // Dynamic javascript lib loading: We only load qr.js if the QR code icon is clicked: if (typeof(qr) == 'undefined') // Load qr.js only if not present. { if (!loading) // If javascript lib is still loading, do not append script to body. { - var element = document.createElement("script"); - element.src = "plugins/qrcode/qr-1.1.3.min.js"; + var basePath = document.querySelector('input[name="js_base_path"]').value; + var element = document.createElement("script"); + element.src = basePath + "/plugins/qrcode/qr-1.1.3.min.js"; document.body.appendChild(element); } setTimeout(function() { showQrCode(caller,true);}, 200); // Retry in 200 milliseconds. @@ -44,7 +45,7 @@ function showQrCode(caller,loading) // Remove previous qrcode if present. removeQrcode(); - + // Build the div which contains the QR-Code: var element = document.createElement('div'); element.id = 'permalinkQrcode'; @@ -57,11 +58,11 @@ function showQrCode(caller,loading) // Damn IE element.setAttribute('onclick', 'this.parentNode.removeChild(this);' ); } - + // Build the QR-Code: var image = qr.image({size: 8,value: caller.dataset.permalink}); if (image) - { + { element.appendChild(image); element.innerHTML += "
Click to close"; caller.parentNode.appendChild(element); @@ -87,4 +88,4 @@ function removeQrcode() elem.parentNode.removeChild(elem); } return false; -} \ No newline at end of file +} -- cgit v1.2.3