Demo app: project management with dexterity content types.
This add-on demonstrates how to create a project management application in Plone with four Dexterity content types: Client, Project, Iteration, and Task. It also includes a tool to automate the creation of iterations, and a custom workflow for the Client, Project and Iteration types that contains active/inactive states.
Plone < 4.3
For Plone versions earlier than 4.3, extend the Dexterity Known Good Set of packages e.g.:
[buildout] extends = http://good-py.appspot.com/release/dexterity/1.2.1 versions = versions
You must extend the Dexterity Known Good Set provided by http://good-py.appspot.com/release/dexterity/1.2.1 to avoid Buildout conflict errors.
Add collective.project to plone.recipe.zope2instance section eggs parameter e.g.:
[plone] recipe = plone.recipe.zope2instance eggs = … collective.project
For more information about Dexterity, please see:
- Add 4.3 compat [aclark]
- Add classifers to setup.py for all Plone 4.x [aclark]
- Clean up package [aclark]
- Do not hide Plone content editing border by default [aclark]
- Change default projects to: [aclark]
- Clean up UI [aclark]
- More package cleanup [aclark]
- Clean up package (no code changes)
- Rebrand as “demo application”
- Fix bug with calculation of hours when exactly a full day (24 hours) has been worked.
- Rename class method iteration_tool (in CreateIterationForm) to create_iteration.
- Add class method to CreateIterationForm (deactivate_iteration) to change workflow state on all active iterations (to inactive) when creating new iterations.
- UI enhancements to project, iteration, task templates.
- Factor out some class methods into common.py.
- Improved client view template.
- Add additional fields to client type:
- Provide improved installation instructions in docs/INSTALL.txt.
- Iteration tool bug fixes
- Set date on new iterations
- Date range tweaks on projects, iterations
- Projects last 1 year by default
- Iterations last 1 month by default
- Add drop down menu to select Project title, powered by portal property and SimpleVocabulary.
- Add portal property to make disable border configurable on all types.
- Restore ‘iteration tool’:
- Provide ability to batch create iterations for selected projects, e.g. November 2009.
- Uses z3cform.
- Bug fixes:
- Fix hours calculation for increments of time < 1 hour.
- Calculate totals for active iterations only.
- Don’t show inactive iterations in iteration_templates/view.pt.
- Change defaults for start and stop of projects & iterations.
- Start and stop iteration on first day and last day of current month.
- Start and stop project on first day day of current month and last day of current month plus one year.
- Package and bug fixes
- Package shipped without top level docs directory, fixed.
- projects_view was broken in several ways, fixed.
- Rename package to ‘collective.project’.
- Final Dexterity content types implementation:
- Client - Provides container for Project, and nothing else.
- Project - Has start(datetime), stop(datetime), rate(float), flat(boolean), billable(boolean) fields.
- Iteration - Has start(datetime), stop(datetime) fields.
- Task - Has start(datetime), stop(datetime), billable(boolean) fields.
- Provides custom view templates for Project, Iteration, and Task as well as three top level views:
- projects_view - Consulting -> Client A.
- clients_view - Client A -> Consulting.
- print_view - Format for print.
- Initial Dexterity content types implementation.
- Track variable and flat rate fee projects (e.g. consulting and hosting):
- Amortize flat rate fee over number of months.
- Compute totals for active projects only.
- Bug fix in iteration_view template.
- Add billable field to task
- Add sort_on = ‘getObjPositionInParent’ to projects_view to display projects in order.
- Initial release.