`format_text` accepts `render_mode:` (`:in_app_html`, `:external_html`,
`:external_text`), which resolves the `only_path`, `static_html` and
`plain_text` context flags as a set. External surfaces (mailer HTML
body, future RSS/PDF/webhook) need absolute URLs and static rendering
together; pinning the trio at the public API keeps callers from
forgetting one. Explicit primitive kwargs still override.
`MailFormattingHelper` exposes `format_mail_html` and `format_mail_text`
thin wrappers around `format_text(render_mode:)`. The `_html` / `_text`
suffix matches the `.html.erb` / `.text.erb` template extension so
caller intent stays visible in the view, with no introspection of
`formats`.
The five WorkPackageMailer view sites use the helpers; `_work_package_details`,
`mentioned.html`, `mentioned.text`, `watcher_changed.html`, `watcher_changed.text`
drop the `static_html:`/`only_path:`/`plain_text:` boilerplate.
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
* Extend syntax for linking users via their ID
* Allow login names for linking user profiles.
* User require_relative for legacy tests
* Add specs for login name based user links; Fixes other specs, too.
* Notify mentioned users
* Notify linked users;
- require quotes for login names in user links as login names can
contain spaces, dots that are typical word boundaries
- Adding specs
* For the decision who gets notified due to mentions only the visibility permissions of the recipient are relevant.
* Rubucop satisfaction
* Add autocomplete for user names to work pack package descriptions and activity
- Uses API V3 Principals endpoint.
- Extends API endpoint with name filter and name order.
- Make it activate when user types an "@" or a "user#"
- Still for work packages only.
* Directly show a list of users after typing '@' and allow navigating list with cursor keys
* Add an '@' before the rendered user link
* Adopting spec as WP autocompleter now expects whitespace before hash sign
* Adding spec for using user autocompleter
* Introduce magic pageSize of 0 for maximum length
* Add id filter for principals
* Allow pagination for principals and protect from falling back to a too low default value
* Fixing specs
* fixing typo in spec
* Add magic number 0 for user custom fields
* Add a toParams method for ApiV3FilterBuilder
* User ApiV3FilterBuilder in path helper service
* Add test for mentions principals to path helper
* WIP
* Convert auto complete helper to TS
[ci skip]
Isolated scopes do not inherit from rootScope and thus do not have
`DOUBLE_LEFT_CURLY_BRACE`.
However, every scope has a reference to the rootScope with
`scope.$root` (https://docs.angularjs.org/api/ng/type/$rootScope.Scope)
Wiki titles in 6.0 can contain ANY character, which is causing issues
for specific characters processed by textile and CGI-escaped before we
can actually parse wiki links.
To mitigate the issue of linking space/underscored wiki pages, introduce
a permalink URL based on the title and create a migration to move old
underscored titles
(e.g., `base_de_donées` to spaced titles `base de donées`).