DEV: Make attachment markdown reusable

This commit is contained in:
Gerhard Schlager
2019-07-24 16:07:09 +02:00
parent 6a0787445c
commit a61ff16740
5 changed files with 35 additions and 35 deletions

View File

@ -5,12 +5,11 @@ require_dependency "new_post_manager"
require_dependency "html_to_markdown"
require_dependency "plain_text_to_markdown"
require_dependency "upload_creator"
require_dependency "discourse_markdown"
module Email
class Receiver
include ActionView::Helpers::NumberHelper
# If you add a new error, you need to
# * add it to Email::Processor#handle_failure()
# * add text to server.en.yml (parent key: "emails.incoming.errors")
@ -1035,19 +1034,16 @@ module Email
InlineUploads.match_img(raw) do |match, src, replacement, _|
if src == upload.url
raw = raw.sub(
match,
"![#{upload.original_filename}|#{upload.width}x#{upload.height}](#{upload.short_url})"
)
raw = raw.sub(match, DiscourseMarkdown.image_markdown(upload))
end
end
elsif raw[/\[image:.*?\d+[^\]]*\]/i]
raw.sub!(/\[image:.*?\d+[^\]]*\]/i, attachment_markdown(upload))
raw.sub!(/\[image:.*?\d+[^\]]*\]/i, DiscourseMarkdown.upload_markdown(upload))
else
raw << "\n\n#{attachment_markdown(upload)}\n\n"
raw << "\n\n#{DiscourseMarkdown.upload_markdown(upload)}\n\n"
end
else
raw << "\n\n#{attachment_markdown(upload)}\n\n"
raw << "\n\n#{DiscourseMarkdown.upload_markdown(upload)}\n\n"
end
else
rejected_attachments << upload
@ -1082,14 +1078,6 @@ module Email
Email::Sender.new(client_message, :email_reject_attachment).send
end
def attachment_markdown(upload)
if FileHelper.is_supported_image?(upload.original_filename)
"![#{upload.original_filename}|#{upload.width}x#{upload.height}](#{upload.short_url})"
else
"[#{upload.original_filename}|attachment](#{upload.short_url}) (#{number_to_human_size(upload.filesize)})"
end
end
def create_post(options = {})
options[:via_email] = true
options[:raw_email] = @raw_email