| 1 | = Team calendar = |
| 2 | |
| 3 | == Description == |
| 4 | |
| 5 | This plugin adds a new navigation tab, "Team calendar", that can be used to keep track of team availability in a project. The data is stored in the database, which means it can be used in reports and queries. |
| 6 | |
| 7 | == Bugs/Feature Requests == |
| 8 | |
| 9 | Existing bugs and feature requests for TeamCalendarPlugin are |
| 10 | [report:9?COMPONENT=TeamCalendarPlugin here]. |
| 11 | |
| 12 | If you have any issues, create a |
| 13 | [http://trac-hacks.org/newticket?component=TeamCalendarPlugin&owner=optilude new ticket]. |
| 14 | |
| 15 | == Download == |
| 16 | |
| 17 | Download the zipped source from [download:teamcalendarplugin here]. |
| 18 | |
| 19 | == Source == |
| 20 | |
| 21 | You can check out TeamCalendarPlugin from [http://trac-hacks.org/svn/teamcalendarplugin here] using Subversion, or [source:teamcalendarplugin browse the source] with Trac. |
| 22 | |
| 23 | == Example == |
| 24 | |
| 25 | This plugin adds a new tab, Team Calendar, to users with the TEAMCALENDAR_VIEW |
| 26 | permission. This shows a simple tables with dates running down the rows |
| 27 | and team members across the columns. Users with TEAMCALENDAR_UPDATE_OWN |
| 28 | permissions can change the state of the tick boxes under their own name, |
| 29 | and save the results. Users with TEAMCALENDAR_UPDATE_OTHERS permission can |
| 30 | update everyone's. |
| 31 | |
| 32 | The table is populated form the database, where the following table must be |
| 33 | created: |
| 34 | |
| 35 | {{{ |
| 36 | CREATE TABLE `team_availability` ( |
| 37 | `username` varchar(255) NOT NULL DEFAULT '', |
| 38 | `ondate` date NOT NULL DEFAULT '0000-00-00', |
| 39 | `availability` float unsigned DEFAULT NULL, |
| 40 | PRIMARY KEY (`username`,`ondate`) |
| 41 | ); |
| 42 | }}} |
| 43 | |
| 44 | Note that the plugin is currently tied to MySQL. Updates to make it more |
| 45 | database agnostic would be welcome. |
| 46 | |
| 47 | The 'availability' column will contain 0 or 1 if populated through the GUI. |
| 48 | It is left as a float to make it possible to store more granular availability, |
| 49 | e.g. half-day, but there is no UI for this at present. |
| 50 | |
| 51 | The calendar does not do anything more by itself. However, the |
| 52 | team_availability table can be used in reports. |
| 53 | |
| 54 | == Recent Changes == |
| 55 | |
| 56 | [[ChangeLog(teamcalendarplugin, 3)]] |
| 57 | |
| 58 | == Author/Contributors == |
| 59 | |
| 60 | '''Author:''' [wiki:optilude] [[BR]] |
| 61 | '''Contributors:''' |