wiki:WeekPlanPlugin

Multi-week calendar for planning

Description

A new macro [[WeekPlan(...)]] can be used to show calendars / week plans. Clicking on that calendar allows interactively adding events to days. Moving or resizing events is possible by drag-and-drop. Clicking an event allows editing or deleting.

A "plan" is a named set of events. Multiple plans can be shown and edited in the same calendar in different colors.

The calendar data can be accessed as an iCalendar feed at /weekplan?format=ics&plan=xyz.

The FullCalendar library is used for the UI. The data is stored in a new table in the Trac database.

Example

[[WeekPlan(plan=parties|vacations, weeks=2)]]
Example screenshot

Known Limitations

  • There is no history or undo functionality.
  • There is no tracking of users. Everyone with WEEK_PLAN permission can freely edit any plan.
  • There is no support for collaborative editing. Changes only become visible when the page is manually refreshed. There is no conflict detection or resolution mechanism.

Parameters

  • plan: Id of the shown collection of events. (required)
    • Can be a |-separated list of multiple plans.
  • start: A date in the first week shown. (Defaults to today.)
  • weeks: Number of weeks shown. (Defaults to one.)
  • width: Width of the calendar. (Defaults to 400.)
  • rowheight: Height of one row of the calendar. (Defaults to 100.)
  • showweekends: Show Saturdays and Sundays (Default is hidden.)
  • color: Color of the events. (Defaults to #3A87AD|#39AC60|#D7A388|#88BDD7|#9939AC|#AC9939.)
    • Can be a |-separated list of multiple colors. Each plan uses a different colors if multiple plans are specified.
  • label: Labels shown instead of the plan ids. (Defaults to the plan ids.)
    • Can be a |-separated list of multiple labels. Each plan uses a different label if multiple plans are specified.
  • hidelegend: Show a legend below the calendar. (Defaults to shown.)

Bugs/Feature Requests

Existing bugs and feature requests for WeekPlanPlugin are here.

If you have any issues, create a new ticket.

Download

Download the zipped source from here.

Source

You can check out WeekPlanPlugin from here using Subversion, or browse the source with Trac.

Installation

Installation of the plugin requires the usual step, e.g. easy_install http://trac-hacks.org/svn/weekplanplugin/trunk and enable it in Trac's plugin admin page or by adding weekplan.* = enabled to the [components] section in trac.ini.

A database upgrade will be required as usual (trac-admin path-to-your-trac-environment upgrade).

Assign the new WEEK_PLAN permission to the appropriate Trac groups / users (e.g. in Trac's permission admin page).

Recent Changes

[14089] by lucid on 2014-08-16 13:48:42

WeekPlanPlugin: Upgrade to DB schema v2, FullCalendar v2.0.2 and use event sources.

  • Upgrade to DB schema 2: Add index for start/end and adjust old start/end values.
  • Update to FullCalendar v2.0.2
  • Fix timezone / summertime ambiguities
  • Use $(window).load() event instead of $(document).ready() to avoid a race condition between CSS loading and JS execution of FullCalendar.
  • Query events via event sources for more predictable performance with old plans and many events.
  • Removed support for format=count and matchtitle features. (These features don't work well and are incompatible with event sources.)
[13770] by lucid on 2014-03-17 21:03:08
WeekPlanPlugin: Add labels for nicer dropdowns and legends.
[13769] by lucid on 2014-03-17 20:57:08
WeekPlanPlugin: Add a legend below the calendar.

Author/Contributors

Author: lucid
Maintainer: lucid
Contributors:

Last modified 6 weeks ago Last modified on Aug 16, 2014 2:34:58 PM

Attachments (1)

Download all attachments as: .zip