wallabag.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. /**
  3. * Plugin Wallabag.
  4. */
  5. require_once 'WallabagInstance.php';
  6. $wallabagUrl = $conf->get('plugins.WALLABAG_URL');
  7. if (empty($wallabagUrl)) {
  8. $GLOBALS['plugin_errors'][] = 'Wallabag plugin error: '.
  9. 'Please define the "WALLABAG_URL" setting in the plugin administration page.';
  10. }
  11. /**
  12. * Add wallabag icon to link_plugin when rendering linklist.
  13. *
  14. * @param mixed $data Linklist data.
  15. * @param ConfigManager $conf Configuration Manager instance.
  16. *
  17. * @return mixed - linklist data with wallabag plugin.
  18. */
  19. function hook_wallabag_render_linklist($data, $conf)
  20. {
  21. $wallabagUrl = $conf->get('plugins.WALLABAG_URL');
  22. if (empty($wallabagUrl)) {
  23. return $data;
  24. }
  25. $version = $conf->get('plugins.WALLABAG_VERSION');
  26. $wallabagInstance = new WallabagInstance($wallabagUrl, $version);
  27. $wallabagHtml = file_get_contents(PluginManager::$PLUGINS_PATH . '/wallabag/wallabag.html');
  28. foreach ($data['links'] as &$value) {
  29. $wallabag = sprintf(
  30. $wallabagHtml,
  31. $wallabagInstance->getWallabagUrl(),
  32. urlencode($value['url']),
  33. PluginManager::$PLUGINS_PATH
  34. );
  35. $value['link_plugin'][] = $wallabag;
  36. }
  37. return $data;
  38. }