mirror of
https://github.com/pixelfed/pixelfed.git
synced 2024-11-10 00:34:50 +00:00
Update SharePipeline, fix ReblogService and undo handling
This commit is contained in:
parent
222dc3a192
commit
016c6e4144
3 changed files with 15 additions and 6 deletions
|
@ -63,7 +63,7 @@ class SharePipeline implements ShouldQueue
|
|||
return true;
|
||||
}
|
||||
|
||||
ReblogService::addPostReblog($parent->id, $status->id);
|
||||
ReblogService::addPostReblog($parent->profile_id, $status->id);
|
||||
|
||||
$parent->reblogs_count = $parent->reblogs_count + 1;
|
||||
$parent->save();
|
||||
|
|
|
@ -37,7 +37,7 @@ class UndoSharePipeline implements ShouldQueue
|
|||
|
||||
if($parent) {
|
||||
$target = $parent->profile_id;
|
||||
ReblogService::removePostReblog($parent->id, $status->id);
|
||||
ReblogService::removePostReblog($parent->profile_id, $status->id);
|
||||
|
||||
if($parent->reblogs_count > 0) {
|
||||
$parent->reblogs_count = $parent->reblogs_count - 1;
|
||||
|
|
|
@ -37,6 +37,7 @@ use App\Util\ActivityPub\Validator\UndoFollow as UndoFollowValidator;
|
|||
|
||||
use App\Services\PollService;
|
||||
use App\Services\FollowerService;
|
||||
use App\Services\ReblogService;
|
||||
use App\Services\StatusService;
|
||||
use App\Services\UserFilterService;
|
||||
use App\Services\NetworkTimelineService;
|
||||
|
@ -602,6 +603,8 @@ class Inbox
|
|||
$parent->reblogs_count = $parent->reblogs_count + 1;
|
||||
$parent->save();
|
||||
|
||||
ReblogService::addPostReblog($parent->profile_id, $status->id);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -789,17 +792,23 @@ class Inbox
|
|||
if(is_array($obj) && isset($obj['object'])) {
|
||||
$obj = $obj['object'];
|
||||
}
|
||||
if(!is_string($obj) || !Helpers::validateLocalUrl($obj)) {
|
||||
if(!is_string($obj)) {
|
||||
return;
|
||||
}
|
||||
$status = Status::whereUri($obj)->exists();
|
||||
if(Helpers::validateLocalUrl($obj)) {
|
||||
$parsedId = last(explode('/', $obj));
|
||||
$status = Status::find($parsedId);
|
||||
} else {
|
||||
$status = Status::whereUri($obj)->first();
|
||||
}
|
||||
if(!$status) {
|
||||
return;
|
||||
}
|
||||
Status::whereProfileId($profile->id)
|
||||
->whereReblogOfId($status->id)
|
||||
->forceDelete();
|
||||
Notification::whereProfileId($status->profile->id)
|
||||
->delete();
|
||||
ReblogService::removePostReblog($profile->id, $status->id);
|
||||
Notification::whereProfileId($status->profile_id)
|
||||
->whereActorId($profile->id)
|
||||
->whereAction('share')
|
||||
->whereItemId($status->reblog_of_id)
|
||||
|
|
Loading…
Reference in a new issue