* Add diff for agenda items
To make the diff available without too much hassle in the journal controller,
the key of the events need to be what the journal details are (e.g., `agenda_items_X_notes`).
For that to work, we need to adapt the event mapper and formatters a little bit.
https://community.openproject.org/work_packages/53975
* Use target=_top for diff link
* Add diff for agenda items
To make the diff available without too much hassle in the journal controller,
the key of the events need to be what the journal details are (e.g., `agenda_items_X_notes`).
For that to work, we need to adapt the event mapper and formatters a little bit.
https://community.openproject.org/work_packages/53975
* Use target=_top for diff link
* Update spec
* Adapt journal key after merge
---------
Co-authored-by: Mir Bhatia <m.bhatia@openproject.com>
As description of both WorkPackage and Project journal can be diffed,
the needed permissions have to be distinct: view_project for Project
description diff, and view_work_packages for WorkPackage description
diff.
* aggregate journals on write - simple implementation
* remove references to aggregated journals on read
* rewrite existing journals to be aggregated
* remove aggregated journal reference
* only delete predecessor if it can be aggregated
* fix aggregation condition
* adapt specs
* remove aggregated journal functionality from production code
The code is still necessary in a migration for the time being
* adapt specs
* use polymorphic belongs_to for journal data
The association can then be employed for eager loading
* eager load for activity rendering
Updates the copyright to 2021 for all files that have a copyright. Files in our source code without the copyright header still do not receive one automatically. Additionally, backlisted files are also excluded.
Previously the copyright of chiliproject which references redmine stated a copyright of redmine up to and including 2017 which is not true for the code we have in here. Because of that I changed that to 2013
... instead of displaying the diff for the requested journal only
- this should provide the best forward compatibility of links
- even when aggregation timeframes are changed intermittently