Merge pull request #2553 from pixelfed/staging

Update AP Helpers
This commit is contained in:
daniel 2021-01-07 20:53:37 -07:00 committed by GitHub
commit 637cb62a94
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -247,10 +247,13 @@ class Helpers {
->whereUri($url)
->orWhere('object_url', $url)
->first();
if($cached) {
return $cached;
}
$res = self::fetchFromUrl($url);
if(!$res || empty($res)) {
return;
}
@ -308,13 +311,15 @@ class Helpers {
}
}
if(!self::validateUrl($activity['id']) ||
$id = isset($res['id']) ? $res['id'] : $url;
if(!self::validateUrl($id) ||
!self::validateUrl($activity['object']['attributedTo'])
) {
return;
}
$idDomain = parse_url($activity['id'], PHP_URL_HOST);
$idDomain = parse_url($id, PHP_URL_HOST);
$urlDomain = parse_url($url, PHP_URL_HOST);
$actorDomain = parse_url($activity['object']['attributedTo'], PHP_URL_HOST);
@ -334,12 +339,12 @@ class Helpers {
$reply_to = null;
}
$ts = is_array($res['published']) ? $res['published'][0] : $res['published'];
$status = DB::transaction(function() use($profile, $res, $url, $ts, $reply_to, $cw, $scope) {
$status = DB::transaction(function() use($profile, $res, $url, $ts, $reply_to, $cw, $scope, $id) {
$status = new Status;
$status->profile_id = $profile->id;
$status->url = isset($res['url']) ? $res['url'] : $url;
$status->uri = isset($res['url']) ? $res['url'] : $url;
$status->object_url = isset($activity['id']) ? $activity['id'] : $url;
$status->object_url = $id;
$status->caption = strip_tags($res['content']);
$status->rendered = Purify::clean($res['content']);
$status->created_at = Carbon::parse($ts);