Change how changes to media attachments are stored for edits (#17696)

* Change how changes to media attachments are stored for edits

Fix not being able to re-order media attachments

* Fix not broadcasting updates when polls/media is changed through ActivityPub

* Various fixes and improvements

* Update app/models/report.rb

Co-authored-by: Claire <claire.github-309c@sitedethib.com>

* Add tracking of media attachment description changes

* Change poll in status edit to have a structure closer to the real one

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
This commit is contained in:
Eugen Rochko 2022-03-09 09:06:17 +01:00 committed by GitHub
parent bd53dd5210
commit d17fb70131
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
30 changed files with 190 additions and 125 deletions

View file

@ -25,10 +25,10 @@
- if status.preloadable_poll
= render_poll_component(status)
- if !status.media_attachments.empty?
- if status.media_attachments.first.video?
- if !status.ordered_media_attachments.empty?
- if status.ordered_media_attachments.first.video?
= render_video_component(status, width: 670, height: 380, detailed: true)
- elsif status.media_attachments.first.audio?
- elsif status.ordered_media_attachments.first.audio?
= render_audio_component(status, width: 670, height: 380)
- else
= render_media_gallery_component(status, height: 380, standalone: true)

View file

@ -1,6 +1,6 @@
- if activity.is_a?(Status) && (activity.non_sensitive_with_media? || (activity.with_media? && Setting.preview_sensitive_media))
- player_card = false
- activity.media_attachments.each do |media|
- activity.ordered_media_attachments.each do |media|
- if media.image?
= opengraph 'og:image', full_asset_url(media.file.url(:original))
= opengraph 'og:image:type', media.file_content_type

View file

@ -37,10 +37,10 @@
- if status.preloadable_poll
= render_poll_component(status)
- if !status.media_attachments.empty?
- if status.media_attachments.first.video?
- if !status.ordered_media_attachments.empty?
- if status.ordered_media_attachments.first.video?
= render_video_component(status, width: 610, height: 343)
- elsif status.media_attachments.first.audio?
- elsif status.ordered_media_attachments.first.audio?
= render_audio_component(status, width: 610, height: 343)
- else
= render_media_gallery_component(status, height: 343)