Set correct attachment type for rejected media (#2599)
In #2110, a new attachment type "unknown" was introduced for attachments that were rejected due to a domain being blocked using reject_media. However, the "type" field was never set to "unknown" because a default value of "0" (image) is set for that column, causing the `type.blank?` expression to always equal false. This version uses type_changed? instead, causing the type to be set to "unknown" unless a type has been explicitly set. This introduces a small change in behaviour causing the type to be set to unknown before paperclip calls `before_post_process`. Presumably this behaviour is more appropriate than the current one because the attachment type has not been determined by that point. Included are new tests for `ProcessFeedService` and `UpdateRemoteProfileService` which now check that remote media is downloaded for non-blocked domains and is rejected for others.
This commit is contained in:
parent
a823509b99
commit
8ac7fca5d0
3 changed files with 93 additions and 29 deletions
|
@ -96,7 +96,7 @@ class MediaAttachment < ApplicationRecord
|
|||
private
|
||||
|
||||
def set_shortcode
|
||||
self.type = :unknown if file.blank? && type.blank?
|
||||
self.type = :unknown if file.blank? && !type_changed?
|
||||
|
||||
return unless local?
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue