From 0e54e1059f3c3aa353a448567a9314ad694abbe1 Mon Sep 17 00:00:00 2001 From: ArthurHoaro Date: Tue, 14 Aug 2018 13:39:31 +0200 Subject: Isso plugin: add an icon in linklist if enabled Fixes #1075 --- plugins/isso/comment.png | Bin 0 -> 277 bytes plugins/isso/isso.php | 31 +++++++++++++++++++++++++++++-- plugins/isso/isso_button.html | 5 +++++ tests/plugins/PluginIssoTest.php | 16 ++++++++++------ 4 files changed, 44 insertions(+), 8 deletions(-) create mode 100644 plugins/isso/comment.png create mode 100644 plugins/isso/isso_button.html diff --git a/plugins/isso/comment.png b/plugins/isso/comment.png new file mode 100644 index 00000000..0158c03b Binary files /dev/null and b/plugins/isso/comment.png differ diff --git a/plugins/isso/isso.php b/plugins/isso/isso.php index 5bc1cce2..378c11af 100644 --- a/plugins/isso/isso.php +++ b/plugins/isso/isso.php @@ -46,9 +46,36 @@ function hook_isso_render_linklist($data, $conf) $isso = sprintf($issoHtml, $issoUrl, $issoUrl, $link['id'], $link['id']); $data['plugin_end_zone'][] = $isso; + } else { + $button = ''; + // For the default theme we use a FontAwesome icon which is better than an image + if ($conf->get('resource.theme') === 'default') { + $button .= ''; + } else { + $button .= ' + + archive.org + + diff --git a/tests/plugins/PluginIssoTest.php b/tests/plugins/PluginIssoTest.php index 0ae73183..2c9efbcd 100644 --- a/tests/plugins/PluginIssoTest.php +++ b/tests/plugins/PluginIssoTest.php @@ -21,7 +21,7 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase /** * Test Isso init without errors. */ - public function testWallabagInitNoError() + public function testIssoInitNoError() { $conf = new ConfigManager(''); $conf->set('plugins.ISSO_SERVER', 'value'); @@ -32,7 +32,7 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase /** * Test Isso init with errors. */ - public function testWallabagInitError() + public function testIssoInitError() { $conf = new ConfigManager(''); $errors = isso_init($conf); @@ -96,19 +96,22 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase array( 'id' => 12, 'url' => $str, + 'shorturl' => $short1 = 'abcd', 'created' => DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, $date1), ), array( 'id' => 13, 'url' => $str . '2', + 'shorturl' => $short2 = 'efgh', 'created' => DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, $date2), ), ) ); $processed = hook_isso_render_linklist($data, $conf); - // data shouldn't be altered - $this->assertEquals($data, $processed); + // link_plugin should be added for the icon + $this->assertContains('', $processed['links'][0]['link_plugin'][0]); + $this->assertContains('', $processed['links'][1]['link_plugin'][0]); } /** @@ -127,6 +130,7 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase array( 'id' => 12, 'url' => $str, + 'shorturl' => $short1 = 'abcd', 'created' => DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, $date), ) ), @@ -135,8 +139,8 @@ class PluginIssoTest extends PHPUnit_Framework_TestCase $processed = hook_isso_render_linklist($data, $conf); - // data shouldn't be altered - $this->assertEquals($data, $processed); + // link_plugin should be added for the icon + $this->assertContains('', $processed['links'][0]['link_plugin'][0]); } /** -- cgit v1.2.3