Plugin for assigning users to a topic
Go to file
Loïc Guitaut 80604e9012 FIX: Display assignments in user menu properly
Currently, we display a mix of topics and notifications in the user menu
assignments tab. This has a number of issues like having to maintain
hard to understand code instead of simply relying on the notifications
system we have, we can’t display more than one assignment per topic and
it’s not clear if an assignment is for a topic or a post nor if it’s a
group assignment or an individual one.

This patch addresses those issues by relying on the notifications system
we’re using for most of the other user menu tabs instead of a custom
implementation. This led to some heavy refactoring but it was
worthwhile as things are a bit more normalized and easier to reason
about. Instead of serializing topics with different attributes to access
various assignments, we now simply return a notification for each
existing assignment.

The UI changed a bit: tooltips are now explaining if the assignment is
for a topic or a post and if it’s for an individual or a group. Icons
are also properly set (so no more individual icon for group assignments)
and the assigned group name is displayed.

The background jobs signatures changed a bit (`assignment_id` is now
needed for the unassign job) so when deploying this patch, it’s expected
to have some jobs failing. That’s why a post-migration has been written
to handle the creation of missing notifications and the deletion of
extra notifications too.
2023-11-08 15:26:57 +01:00
.github/workflows DEV: Update CI workflows (#424) 2023-01-10 18:03:19 +00:00
app FIX: Display assignments in user menu properly 2023-11-08 15:26:57 +01:00
assets FIX: Display assignments in user menu properly 2023-11-08 15:26:57 +01:00
config FIX: Display assignments in user menu properly 2023-11-08 15:26:57 +01:00
db FIX: Display assignments in user menu properly 2023-11-08 15:26:57 +01:00
lib FIX: Display assignments in user menu properly 2023-11-08 15:26:57 +01:00
spec FIX: Display assignments in user menu properly 2023-11-08 15:26:57 +01:00
svg-icons UX: improve custom icons for group assign (#441) 2023-02-13 17:19:25 -05:00
test/javascripts FIX: Display assignments in user menu properly 2023-11-08 15:26:57 +01:00
.discourse-compatibility FIX: granular webhooks (#498) 2023-10-09 03:26:40 +00:00
.eslintrc.cjs DEV: Use `@discourse/lint-configs` (#517) 2023-10-23 12:08:11 +02:00
.git-blame-ignore-revs DEV: Ignore stree commit from git blame 2022-07-27 13:48:51 -03:00
.gitignore DEV: Use `@discourse/lint-configs` (#517) 2023-10-23 12:08:11 +02:00
.prettierrc.cjs DEV: Use `@discourse/lint-configs` (#517) 2023-10-23 12:08:11 +02:00
.rubocop.yml DEV: Introduce syntax_tree for ruby formatting (#408) 2022-12-23 20:35:55 +00:00
.streerc DEV: Introduce syntax_tree for ruby formatting (#408) 2022-12-23 20:35:55 +00:00
.template-lintrc.js DEV: Use `@discourse/lint-configs` (#517) 2023-10-23 12:08:11 +02:00
Gemfile DEV: Bump rubocop-discourse and correct violations (#409) 2022-12-23 19:55:31 +00:00
Gemfile.lock DEV: Update ruby linting (#518) 2023-10-20 17:04:03 +02:00
README.md DEV: Modernization/cleanup (#480) 2023-06-22 10:06:37 +02:00
package.json DEV: Use `@discourse/lint-configs` (#517) 2023-10-23 12:08:11 +02:00
plugin.rb FIX: Display assignments in user menu properly 2023-11-08 15:26:57 +01:00
translator.yml DEV: Switch from Transifex to Crowdin 2020-07-16 14:00:20 +02:00
yarn.lock DEV: Use `@discourse/lint-configs` (#517) 2023-10-23 12:08:11 +02:00

README.md

Assign Plugin

Allows you to assign topics and individual posts (both private and public) to a user or group.

For more information, please see: https://meta.discourse.org/t/discourse-assign/58044