discourse/app/services
Martin Brennan 56d3e29a69
FIX: Badge and user title interaction fixes (#8282)
* Fix user title logic when badge name customized
* Fix an issue where a user's title was not considered a badge granted title when the user used a badge for their title and the badge name was customized. this affected the effectiveness of revoke_ungranted_titles! which only operates on badge_granted_titles.
* When a user's title is set now it is considered a badge_granted_title if the badge name OR the badge custom name from TranslationOverride is the same as the title
* When a user's badge is revoked we now also revoke their title if the user's title matches the badge name OR the badge custom name from TranslationOverride
* Add a user history log when the title is revoked to remove confusion about why titles are revoked
* Add granted_title_badge_id to user_profile, now when we set badge_granted_title on a user profile when updating a user's title based on a badge, we also remember which badge matched the title
* When badge name (or custom text) changes update titles of users in a background job
* When the name of a badge changes, or in the case of system badges when their custom translation text changes, then we need to update the title of all corresponding users who have a badge_granted_title and matching granted_title_badge_id. In the case of system badges we need to first get the proper badge ID based on the translation key e.g. badges.regular.name
* Add migration to backfill all granted_title_badge_ids for both normal badge name titles and titles using custom badge text.
2019-11-08 15:34:24 +10:00
..
spam_rule FIX: Use default locale for flag reasons 2019-07-12 12:04:23 +02:00
anonymous_shadow_creator.rb FEATURE: introduce dedicated storage and DB constraints for anon users 2019-05-29 14:26:24 +10:00
badge_granter.rb FIX: Badge and user title interaction fixes (#8282) 2019-11-08 15:34:24 +10:00
color_scheme_revisor.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
destroy_task.rb REFACTOR: Cleanup rake tasks based on feedback 2019-07-18 19:15:01 -06:00
email_style_updater.rb FEATURE: support SCSS in custom email style 2019-10-23 15:42:37 -04:00
group_action_logger.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
group_mentions_updater.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
group_message.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
handle_chunk_upload.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
heat_settings_updater.rb FIX: round the calculated heat values 2019-06-06 15:44:55 -04:00
inline_uploads.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
notification_emailer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
post_action_notifier.rb FIX: check for presence of liked post before creating notification 2019-10-24 14:25:56 +05:30
post_alerter.rb DEV: pluck_first 2019-10-21 12:08:20 +01:00
post_owner_changer.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
push_notification_pusher.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
random_topic_selector.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
search_indexer.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
site_settings_task.rb FEATURE: Allow import of hidden site settings (#7601) 2019-05-28 16:20:18 +10:00
staff_action_logger.rb FIX: Badge and user title interaction fixes (#8282) 2019-11-08 15:34:24 +10:00
themes_install_task.rb FEATURE: Rake themes installer (#7848) 2019-07-04 14:33:05 -04:00
topic_status_updater.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
topic_timestamp_changer.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
tracked_topics_updater.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
trust_level_granter.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
user_action_manager.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
user_activator.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
user_anonymizer.rb FEATURE: Overhaul of admin API key system (#8284) 2019-11-05 14:10:23 +00:00
user_authenticator.rb FIX: Clear authentication data from session after create account (#8040) 2019-09-12 12:11:12 +01:00
user_destroyer.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
user_merger.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
user_notification_renderer.rb FIX: during concurrent emails generation renderer should not be reused 2019-10-10 08:50:48 +11:00
user_silencer.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
user_updater.rb FEATURE: Site setting/UI to allow users to set their primary group (#8244) 2019-10-28 12:46:27 -05:00
username_changer.rb DEV: Upgrading Discourse to Zeitwerk (#8098) 2019-10-02 14:01:53 +10:00
username_checker_service.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
wildcard_domain_checker.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
wildcard_url_checker.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
word_watcher.rb FIX: Various watched words improvements 2019-08-02 15:29:12 +01:00