framework/extensions/mentions/locale/en.yml
Sami Mazouz e407c66784 New mentions format, decouple usernames from mentions (#65)
* Convert user mentions to new `@"Display Name"#ID` format

* Handle deleted user's mentions

* Convert post mentions to `@"Display Name"#pID` format

* Handle deleted user's post mentions and deleted posts mentions

* Clean display name of `"#{letters}{numbers}` (replace with underscore _)

* Adapt integration tests to new mention formats

* Use a deleted attribute for user mentions

* Introduce cleanDisplayName util

* Detect new format with autocomplete

* Slug needed on rendering only

* Invalidate user mention tag when ID is invalid
This used to be implicitly done, when there was a username attribute configured, formatter would check that all attributes are available and if not invalidate.

since we now only have `displayname` and `id` attributes which are both available from the regex matching, formatter doesn't implicitly invalidate anymore and therefore validates ANY matches. So we explicitly invalidate the tag when the ID does not match a user.

* Allow username mention format with a setting

* Add tests for turning setting on/off

* Move setting check to tag filter
Because the configurator caches, changing the setting only takes effect after the cache is cleared.

* fix: showing autocomplete at the right moment

* Add dockblocks to explain unparsing process
2021-04-21 10:58:54 +01:00

84 lines
2.7 KiB
YAML

flarum-mentions:
##
# UNIQUE KEYS - The following keys are used in only one location each.
##
# Translations in this namespace are used by the admin interface.
admin:
# These translations are used in the mentions Settings page.
settings:
allow_username_format_label: Allow username mention format (@Username)
allow_username_format_text: |
The current format for user mentions is @"Display Name"#ID.
This setting allows using the old format of @Username, however it will still be converted to the new format upon saving.
# Translations in this namespace are used by the forum user interface.
forum:
# These translations are used by the composer (reply autocompletion function).
composer:
mention_tooltip: Mention a user or post
reply_to_post_text: "Reply to #{number}"
# These translations are used by the Notifications dropdown, a.k.a. "the bell".
notifications:
others_text: => core.ref.some_others
post_mentioned_text: "{username} replied to your post" # Can be pluralized to agree with the number of users!
user_mentioned_text: "{username} mentioned you"
# These translations are displayed beneath individual posts.
post:
mentioned_by_self_text: "{users} replied to this." # Can be pluralized to agree with the number of users!
mentioned_by_text: "{users} replied to this." # Can be pluralized to agree with the number of users!
others_text: => core.ref.some_others
quote_button: Quote
reply_link: => core.ref.reply
you_text: => core.ref.you
# These translations are used in the Settings page.
settings:
notify_post_mentioned_label: Someone replies to one of my posts
notify_user_mentioned_label: Someone mentions me in a post
# These translations are used in the user profile page and profile popup.
user:
mentions_link: Mentions
# These translations are used in the post mentions
post_mention:
deleted_text: "[unknown]"
# Translations in this namespace are used in emails sent by the forum.
email:
# These translations are used in emails sent when a post is replied to
post_mentioned:
subject: "{replier_display_name} replied to your post in {title}"
body: |
Hey {recipient_display_name}!
{replier_display_name} replied to your post (#{post_number}) in {title}.
{url}
---
{content}
# These translations are used in emails sent when a user is mentioned
user_mentioned:
subject: "{mentioner_display_name} mentioned you in {title}"
body: |
Hey {recipient_display_name}!
{mentioner_display_name} mentioned you in a post in {title}.
{url}
---
{content}