We’ve been tossing up between two options for open-source project management: ToDoYu and Open Atrium. We wanted everyone to be notified of changes to a project as they happen, rather than insisting they check the project website constantly, and this didn’t seem to be easily possible with ToDoYu after some messing around. ToDoYu is also a bit more intimidating to look at, and still feels a bit rough around the edges (I have no idea what some of the features do as there’s barely any documentation).
We decided eventually that Open Atrium better suited our needs as it’s fairly simple, integrates nicely with email and is fairly extensible. It has a few weaknesses out of the box that are pretty easy to correct. The biggest as far as we were concerned was the lack of integration between project due dates and the built-in calendar, which by default only shows certain events manually entered into the calendar.
Here’s how to set up Open Atrium's calendar including project due dates, using the latest build from scratch:
Go to /admin/build/modules
Scroll right to the bottom and activate “Views UI” (and “Views exporter” optionally), then save.
Now you can edit views: go to /admin/build/views
Scroll to “calendar_listing (atrium) and click “Edit”
Tweak the settings to include the data from cases with a due date:
a) Under “Filters”, select “Node: Type”, scroll down and also select “Case”. Update.
b) Under “Arguments”, select “Date: Date (node)”, scroll down to “DATE FIELDS” and also tick “Content: Due Date (field_due_date)”. Update
c) Under “Fields”, click the + icon, scroll down and tick “Content: Due Date (field_due_date)”. Add. Update.
You’ve probably just edited “Default” (on the left hand menu bar). Select “Calendar”, which doesn’t carry across the override for the filters, and re-apply step 5a.
To customise the “upcoming events” lists to include due dates as well as events (I find this useful), do the following:
Go to /admin/build/views
Scroll to “calendar_upcoming (atrium) and click “Edit”
Tweak the settings:
a) Under “Filters”, select the gear icon next to “Date”, scroll down and also tick “Content: Due Date (field_due_date)”. Update.
b) Under “Filters”, select “Node: Type”, scroll down and also select “Case”. Update.
c) Under “Fields”, click the + icon, scroll down and tick “Content: Due Date (field_due_date)”. Add. Under “FORMAT”, select “Day”. Update.
d) Under “Sort criteria”, click the + icon, scroll down and tick “Content: Due Date (field_due_date)”. Add.
Repeat the steps above as needed for the “Page: Upcoming events” and “Block: Upcoming events” from the left-hand menu, as some defaults you’ve set aren’t carried through.
As above, disable the original view in /admin/build/views.
When you've done all that, go to /admin/build/views/tools and click “Clear Views’ cache”. Voilà!
A few other features we customise are:
- Enable automatic subscription to notifications. Go to admin/build/modules, enable "Notifications Autosubscribe". Then go to /admin/messaging/notifications/content and tick "Set all users to "Autosubscribe" by default.
- Remove software-specific case statuses for new projects at admin/settings/casetracker/states
Overall, we've found that Open Atrium is a pretty amazing open-source tool for project management and we're hoping to use it for some of our project management work for several publishers in the near future.