12266213d0
* translation system and unit tests * Translations everywhere Dont use translation merge It is not available with PHP builtin gettext, so it would have lead to inconsistency.
65 lines
1.7 KiB
PHP
65 lines
1.7 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Plugin Isso.
|
|
*/
|
|
|
|
use Shaarli\Config\ConfigManager;
|
|
|
|
/**
|
|
* Display an error everywhere if the plugin is enabled without configuration.
|
|
*
|
|
* @param $conf ConfigManager instance
|
|
*
|
|
* @return mixed - linklist data with Isso plugin.
|
|
*/
|
|
function isso_init($conf)
|
|
{
|
|
$issoUrl = $conf->get('plugins.ISSO_SERVER');
|
|
if (empty($issoUrl)) {
|
|
$error = t('Isso plugin error: '.
|
|
'Please define the "ISSO_SERVER" setting in the plugin administration page.');
|
|
return array($error);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Render linklist hook.
|
|
* Will only display Isso comments on permalinks.
|
|
*
|
|
* @param $data array List of links
|
|
* @param $conf ConfigManager instance
|
|
*
|
|
* @return mixed - linklist data with Isso plugin.
|
|
*/
|
|
function hook_isso_render_linklist($data, $conf)
|
|
{
|
|
$issoUrl = $conf->get('plugins.ISSO_SERVER');
|
|
if (empty($issoUrl)) {
|
|
return $data;
|
|
}
|
|
|
|
// Only display comments for permalinks.
|
|
if (count($data['links']) == 1 && empty($data['search_tags']) && empty($data['search_term'])) {
|
|
$link = reset($data['links']);
|
|
$issoHtml = file_get_contents(PluginManager::$PLUGINS_PATH . '/isso/isso.html');
|
|
|
|
$isso = sprintf($issoHtml, $issoUrl, $issoUrl, $link['id'], $link['id']);
|
|
$data['plugin_end_zone'][] = $isso;
|
|
|
|
// Hackish way to include this CSS file only when necessary.
|
|
$data['plugins_includes']['css_files'][] = PluginManager::$PLUGINS_PATH . '/isso/isso.css';
|
|
}
|
|
|
|
return $data;
|
|
}
|
|
|
|
/**
|
|
* This function is never called, but contains translation calls for GNU gettext extraction.
|
|
*/
|
|
function isso_dummy_translation()
|
|
{
|
|
// meta
|
|
t('Let visitor comment your shaares on permalinks with Isso.');
|
|
t('Isso server URL (without \'http://\')');
|
|
}
|