From edb12964f6c2d11a460636c10732373a8d3acd63 Mon Sep 17 00:00:00 2001 From: Daniel Supernault Date: Mon, 31 Dec 2018 23:28:34 -0700 Subject: [PATCH] Update inbox --- app/Util/ActivityPub/Inbox.php | 35 ++++------------------------------ 1 file changed, 4 insertions(+), 31 deletions(-) diff --git a/app/Util/ActivityPub/Inbox.php b/app/Util/ActivityPub/Inbox.php index 2d764f040..ca6d52d9b 100644 --- a/app/Util/ActivityPub/Inbox.php +++ b/app/Util/ActivityPub/Inbox.php @@ -2,7 +2,7 @@ namespace App\Util\ActivityPub; -use Cache, DB, Log, Redis, Validator; +use Cache, DB, Log, Purify, Redis, Validator; use App\{ Activity, Follower, @@ -35,30 +35,6 @@ class Inbox $this->handleVerb(); } - public function authenticatePayload() - { - try { - $signature = Helpers::validateSignature($this->headers, $this->payload); - $payload = Helpers::validateObject($this->payload); - if($signature == false) { - return; - } - } catch (Exception $e) { - return; - } - $this->payloadLogger(); - } - - public function payloadLogger() - { - $logger = new Activity; - $logger->data = json_encode($this->payload); - $logger->save(); - $this->logger = $logger; - Log::info('AP:inbox:activity:new:'.$this->logger->id); - $this->handleVerb(); - } - public function handleVerb() { $verb = $this->payload['type']; @@ -171,7 +147,7 @@ class Inbox $caption = str_limit(strip_tags($activity['content']), config('pixelfed.max_caption_length')); $status = new Status; $status->profile_id = $actor->id; - $status->caption = $caption; + $status->caption = Purify::clean($caption); $status->visibility = $status->scope = 'public'; $status->uri = $url; $status->url = $url; @@ -275,13 +251,10 @@ class Inbox $obj = $this->payload['object']; if(is_string($obj) && Helpers::validateUrl($obj)) { // actor object detected - + // todo delete actor } else if (is_array($obj) && isset($obj['type']) && $obj['type'] == 'Tombstone') { // tombstone detected - $status = Status::whereUri($obj['id'])->first(); - if($status == null) { - return; - } + $status = Status::whereUri($obj['id'])->firstOrFail(); $status->forceDelete(); } }