New basePath: fix officiel plugin paths and vintage template
This commit is contained in:
parent
bc583903ad
commit
9fbc42294e
39 changed files with 169 additions and 244 deletions
plugins/qrcode
|
@ -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;
|
||||
|
|
|
@ -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 += "<br>Click to close";
|
||||
caller.parentNode.appendChild(element);
|
||||
|
@ -87,4 +88,4 @@ function removeQrcode()
|
|||
elem.parentNode.removeChild(elem);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue