[[PageOutline(2-5,Contents,pullout)]] = 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 [http://arshaw.com/fullcalendar/ 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)]]` [[BR]] [[Image(example.png)]] === 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. * Too many events could cause slowdowns. (Should use [http://arshaw.com/fullcalendar/docs/event_data/eventSources/ event sources].) * Timezones and daylight-saving-time might not yet be handled correctly. === 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. * `format`: One of the following formatting modes: * `multiweek`: A multi-week calendar. (The default.) * `count`: A simple count of events. * `matchtitle`: A regexp that matches event titles. (Defaults to match all events.) * `hidelegend`: Show a legend below the calendar. (Defaults to shown.) == !Bugs/Feature Requests Existing bugs and feature requests for WeekPlanPlugin are [report:9?COMPONENT=WeekPlanPlugin here]. If you have any issues, create a [http://trac-hacks.org/newticket?component=WeekPlanPlugin&owner=lucid new ticket]. == Download Download the zipped source from [export:weekplanplugin here]. == Source You can check out WeekPlanPlugin from [http://trac-hacks.org/svn/weekplanplugin here] using Subversion, or [source:weekplanplugin 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 [[ChangeLog(weekplanplugin, 3)]] == !Author/Contributors '''Author:''' [wiki:lucid] [[BR]] '''Maintainer:''' [[Maintainer]] [[BR]] '''Contributors:'''