From d4e739dfaa984338e34efe28e862a85f01a39c3c Mon Sep 17 00:00:00 2001 From: Ian Date: Sun, 8 Jun 2014 20:44:50 +0200 Subject: [PATCH] adapt linktrimmer for 2.0 --- serendipity_event_linktrimmer/ChangeLog | 29 ++-- serendipity_event_linktrimmer/linktrimmer.css | 13 +- .../plugin_linktrimmer.tpl | 146 ++++++++++++------ .../plugin_linktrimmer_old.tpl | 67 ++++++++ .../serendipity_event_linktrimmer.php | 60 ++++--- 5 files changed, 222 insertions(+), 93 deletions(-) create mode 100644 serendipity_event_linktrimmer/plugin_linktrimmer_old.tpl diff --git a/serendipity_event_linktrimmer/ChangeLog b/serendipity_event_linktrimmer/ChangeLog index 7695f946..707dba14 100644 --- a/serendipity_event_linktrimmer/ChangeLog +++ b/serendipity_event_linktrimmer/ChangeLog @@ -1,37 +1,44 @@ +1.4: +---- + * Adapted backend markup for 2.0 backend. + * Fixed bad css float on startpage + * Fixed wysiwyg button link creator + * Removed dev-POC-dashboard plugin check + 1.3: ---- -* Added new option to hide lintrimmer on backend frontpage -* Use nativ API method here - extends S9y version >= 1.3 + * Added new option to hide linktrimmer on backends frontpage + * Use nativ API method here - extends S9y version >= 1.3 1.1, 1.2: ---- -* Static php5 function fixes + * Static php5 function fixes 1.0: ---- -* Do not show in Dashboard (POC) + * Do not show in Dashboard (POC) 0.9: ---- -* Added CKEDITOR ready eventData image path + * Added CKEDITOR ready eventData image path 0.8: ---- -* Latest: Smarty3 forward compatibility + * Latest: Smarty3 forward compatibility 0.7: ---- -* Use latin1_general_cs charset due to lower/uppercase lookups, - thanks to danst0 + * Use latin1_general_cs charset due to lower/uppercase lookups, + thanks to danst0 0.6: ---- -* Allow to be used in other plugins (danst0) + * Allow to be used in other plugins (danst0) 0.5: ---- -* Remove unneeded die() + * Remove unneeded die() 0.1: ---- -* Initial Release. See Documentation. \ No newline at end of file + * Initial Release. See Documentation. \ No newline at end of file diff --git a/serendipity_event_linktrimmer/linktrimmer.css b/serendipity_event_linktrimmer/linktrimmer.css index 7bd25a13..6b62d1b8 100644 --- a/serendipity_event_linktrimmer/linktrimmer.css +++ b/serendipity_event_linktrimmer/linktrimmer.css @@ -1,12 +1,7 @@ -.linktrimmer { - float: right; -} -.serendipity_linktrimmer_page { +#linktrimmer_url.input_textbox { + width: 71%; } - -.serendipity_linktrimmer_page .linktrimmer { - float: none; - display: block; - margin: auto auto; +#linktrimmer_result.input_textbox { + width: 100%; } diff --git a/serendipity_event_linktrimmer/plugin_linktrimmer.tpl b/serendipity_event_linktrimmer/plugin_linktrimmer.tpl index 722583d5..fdba43f3 100644 --- a/serendipity_event_linktrimmer/plugin_linktrimmer.tpl +++ b/serendipity_event_linktrimmer/plugin_linktrimmer.tpl @@ -1,63 +1,109 @@ {if $linktrimmer_external} - - - - {$CONST.PLUGIN_EVENT_AMAZONCHOOSER_MEDIA_BUTTON} - + + + + + + {$CONST.PLUGIN_EVENT_AMAZONCHOOSER_MEDIA_BUTTON} + + + + + - - - - - - -
+ + + +
+
{/if} +{if $linktrimmer_external}
-
- -
- {$CONST.PLUGIN_LINKTRIMMER_NAME} - - {if $linktrimmer_error} -
{$CONST.PLUGIN_LINKTRIMMER_ERROR}
- {/if} - - - - - - - - - -{if $linktrimmer_url != '' && $linktrimmer_external} - -{elseif $linktrimmer_url != ''} - - - {else} - + {elseif $linktrimmer_url != ''} +
+ + + +
+ {else} + -{/if} -
-
-
- + + {/if} + + {if $linktrimmer_external}
+{else} + + +{/if} + +{if $linktrimmer_external} +
+ {/if} diff --git a/serendipity_event_linktrimmer/plugin_linktrimmer_old.tpl b/serendipity_event_linktrimmer/plugin_linktrimmer_old.tpl new file mode 100644 index 00000000..0a6e7b56 --- /dev/null +++ b/serendipity_event_linktrimmer/plugin_linktrimmer_old.tpl @@ -0,0 +1,67 @@ +{if $linktrimmer_external} + + + + {$CONST.PLUGIN_EVENT_AMAZONCHOOSER_MEDIA_BUTTON} + + + + + + + + +
+{/if} + +
+
+ +
+ {$CONST.PLUGIN_LINKTRIMMER_NAME} + + {if $linktrimmer_error} +
{$CONST.PLUGIN_LINKTRIMMER_ERROR}
+ {/if} + + + + + + + + + +{if $linktrimmer_url != '' && $linktrimmer_external} + +{elseif $linktrimmer_url != ''} + + + +{else} + +{/if} +
+
+
+ +{if $linktrimmer_external} +
+ + +{/if} diff --git a/serendipity_event_linktrimmer/serendipity_event_linktrimmer.php b/serendipity_event_linktrimmer/serendipity_event_linktrimmer.php index 42ffcc66..2e401002 100644 --- a/serendipity_event_linktrimmer/serendipity_event_linktrimmer.php +++ b/serendipity_event_linktrimmer/serendipity_event_linktrimmer.php @@ -1,4 +1,4 @@ - '4.1.0' )); - $propbag->add('version', '1.3'); - $propbag->add('author', 'Garvin Hicking'); + $propbag->add('version', '1.4'); + $propbag->add('author', 'Garvin Hicking, Ian'); $propbag->add('stackable', false); $propbag->add('configuration', array('prefix', 'frontpage', 'domain')); $propbag->add('event_hooks', array( 'backend_frontpage_display' => true, 'css_backend' => true, 'frontend_configure' => true, + 'backend_dashboard' => true, 'backend_entry_toolbar_extended' => true, 'backend_entry_toolbar_body' => true, 'backend_wysiwyg' => true, @@ -201,16 +202,18 @@ class serendipity_event_linktrimmer extends serendipity_event { } $serendipity['smarty']->assign(array( - 'linktrimmer_error' => $error, - 'linktrimmer_url' => $url, - 'linktrimmer_origurl' => $_REQUEST['linktrimmer_url'], - 'linktrimmer_external' => $external, - 'linktrimmer_txtarea' => $_REQUEST['txtarea'], - 'linktrimmer_css' => file_get_contents(dirname(__FILE__) . '/linktrimmer.css') + 'linktrimmer_error' => $error, + 'linktrimmer_url' => $url, + 'linktrimmer_origurl' => $_REQUEST['linktrimmer_url'], + 'linktrimmer_external' => $external, + 'linktrimmer_txtarea' => $_REQUEST['txtarea'] )); - // use nativ API here - extends S9y version >= 1.3 - echo $this->parseTemplate('plugin_linktrimmer.tpl'); + if ($serendipity['version'][0] > '1') { + echo $this->parseTemplate('plugin_linktrimmer.tpl'); + } else { + echo $this->parseTemplate('plugin_linktrimmer_old.tpl'); + } } function generate_button ($txtarea) { @@ -218,10 +221,16 @@ class serendipity_event_linktrimmer extends serendipity_event { if (!isset($txtarea)) { $txtarea = 'body'; } - $link = ($serendipity['rewrite'] == 'none' ? $serendipity['indexFile'] . '?/' : '') . 'plugin/linktrimmer' . ($serendipity['rewrite'] != 'none' ? '?' : '&') . 'txtarea=' . $txtarea; + $link = ($serendipity['rewrite'] == 'none' ? $serendipity['indexFile'] . '?/' : '') . 'plugin/linktrimmer' . ($serendipity['rewrite'] != 'none' ? '?' : '&') . 'txtarea=' . $txtarea; + if ($serendipity['version'][0] > '1') { +?> + + '1' ? 'linktrimmer'.$eventData['item'] : $eventData['jsname']); + $open = $serendipity['version'][0] > '1' ? 'serendipity.openPopup' : 'window.open'; $eventData['buttons'][] = array( - 'id' => 'linktrimmer' . $eventData['jsname'], + 'id' => 'linktrimmer' . ($serendipity['version'][0] > '1' ? $eventData['item'] : $eventData['jsname']), 'name' => PLUGIN_LINKTRIMMER_NAME, - 'javascript' => 'function() { window.open(\'' . $link . '\', \'LinkTrimmer\', \'width=800,height=600,toolbar=no,scrollbars=1,scrollbars,resize=1,resizable=1\') }', - 'img_url' => $serendipity['serendipityHTTPPath'] . ($serendipity['rewrite'] == 'none' ? $serendipity['indexFile'] . '?/' : '') . 'plugin/linktrimmergif', + 'javascript' => 'function() { '.$open.'(\'' . $link . '\', \'LinkTrimmer\', \'width=800,height=600,toolbar=no,scrollbars=1,scrollbars,resize=1,resizable=1\') }', + 'img_url' => $serendipity['serendipityHTTPPath'] . ($serendipity['rewrite'] == 'none' ? $serendipity['indexFile'] . '?/' : '') . 'plugin/plugin_linktrimmer.gif', 'img_path' => 'serendipity_event_linktrimmer/serendipity_event_linktrimmer.gif', - 'toolbar' => 'other' // TOOLBAR_WEB is buggy in s9y 1.4 :-/ - ); + 'toolbar' => 'other' + );//'img_path' deprecated, used by ckeditor plugin <= 4.1.0 return true; break; @@ -297,8 +306,12 @@ class serendipity_event_linktrimmer extends serendipity_event { } break; + case 'backend_dashboard': + if (serendipity_db_bool($this->get_config('frontpage', true)) ) $this->show(); + break; + case 'backend_frontpage_display': - if (!isset($serendipity['plugin_dashboard_version']) && serendipity_db_bool($this->get_config('frontpage', true)) ) $this->show(); + if (serendipity_db_bool($this->get_config('frontpage', true) && $serendipity['version'][0] <= '1') ) $this->show(); break; case 'external_plugin': @@ -335,7 +348,7 @@ class serendipity_event_linktrimmer extends serendipity_event { } } switch($uri_part) { - case 'linktrimmergif': + case 'plugin_linktrimmer.gif': header('Content-Type: image/gif'); echo file_get_contents(dirname(__FILE__) . '/serendipity_event_linktrimmer.gif'); break; @@ -349,6 +362,7 @@ class serendipity_event_linktrimmer extends serendipity_event { if (!strpos($eventData, '.linktrimmer')) { // class exists in CSS, so a user has customized it and we don't need default echo file_get_contents(dirname(__FILE__) . '/linktrimmer.css'); + if ($serendipity['version'][0] < '2') echo '#linktrimmer_url.input_textbox { width: inherit; }'; } break;