From f25165fa5cd9509f9cf12f4e2ae551227cac704a Mon Sep 17 00:00:00 2001 From: Grischa Brockhaus Date: Wed, 21 Dec 2011 11:46:25 +0100 Subject: [PATCH] OEmbed: * Added some default CSS styles, changed tpl from span to div * Smarty security disabling for 1.7+ blogs only --- serendipity_event_oembed/ChangeLog | 5 ++++ serendipity_event_oembed/OEmbedTemplater.php | 2 ++ serendipity_event_oembed/oembed.tpl | 24 +++++++++---------- .../serendipity_event_oembed.php | 16 ++++++++++++- 4 files changed, 34 insertions(+), 13 deletions(-) diff --git a/serendipity_event_oembed/ChangeLog b/serendipity_event_oembed/ChangeLog index cc46365f..89f5a563 100644 --- a/serendipity_event_oembed/ChangeLog +++ b/serendipity_event_oembed/ChangeLog @@ -1,3 +1,8 @@ +Version 1.02 (brockhaus) +----------------------- +* Added default css entries, changed oebed containers from span to div. +* Smarty security disabling for 1.7+ blogs only. + Version 1.01 (brockhaus) ----------------------- * Added "generic providers" embed.ly and oohembed.com. diff --git a/serendipity_event_oembed/OEmbedTemplater.php b/serendipity_event_oembed/OEmbedTemplater.php index e2bc2264..e0bcb05a 100644 --- a/serendipity_event_oembed/OEmbedTemplater.php +++ b/serendipity_event_oembed/OEmbedTemplater.php @@ -21,9 +21,11 @@ class OEmbedTemplater { if (version_compare($serendipity['version'], '1.7-alpha1')>=0) { $serendipity['smarty']->disableSecurity(); } + /* in earlier versions this is not needed. else { $serendipity['smarty']->security = false; } + */ // be smarty 3 compat including the serendipity_smarty class wrappers ->fetch and ->display methods and remove changed parameter number 4 $content = @$serendipity['smarty']->fetch('file:'. $tfile);//, false diff --git a/serendipity_event_oembed/oembed.tpl b/serendipity_event_oembed/oembed.tpl index 44bafb7f..81c9d3a9 100644 --- a/serendipity_event_oembed/oembed.tpl +++ b/serendipity_event_oembed/oembed.tpl @@ -1,6 +1,6 @@ {* oembed.tpl last modified 2011-12-01 *} {if $oembed.type=='rich'} {* =================================================== RICH *} - +
{if $oembed.provider_name=="Wikipedia"}
{$oembed.html}
{elseif $oembed.provider_name=="IMDB"} {* beautify noembed.com IMDB content *} @@ -10,21 +10,21 @@ {else} {$oembed.html} {/if} - +
{elseif $oembed.type=='video'} {* =================================================== VIDEO *} - +
{$oembed.html} - +
{elseif $oembed.type=='image'} {* =================================================== IMAGE *} - +
{$oembed.title} - +
{elseif $oembed.type=='photo'} {* =================================================== PHOTO *} - +
{$oembed.title} - +
{elseif $oembed.type=='link'} {* =================================================== LINK *} - + {else} {* Link type finishes *} - + {/if} diff --git a/serendipity_event_oembed/serendipity_event_oembed.php b/serendipity_event_oembed/serendipity_event_oembed.php index 424390e9..00e6252b 100644 --- a/serendipity_event_oembed/serendipity_event_oembed.php +++ b/serendipity_event_oembed/serendipity_event_oembed.php @@ -30,7 +30,7 @@ class serendipity_event_oembed extends serendipity_event $propbag->add('description', PLUGIN_EVENT_OEMBED_DESC); $propbag->add('stackable', false); $propbag->add('author', 'Grischa Brockhaus'); - $propbag->add('version', '1.01'); + $propbag->add('version', '1.02'); $propbag->add('requirements', array( 'serendipity' => '0.8', 'smarty' => '2.6.7', @@ -39,6 +39,7 @@ class serendipity_event_oembed extends serendipity_event $propbag->add('groups', array('FRONTEND_EXTERNAL_SERVICES')); $propbag->add('event_hooks', array( 'frontend_display' => true, + 'css' => true, )); $configuration = $configuration = array('info','maxwidth','maxheight','generic_service','embedly_apikey'); $configuration[] = 'supported'; // always last @@ -112,6 +113,19 @@ class serendipity_event_oembed extends serendipity_event $this->update_entry($eventData, $simplePatterns, 'extended'); } return true; + case 'css': + if (strpos($eventData, '.serendipity_oembed')) { + // class exists in CSS, so a user has customized it and we don't need default + // (doesn't work with templates like BP or 2k11 as the user css is loaded from a seperate file) + return true; + } +?> +.serendipity_oembed_rich, .serendipity_oembed_video, .serendipity_oembed_photo, .serendipity_oembed_link, .serendipity_oembed { + max-width: 100%; + height: auto; +} +