mirror of
https://github.com/discourse/discourse.git
synced 2025-02-25 18:55:32 -06:00
FIX: use hijack for emoji uploads
This commit is contained in:
@@ -10,7 +10,7 @@ class Admin::EmojisController < Admin::AdminController
|
||||
file = params[:file] || params[:files].first
|
||||
name = params[:name] || File.basename(file.original_filename, ".*")
|
||||
|
||||
Scheduler::Defer.later("Upload Emoji") do
|
||||
hijack do
|
||||
# fix the name
|
||||
name = name.gsub(/[^a-z0-9]+/i, '_')
|
||||
.gsub(/_{2,}/, '_')
|
||||
@@ -22,6 +22,8 @@ class Admin::EmojisController < Admin::AdminController
|
||||
type: 'custom_emoji'
|
||||
).create_for(current_user.id)
|
||||
|
||||
good = true
|
||||
|
||||
data =
|
||||
if upload.persisted?
|
||||
custom_emoji = CustomEmoji.new(name: name, upload: upload)
|
||||
@@ -30,16 +32,16 @@ class Admin::EmojisController < Admin::AdminController
|
||||
Emoji.clear_cache
|
||||
{ name: custom_emoji.name, url: custom_emoji.upload.url }
|
||||
else
|
||||
good = false
|
||||
failed_json.merge(errors: custom_emoji.errors.full_messages)
|
||||
end
|
||||
else
|
||||
good = false
|
||||
failed_json.merge(errors: upload.errors.full_messages)
|
||||
end
|
||||
|
||||
MessageBus.publish("/uploads/emoji", data.as_json, user_ids: [current_user.id])
|
||||
render json: data.as_json, status: good ? 200 : 422
|
||||
end
|
||||
|
||||
render json: success_json
|
||||
end
|
||||
|
||||
def destroy
|
||||
|
||||
Reference in New Issue
Block a user