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.
If you have any issues, create a new ticket.
Download the zipped source from here.
Note that the plugin is currently tied to MySQL. Updates to make it more database agnostic would be welcome. See #4243, MySQL Testers needed!
General instructions on installing Trac plugins can be found on the TracPlugins page.
For MySQL, the table can be created as follows:
CREATE TABLE `team_availability` ( `username` VARCHAR(255) NOT NULL DEFAULT '', `ondate` DATE NOT NULL DEFAULT '0000-00-00', `availability` FLOAT UNSIGNED DEFAULT NULL, PRIMARY KEY (`username`, `ondate`) );
For PostgreSQL 8.3, the table can be created as follows:
CREATE TABLE team_availability ( username VARCHAR(255) NOT NULL DEFAULT '', ondate DATE NOT NULL, availability FLOAT DEFAULT NULL, PRIMARY KEY (username, ondate) );
For Sqlite3, the database and table can be created as follows:
CREATE TABLE team_availability ( username TEXT NOT NULL DEFAULT '', ondate DATE NOT NULL DEFAULT (DATETIME('now')), availability FLOAT DEFAULT NULL, PRIMARY KEY (username, ondate) );
This plugin adds a new tab, Team Calendar, to users with the TEAMCALENDAR_VIEW permission. This shows a simple table with dates running down the rows and team members across the columns. Users with TEAMCALENDAR_UPDATE_OWN permissions can change the state of the tick boxes under their own name, and save the results. Users with TEAMCALENDAR_UPDATE_OTHERS permission can update everyone's.
The table is populated form the team_availability table in the database.
The 'availability' column will contain 0 or 1 if populated through the GUI. It is left as a float to make it possible to store more granular availability, eg half-day, but there is no business logic for this at present.
The calendar does not do anything else by itself. However, the team_availability table can be used in reports.
- 14017 by rjollos on 2014-07-23 21:33:05
Removed empty directories that were not removed when moving files using Git.
- 14015 by rjollos on 2014-07-23 21:28:21
Removed unneeded intermediate directory.
- 14014 by rjollos on 2014-07-23 21:28:04
Added license headers and text. Tidied up indentation. Refs #11871.