summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
Diffstat (limited to 'README')
-rw-r--r--README68
1 files changed, 62 insertions, 6 deletions
diff --git a/README b/README
index f60172c..4cc1f31 100644
--- a/README
+++ b/README
@@ -1,5 +1,5 @@
-slidonoscopy is a software to create individual HTML(5) based
-slideshows based on local data (text, images, videos...).
+slidonoscopy is a software to create individual HTML based slideshows based on
+local data (text, images, videos...) and (optionally) remote Ical calendars.
Dependencies:
=============
@@ -10,12 +10,21 @@ modules:
* express
* walk
* watch-tree
+ * node-ical
+
+Currently a few patches to node-ical and watch-tree are required. node-ical has
+to be updated to parse recurring rules. watch-tree needs a patch to support
+node 0.6. You can check out those updated packages from:
+
+git://l.unchti.me/watch-tree
+git://l.unchti.me/node-ical
Usage:
======
Edit config.js to reflect the location of your slideshows und metadata/event
-files. Slideshows are to be created under $dir with one directory per slideshow.
+files. Slideshows are to be created under $dir with one directory per
+slideshow.
$dir---slideshow1 -- events.js
| |___ slide1.jpg
@@ -32,9 +41,56 @@ $dir---slideshow1 -- events.js
|___ template.html
The template is a simple HTML file where the key words $EVENTS and $IMAGES will
-be exchanged at runtime with the appropriate events and slides.
+be exchanged at runtime with the appropriate events and slides (as lists).
Just execute
$ node main.js
to run slidenoscopy. The server will listen on port 8080 and will serve all
-slideshows under slides/$name. Retrieving / will display a list of all
-available slideshows.
+slideshows under slides/$name. Retrieving anything else will display a list of
+all available slideshows.
+
+Events:
+=======
+
+Events are substituted into the template either from a file or a remote ical
+calendar. Using an ical calendar is recommended as it allows defining recurring
+events.
+For using a remote calendar the events.js file should contain the following fields:
+
+{ "type": "ical",
+ "url": "https://sublab.org:5232/calendars/events",
+ "before": 0,
+ "after": 11160
+}
+
+The time offsets (seconds) are used to fetch past and future events from the
+calendar. All fields of each event are put into a div inside the event list
+element with the classes eventField and the name of the field. The example
+slideshows don't show those fields by default, but selectively enable known
+fields like summary and start time.
+
+Slides:
+=======
+
+Slides are created from each file in a subdirectory in the root directory
+defined in config.js (as described above). Slides consist of a media file
+(movies or images) and optionally a corresponding description. All media files
+should have the same size (at least with the default themes) to ensure a smooth
+transition between slides.
+Descriptions are defined in desc.js as follows:
+
+[
+ {
+ "file": "IMGP4596.jpg",
+ "head": "Kicker",
+ "text": "unser toller Profikicker"
+ },
+ {
+ "file": "IMG.jpg",
+ "head": "foobar",
+ "text": "barfoo"
+ }
+]
+
+The heading is put into a div inside the media tag (img or video) with the
+class slideHead. The description text is put into div inside the media tag with
+the class slideText.