mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
DEV: Allow plugins to request topic thumbnail sizes (#9828)
In plugin.rb, you can register new sizes like
```
register_topic_thumbnail_size [512, 512]
```
For more information about thumbnails see 03818e642a
This commit is contained in:
@@ -33,11 +33,11 @@ class Topic < ActiveRecord::Base
|
||||
end
|
||||
|
||||
def self.thumbnail_sizes
|
||||
[ self.share_thumbnail_size ]
|
||||
[ self.share_thumbnail_size ] + DiscoursePluginRegistry.topic_thumbnail_sizes
|
||||
end
|
||||
|
||||
def thumbnail_job_redis_key(extra_sizes)
|
||||
"generate_topic_thumbnail_enqueue_#{id}_#{extra_sizes.inspect}"
|
||||
def thumbnail_job_redis_key(sizes)
|
||||
"generate_topic_thumbnail_enqueue_#{id}_#{sizes.inspect}"
|
||||
end
|
||||
|
||||
def filtered_topic_thumbnails(extra_sizes: [])
|
||||
@@ -79,7 +79,7 @@ class Topic < ActiveRecord::Base
|
||||
if SiteSetting.create_thumbnails &&
|
||||
enqueue_if_missing &&
|
||||
records.length < thumbnail_sizes.length &&
|
||||
Discourse.redis.set(thumbnail_job_redis_key(extra_sizes), 1, nx: true, ex: 1.minute)
|
||||
Discourse.redis.set(thumbnail_job_redis_key(thumbnail_sizes), 1, nx: true, ex: 1.minute)
|
||||
|
||||
Jobs.enqueue(:generate_topic_thumbnails, { topic_id: id, extra_sizes: extra_sizes })
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user