From 0e54e1059f3c3aa353a448567a9314ad694abbe1 Mon Sep 17 00:00:00 2001 From: ArthurHoaro Date: Tue, 14 Aug 2018 13:39:31 +0200 Subject: [PATCH] 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 0000000000000000000000000000000000000000..0158c03b44c92f13681fb235597451d34406d1a1 GIT binary patch literal 277 zcmeAS@N?(olHy`uVBq!ia0vp^LLkh+0wn(&ce?|mn3BBRT^LHc9xZDG@;D1TB8wRq zxP?KOkzv*x37{Z*iKnkC`y(bMAuiRIHx38_g_e1`IEHAP@10=C*W@7La(~?&W+D9t zj6OSpcnp;Z(1>5FK^jaTwdGhJNyH+*J#NTrkbG!1k@)Ry_ zYnp7zSp7k%{X|0Wr;f=M3|Yq_dwV|X>?jF2c)VJVVRyvWYqFwS^1iy8B}?1QjaS$z TykfZp(8Ua%u6{1-oD!M<^$TO} literal 0 HcmV?d00001 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 @@ public function setUp() /** * Test Isso init without errors. */ - public function testWallabagInitNoError() + public function testIssoInitNoError() { $conf = new ConfigManager(''); $conf->set('plugins.ISSO_SERVER', 'value'); @@ -32,7 +32,7 @@ public function testWallabagInitNoError() /** * Test Isso init with errors. */ - public function testWallabagInitError() + public function testIssoInitError() { $conf = new ConfigManager(''); $errors = isso_init($conf); @@ -96,19 +96,22 @@ public function testIssoMultipleLinks() 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 @@ public function testIssoNotDisplayedWhenSearch() array( 'id' => 12, 'url' => $str, + 'shorturl' => $short1 = 'abcd', 'created' => DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, $date), ) ), @@ -135,8 +139,8 @@ public function testIssoNotDisplayedWhenSearch() $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]); } /**