diff options
-rw-r--r-- | README | 53 |
1 files changed, 38 insertions, 15 deletions
@@ -6,18 +6,18 @@ Dependencies: slidonoscopy is written in node.js and requires some additional modules: - * connect + * express * walk * watch-tree - * node-ical + * ical + * consolidate + * a templating engine compatible with consolidate (default: swig) 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 +node 0.6. Additionally we use the experimental express 3.x. Simply installing +all dependencies with npm should do the trick. Usage: ====== @@ -40,14 +40,43 @@ $dir---slideshow1 -- events.js |___slideshow3 -- 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 (as lists). +Templates are written in the templating language of your choice. The defaults +use swig. Read them to gather which variables are substituted for content. Just execute $ node main.js to run slidenoscopy. The server will listen on port 8080 and will serve all slideshows under slides/$name. Retrieving anything else will display a list of all available slideshows. +Configuration: +============== + +The configuration file consists of the following keys: + +exports.modelBackend = 'fs'; +exports.Config = { + rootDir: 'slideshows' , + templateEngine: 'swig', + listTemplate: 'index.html', + templateFile: 'template.html', + descriptionFile: 'desc.js', + eventFile: 'events.js', + ignoreDotFiles: 'false', + port: 8080 +}; + +'rootDir' sets the root directory from which all slideshows are created. +'templateEngine' selects the templating engine to use. It has to be compatible +with consolidate.js and all slideshows have to use the same templating language. +'listTemplate' is the template (relative to rootDir) used to create the listing +of all slideshows +'templateFile' is the actual template file used for a single slideshow +'descriptionFile' is the JSON file containing the slide descriptions +'eventFile' contains the URL to the Ical calendar or a list of events and dates +'ignoreDotFiles' selects if 'hidden' (dot files) should be considererd when +creating slideshows +'port' sets the TCP port used for serving the slideshows + Events: ======= @@ -63,10 +92,7 @@ For using a remote calendar the events.js file should contain the following fiel } 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. +calendar. Slides: ======= @@ -91,6 +117,3 @@ Descriptions are defined in desc.js as follows: } ] -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. |