Merge pull request #6453 from pixelfed/a4

bugfix: Partial status updates nullify omitted caption/CW causing data loss)
pull/6469/head
dansup 5 months ago committed by GitHub
commit 416c02e2b8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -65,8 +65,6 @@ class UpdateStatusService
if (isset($attributes['status'])) { if (isset($attributes['status'])) {
$cleaned = Purify::clean($attributes['status']); $cleaned = Purify::clean($attributes['status']);
$status->caption = $cleaned; $status->caption = $cleaned;
} else {
$status->caption = null;
} }
if (isset($attributes['sensitive'])) { if (isset($attributes['sensitive'])) {
if ($status->is_nsfw != (bool) $attributes['sensitive'] && if ($status->is_nsfw != (bool) $attributes['sensitive'] &&
@ -84,8 +82,6 @@ class UpdateStatusService
} }
if (isset($attributes['spoiler_text'])) { if (isset($attributes['spoiler_text'])) {
$status->cw_summary = Purify::clean($attributes['spoiler_text']); $status->cw_summary = Purify::clean($attributes['spoiler_text']);
} else {
$status->cw_summary = null;
} }
if (isset($attributes['location'])) { if (isset($attributes['location'])) {
if (isset($attributes['location']['id'])) { if (isset($attributes['location']['id'])) {
@ -119,8 +115,8 @@ class UpdateStatusService
public static function createEdit(Status $status, $attributes) public static function createEdit(Status $status, $attributes)
{ {
$cleaned = isset($attributes['status']) ? Purify::clean($attributes['status']) : null; $cleaned = isset($attributes['status']) ? Purify::clean($attributes['status']) : $status->caption;
$spoiler_text = isset($attributes['spoiler_text']) ? Purify::clean($attributes['spoiler_text']) : null; $spoiler_text = isset($attributes['spoiler_text']) ? Purify::clean($attributes['spoiler_text']) : $status->cw_summary;
$sensitive = isset($attributes['sensitive']) ? $attributes['sensitive'] : null; $sensitive = isset($attributes['sensitive']) ? $attributes['sensitive'] : null;
$mids = $status->media()->count() ? $status->media()->orderBy('order')->pluck('id')->toArray() : null; $mids = $status->media()->count() ? $status->media()->orderBy('order')->pluck('id')->toArray() : null;
StatusEdit::create([ StatusEdit::create([

Loading…
Cancel
Save