Provides different ways to interface a SilverStripe based project to the PicasaWeb service using developer API v.2.
There are two kind of Picasaweb objects: photos and albums. They are identified by different links. An album is a Picasaweb link without a fragment identifier, such as https://picasaweb.google.com/109188999413540243075/ADGCairoCanvasSoftwareLibrary. A photo is a Picasaweb album link with a fragment identifier appended such as https://picasaweb.google.com/109188999413540243075/ADGCairoCanvasSoftwareLibrary#5859399409666509250.
The editing can be enhanced by including a dedicated shortcode. For example, render
[picasa]https://picasaweb.google.com/109188999413540243075/ADGCairoCanvasSoftwareLibrary[/picasa] as an album you should include something such as the following line in your
ShortcodeParser::get()->register('picasa', array('Picasaweb', 'shortcode'));
Another way to use this module is by augmenting a specific page type by overriding its
onBeforeWrite() callback so that the user can just paste a Picasaweb link inside the HTML code. Be careful: in this case you cannot use the Picasaweb link in your templates otherwise the expansion will be called recursively.
In this case, the expansion of the Picasaweb links happens before storing the HTML code in the database, avoiding further requests on page hits.
TODO: implement an
Object::add_extension('SiteConfig', 'PicasawebConfig') for customizing via CMS the global Picasaweb environment, that is photo and/or album rendering activation and the default thumbnail or zoomed images.