FEATURE: Send notifications to admins when new features are released (#19460)

This commit adds a new notification that gets sent to admins when the site gets new features after an upgrade/deploy. Clicking on the notification takes the admin to the admin dashboard at `/admin` where they can see the new features under the "New Features" section.

Internal topic: t/87166.
This commit is contained in:
Osama Sayegh
2022-12-15 20:12:53 +03:00
committed by GitHub
parent d9806b5314
commit 1c03d6f9b9
15 changed files with 289 additions and 8 deletions

View File

@ -176,6 +176,16 @@ module DiscourseUpdates
Discourse.redis.set(new_features_last_seen_key(user_id), last_seen["created_at"])
end
def get_last_viewed_feature_date(user_id)
date = Discourse.redis.hget(last_viewed_feature_dates_for_users_key, user_id.to_s)
return if date.blank?
Time.zone.parse(date)
end
def bump_last_viewed_feature_date(user_id, feature_date)
Discourse.redis.hset(last_viewed_feature_dates_for_users_key, user_id.to_s, feature_date)
end
private
def last_installed_version_key
@ -217,5 +227,9 @@ module DiscourseUpdates
def new_features_last_seen_key(user_id)
"new_features_last_seen_user_#{user_id}"
end
def last_viewed_feature_dates_for_users_key
"last_viewed_feature_dates_for_users_hash"
end
end
end