kolaente d617e44982 feat: format user mentions with display names in email notifications
When users are mentioned in task descriptions or comments, email notifications
now show the user's display name (e.g., "@John Doe") instead of just the
username or invisible HTML tags.

Changes:
- Add formatMentionsForEmail() function to parse mention-user tags and replace
  them with <strong>@DisplayName</strong> for email rendering
- Extract display name from data-label attribute, with fallback to data-id
- Update TaskCommentNotification.ToMail() to format mentions in comments
- Update UserMentionedInTaskNotification.ToMail() to format mentions in task
  descriptions
- Add comprehensive test coverage (30+ test cases) for all edge cases including
  special characters, unicode, emoji, old/new mention formats, and HTML
  preservation

The implementation is backward compatible with the old mention format and
gracefully handles malformed HTML by returning the original content unchanged.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 00:25:56 +01:00
2025-06-26 12:32:04 +02:00
2025-12-02 10:39:36 +01:00
2025-05-23 11:56:50 +02:00
2025-06-17 09:11:32 +00:00
2025-11-24 22:47:21 +01:00

Build Status License: AGPL-3.0-or-later Install Docker Pulls Swagger Docs Go Report Card

Vikunja

The Todo-app to organize your life.

If Vikunja is useful to you, please consider buying me a coffee, sponsoring me on GitHub or buying a sticker pack. I'm also offering a hosted version of Vikunja if you want a hassle-free solution for yourself or your team.

Table of contents

Security Reports

If you find any security-related issues you don't want to disclose publicly, please use the contact information on our website.

Features

See the features page on our website for a more exhaustive list or try it on try.vikunja.io!

Docs

All docs can be found on the Vikunja home page.

Roadmap

See the roadmap (hosted on Vikunja!) for more!

Contributing

Please check out the contribution guidelines on the website.

License

Most of this repository is licensed under AGPL3.0orlater. The contents of desktop/ are licensed under GPL3.0orlater.

Unsplash Images

Background images from Unsplash are distributed under the Unsplash License. The license requires giving credit to the photographer and Unsplash. See Unsplashs terms for more information.

Languages
Go 71.4%
Vue 14.8%
TypeScript 12.1%
SCSS 0.8%
JavaScript 0.3%
Other 0.5%