# HG changeset patch # User Paul Boddie # Date 1237754984 -3600 # Node ID a2bbbfca36ff54617d4a071eec1a3b5b84d2baec # Parent 9e6bb8250f87e58a6d02e1877010629d383a60e9 Added documentation and scripts. diff -r 9e6bb8250f87 -r a2bbbfca36ff README.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README.txt Sun Mar 22 21:49:44 2009 +0100 @@ -0,0 +1,106 @@ +Introduction +------------ + +The EventAggregator macro for MoinMoin can be used to display event calendars +or listings which obtain their data from pages belonging to specific +categories (such as CategoryEvent). The start and end dates are read from the +page describing each event, and the calendar is automatically filled out with +the details of each event, colouring each event period in a specially +generated colour. + +Installation +------------ + +To install the macro in a Wiki, consider using the instmacros script provided: + + ./instmacros path-to-wiki + +On non-UNIX platforms, it is necessary to manually copy the contents of the +macros directory in this distribution into the macros directory of your Wiki. + +It should now be possible to edit pages and use the macro as follows. For +MoinMoin 1.5: + + [[EventAggregator(CategoryEvent)]] + +For MoinMoin 1.6 and above: + + <> + +As arguments to the macro, you must indicate a comma-separated list of +categories to be inspected for event data. For example: + + <> + +By default, this should display a calendar in a collection of tables, one for +each month containing events. To show a collection of month-by-month listings, +use the 'mode' argument as follows: + + <> + +It is highly recommended that the tables and listings be styled according to +the stylesheet provided, and you can use this file as a starting point for +your own modifications. To install the stylesheet, consider using the +insttheme script provided: + + ./insttheme path-to-wiki theme-name + +Again, on non-UNIX platforms, it is necessary to manually copy the files. In +this case, just copy the contents of the css directory into the css directory +of themes which will support styling of event calendars and listings. + +To activate the styles provided by the stylesheet in the css directory, you +will need to edit the screen.css file in each affected theme's css directory, +adding the following before any style rules: + + /* Event aggregation... */ + + @import "event-aggregator.css"; + +This ensures that the styles are made available to the browser. + +Recommended Software +-------------------- + +The Xapian search software is highly recommended, if not technically +essential, for the acceptable performance of the EventAggregator macro since +the macro makes use of search routines in MoinMoin that can dominate the time +spent processing requests. + +See the following page for information on Xapian and MoinMoin: + +http://moinmo.in/HelpOnXapian + +Troubleshooting +--------------- + +See here for a bug related to category recognition: + +http://moinmo.in/MoinMoinBugs/1.7TemplatesNotAppearing + +This affects installations where migrations between versions have occurred, +yet the Wiki configuration retains old regular expression details. + +Contact, Copyright and Licence Information +------------------------------------------ + +See the following Web page for more information about this work: + +http://moinmo.in/MacroMarket/EventAggregator + +The author can be contacted at the following e-mail address: + +paul@boddie.org.uk + +Copyright and licence information can be found in the docs directory - see +docs/COPYING.txt and docs/LICENCE.txt for more information. + +Release Procedures +------------------ + +Update the EventAggregator.py __version__ attribute. +Change the version number and package filename/directory in the documentation. +Update the release notes (see above). +Tag, export. +Archive, upload. +Update the MacroMarket (see above for the URL). diff -r 9e6bb8250f87 -r a2bbbfca36ff instmacros --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/instmacros Sun Mar 22 21:49:44 2009 +0100 @@ -0,0 +1,13 @@ +#!/bin/bash + +if [[ ! $1 ]] ; then + echo "Please specify a directory such as ../mysite/wiki or /tmp/mysite/wiki." + echo "This should be the root of your Wiki installation and contain the data" + echo "directory." + echo + echo "You may wish to uncomment and modify the chown command in this script." + exit +fi + +cp macros/*.py $1/data/plugin/macro/ +#chown www-data: $1/data/plugin/macro/*.py diff -r 9e6bb8250f87 -r a2bbbfca36ff insttheme --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/insttheme Sun Mar 22 21:49:44 2009 +0100 @@ -0,0 +1,29 @@ +#!/bin/bash + +if [[ ! $2 ]] ; then + echo "Please specify a directory such as ../mywiki or /tmp/mywiki along" + echo "with the name of the theme into which the EventAggregator styles will be" + echo "copied." + echo + echo "The specified directory should be the root of your Wiki resources" + echo "and contain the different theme resources directories, such as classic," + echo "modern, hypermodern, and so on, each containing css and img directories." + echo + echo "The specified directory may be called htdocs, but sometimes it is called" + echo "something like moin_static160." + echo + echo "In more recent versions of MoinMoin, the htdocs directory is found within" + echo "a shared directory such as ../moin/share/moin or /tmp/moin/share/moin," + echo "and you should specify the htdocs directory in this location instead." + echo "For example: ../moin/share/moin/htdocs" + echo + echo "You may wish to uncomment and modify the chown command in this script." + exit +fi + +cp -i css/*.css $1/$2/css/ +#chown www-data: $1/$2/css/ +echo "Don't forget to update the screen.css file:" +echo $1/$2/css/screen.css +echo +echo "See the README.txt file for details."