2
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2025-09-05 08:59:27 +08:00

Get detailed info about new versions from the Discourse Hub. Include version notes from the latest version in notification email.

This commit is contained in:
Neil Lalonde 2013-12-31 15:52:16 -05:00
parent 4f8aed295a
commit df220ae973
5 changed files with 62 additions and 8 deletions

View file

@ -72,6 +72,30 @@ module DiscourseUpdates
end"
end
def missing_versions=(versions)
# delete previous list from redis
prev_keys = $redis.lrange(missing_versions_list_key, 0, 4)
if prev_keys
$redis.del prev_keys
$redis.del(missing_versions_list_key)
end
# store the list in redis
version_keys = []
versions[0,5].each do |v|
key = "#{missing_versions_key_prefix}:#{v['version']}"
$redis.mapped_hmset key, v
version_keys << key
end
$redis.rpush missing_versions_list_key, version_keys
versions
end
def missing_versions
keys = $redis.lrange(missing_versions_list_key, 0, 4) # max of 5 versions
keys.present? ? keys.map { |k| $redis.hgetall(k) } : []
end
private
@ -94,5 +118,13 @@ module DiscourseUpdates
def updated_at_key
'last_version_check_at'
end
def missing_versions_list_key
'missing_versions'
end
def missing_versions_key_prefix
'missing_version'
end
end
end