====== DokuWiki Slideshow Plugin ====== ~~NOTOC~~ This [[http://dokuwiki.org|DokuWiki]] plugin generates an image-gallery/slideshow from pictures in a given namespace. ===== General Information ===== {{ :oss:pixshow:pixshow1.png?300|Screenshot}} View demo: {{pixshow>blog:wicked_days}} ==== Download ==== The following link gets the latest version of the plugin and works with DokuWiki's plugin manager: [[http://rg42.org/gitweb/?p=pixshow.git;a=snapshot;h=release;sf=zip&.zip|Download]] http://rg42.org/gitweb/?p=pixshow.git;a=snapshot;h=release;sf=zip&.zip ==== Usage Example ==== The Wiki Syntax %%{{pixshow>blog:2011-04-nyc?hidectl&New_York_Visit|view image slide-show of NYC visit}}%% creates a link with text "view image slide-show of NYC visit" that leads to a gallery showing images in the name-space ''blog:2011-04-nyc'' titled "New York Visit" with the control-panel initially hidden. ==== Syntax ==== Note that the //pixshow// plugin consists of two parts: * An //action//-plugin which creates the actual slideshow page. * A //syntax//-plugin to create a link to the gallery from within a wiki page. {{pixshow>NAMESPACE [?OPTIONS] [|link-text] }} The default ''link-text'' (if none is given) is "View slide-show".\\ ''OPTIONS'' is a ampersand (''&'') separated list: ''noautostart'', ''hidectrl'', ''notitle'', //TITLE//.\\ The last given non-special option is takes as Gallery-title. If none is given, the namespace-name is used as Gallery-title unless ''notitle'' is specified. ===== About ===== The //pixshow// plugin is based on an independent JavaScript **web-slideshow** ((I wrote that around 2005)) which has been modified to use DokuWiki as data-storage and for caching scaled images... This plugin is intended for users who keep their images organized (and ordered) with a reasonable amount of pictures per folder/namespace and want to artistically **present** and **share** those as **image-galleries**. It is **not** intended for //drop-all-images-in-one-folder// use-cases. Organization and processing of images is **not** withing the scope of this plugin. ==== Features ==== {{ :oss:pixshow:pixshow_annotated.png?250|Annotated Screenshot}} * create slide-show from DokuWiki name-space, link back to DokuWiki pages. * automatic slide-show and manual mode (click on thumbnails) * clean design / auto-hide control-panels - full-screen playback((if browser supports full-screen mode)). * smooth fading transition * user customizable fade and delay times * dokuwiki authentication (//read-permission// is required to view gallery; //upload-permission// is needed to edit captions) * JavaScript & XHTML only (no Flash/FLEX) * scale images to browser-window size (binning for width/height values to allow caching of scaled images). * Drag'n'Drop control panel. * Keyboard shortcuts and built-in help. * Gallery-Title * Image-Captions (additional meta-data storage; edit captions directly from gallery) * Link-creation / social-bookmarks for each gallery/name-space. ==== Caption Admin ==== {{ :oss:pixshow:pixshow_caption2.png?150|Caption Admin}} If you access the gallery with write-permissions to the namespace, the control panel includes a text-field to edit/update the image-caption. The text can only be modified while the slideshow is stopped (or in manual mode: click on thumbnail). For convenience and additional navigation buttons is available at the bottom of the page: {{:oss:pixshow:pixshow_admin.png|Admin Menu}} - from left to right: - Move to previous picture (or wrap around) - show/hide links-popup - open controls-panel and edit caption (auto-stop slide-show) - move to next picture in sequence (or wrap around) - (Note: this button is also replicated at the lower right corner). The caption-entry field allows UTF-8 text with HTML-entities and very basic HTML (no wiki syntax!). Only ''..'' (bold text), ''..'' (emphasize/italic) and the ''
'' (force line-break) HTML tags are accepted. Pressing ''enter'' will submit the new text. The following shortcuts are automatically replaced to HTML-entities: ^ separators| %%... - -- () (-)%% | … − — · • | ^ quotes| %%,, `` '' << >>%% | „ “ ” « » | ^ arrows| %%<- <-> -> <= <=> =>%% | <- <-> -> <= <=> => | ^ special glyphs| %%(C) (TM) (R) (P) (S) (*) < >%% | © ™ ® ¶ § ♥ < > | ==== Installation Notes ==== * increase your DokuWiki's ''$conf['cachetime']'' so that scaled images remain in the cache for an appropriate time period (1 week to 1 month). * add ''&cache=purge'' to the URL in order to purge the //internal// cache: //pixshow// caches image-size for each namespace. Uploading or deleting a file from a namespace will automatically flush the cache on operating-systems which support the ''filemtime'' system call. * the captions for each image are stored in ''data/meta//.pixs''. =====TODO===== {{ :wiki:pixshow_example.png?300|Screenshot}} * parse user-options (auto-start, show/hide controls, sort-order, etc) * plugin (admin) config options: * override defaults for user options (auto-start, show/hide control panel/thumbnails) & inverse user-options (noautostart,etc) * configure style: custom design.css, icons. * disable features: disable-meta, disable-links, disable-admin-links,... * allow to disable internal cache feature (depends on ''filemtime'' which may not be avail on all OS) * [later] detect browser-window resizing also after the slideshow has started and re-load images. * [later] detect //empty folders// (in the syntax plugin) and render gallery links as //red// 'missing page'. * [later] smooth auto-hide transition, fade captions. * additional meta-data (EXIF parser, caption, comments, discussion, location, date/time,...) {{tag>dokuplugin floss}}