embed content from oEmbed-providers as well as make your plonesite being oembed provider
Project description
Introduction
This addon integrate oembed into Plone. You can find a demo at http://youtu.be/kHikGIWrvCs
oEmbed official documentation: http://http://oembed.com/
You have to know this addon try to go beyond already supported website and with as many providers as possible without third party services.
oembed provider
Your site will become an oembed provider using @@oembed view as an endpoint:
URL Scheme: http://mysite.com/* API endpoint: http://mysite.com/@@oembed Supports discovery via <link> tags
oembed client
This addon provide an integration of jquery.oembed plugin. Because there are many fork you have to choose the one you will use. The official plugin has been integrated to plone throw the addon collective.js.oembed
The oembed client is integrated using a viewlet that is not activated by default. You have to activate it throw the controlpanel. It is configured that way:
<script type="text/javascript"> jqueryOmebedSettings = {...} //extracted from the controlpanel </script> <script type="text/javascript"> $(document).ready(function() { $(".oembed").oembed(null,jqueryOmebedSettings); }); </script>
consumer
A consumer is availabe throw a utility:
>>> url = "http://www.youtube.com/watch?v=it1hMtZKle8" >>> consumer = component.getUtility(collective.oembed.interfaces.IConsumer) >>> consumer.get_data(url, maxwidth=300, maxheight=None, format='json') {...}
There is also a @@collective.oembed.consumer view, which can take params throw attributes:
>>> consumer_view = component.queryMultiAdapter((self.context,self.request), ... name=u'collective.oembed.consumer') >>> consumer_view._url = url >>> consumer_view.embed_auto() <div class="oembed-wrapper oembed-video">...</div>
OEmbed link view
This addon register an oembed view to the Link content type. It displays content provided from the remote url and do not set maxwidth & maxheight. It should be achieved by integrators.
The link view stores 3 different lists of components:
oembed
api2embed
url2embed
oembed
Contains registered views of type oembed_view , able to get the html embed template from the targetted provider’s oembed api (see below for a list of currently supported providers).
api2embed
If you have an API key for the targeted website, you should be able to use it through those views. Once this feature is implemented, you should be able to choose whether you want to activate it or not.
url2embed
Contains registered views of type url2embed_view, which get the embed template directly from the target’s url. Used as a fallback for websites who do not support the oEmbed format.
NOTE:
While the returned data will be sufficient to embed the target widget in your view, you won't be able to access the metadata which could have been associated with it in a straight oEmbed format.
All three lists are checked in the same order as they’re presented here, and the first valid component found is used to get the embed code. If no match at all is found, then nothing will be displayed.
Check endpoint.csv to see which of those views are currently supported for each service.
Embed.ly
This addon can use embed.ly service. You can set the embed.ly api key in the control panel or install and configure collective.embedly, this addon will use the configuration provided by this one.
Providers
embed.ly is activated only if you have added an api_key or configured collective.embedly. The addon provide native support for the following services:
External providers:
Embedly (http://embed.ly)
Video providers:
5min (http://www.5min.com/)
Youtube (http://www.youtube.com/)
Qik (http://qik.com/)
Revision3 (http://revision3.com/)
Hulu (http://www.hulu.com/)
Vimeo (http://vimeo.com/)
CollegeHumor (http://www.collegehumor.com/)
Kinomap (http://wwww.kinomap.com/)
Dailymotion (http://www.dailymotion.com/)
Clikthrough (http://clikthrough.com)
Dotsub (http://dotsub.com/)
Vhx.tv (http://vhx.tv) NOTE: only works with the dedicated URL for sharing
Nfb.ca (http://http://www.nfb.ca/)
Wordpress TV (http://wordpress.tv/)
Screenr (http://screenr.com/)
Photo providers:
23hq (http://www.23hq.com/)
Flickr (http://www.flickr.com/)
SmugMug (http://www.smugmug.com/)
Photobucket (http://photobucket.com)
Instagr (http://instagr.am/)
Picasa (https://picasa.google.com/)
Rich providers:
Occipital (http://360.io)
iFixit (http://www.iFixit.com)
Apple (http://itunes.apple.com)
Poll Everywhere (http://www.polleverywhere.com/)
SlideShare (http://www.slideshare.net/)
WordPress (http://wordpress.com/)
Official.FM (http://official.fm)
Gist Github (https://gist.github.com)
Google Calendar (https://www.google.com/calendar)
Google Docs (https://docs.google.com/)
Google Maps (http://maps.google.com)
Issuu (http://issuu.com)
Scribd (http://www.scribd.com)
SoundCloud (http://soundcloud.com/)
Proxy OEmbed Endpoint
This addon provide consumer and provider. Both can be used at the same time in the proxy oembed endpoint. It means you can ask your site how to display an URL what ever it comes from the site itself or from outside.
How to get use (get the working url I want)
All most every website has many kind of URL
Other Plone addons
Credits
Companies
Authors
JeanMichel FRANCOIS aka toutpt <toutpt@gmail.com>
Contributors
Raphael Gaziano aka raphigaziano <r.gaziano@gmail.com>
Alejandro Pereira aka aleGpereira <alepereira86@gmail.com>
Changelog
1.2.5 (2013-01-07)
Fix soundcloud provider which can use https
Add oembed tile if plone.app.tiles is installed
Add screenr provider
Add test view endpoints_test_view only available with provided buildout
Refactor tests to use assertX instead of failUnless
Add responsive behavior to img, embed and object tag.
Add itunes.apple.com support (iphone app)
Add 360.io support (occipital)
Add issuu.com support
1.2.4 (2013-01-02)
Add “proxy-oembed-provider” to make your Plone an oembed proxy consumer and provider
Add twitteruser (api2embed) and activate api2embed everywhere
Improve local oembed support for archetypes using primary field
Update returned html code to make it responsive (taken from fitVids.js)
1.2.3 (2012-08-24)
Add support for Soundcloud. [aleGpereira]
1.2.2 (2012-07-10)
Make GoogleMaps working with both: maps and mymaps
PEP8
1.2.1 (2012-04-25)
Fix offline mode (when working without internet)
1.2 (2012-03-15)
add Plone 4.0.x support
1.1 (2012-02-22)
Add collective.oembed.url2embed browser view component
Add collective.oembed.superconsumer browser view component
Add GoogleMaps, gist.github.com, google calendar, google docs, scribd support
Support shorted url with tinyurl.com, goo.gl, bit.ly, t.co, youtu.be, vbly.us
1.0 (2012-01-13)
Fix regex for 5min endpoint.
Handle more error: HTTPError, OEmbedError
Add url2embed support
Add oembed support for instagr.am, Vhx.tv, Official.FM, Nfb.ca [raphigaziano]
Add url2embed support for picasaweb [raphigaziano]
1.0a (2012-01-02)
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.