Fix mastoapi notification type casting to include comment and share (mention and reblog) notifications

This commit is contained in:
Daniel Supernault 2022-08-04 02:13:33 -06:00
parent 10eaffb074
commit eba84530aa
No known key found for this signature in database
GPG key ID: 0DEF1C662C9033F7

View file

@ -105,7 +105,7 @@ class NotificationService {
$res = collect([]);
foreach($ids as $id) {
$n = self::getNotification($id);
$n = self::rewriteMastodonTypes(self::getNotification($id));
if($n != null && in_array($n['type'], self::MASTODON_TYPES)) {
$n['account'] = AccountService::getMastodon($n['account']['id']);
@ -133,7 +133,7 @@ class NotificationService {
$res = collect([]);
foreach($ids as $id) {
$n = self::getNotification($id);
$n = self::rewriteMastodonTypes(self::getNotification($id));
if($n != null && in_array($n['type'], self::MASTODON_TYPES)) {
$n['account'] = AccountService::getMastodon($n['account']['id']);
@ -175,6 +175,23 @@ class NotificationService {
]));
}
public static function rewriteMastodonTypes($notification)
{
if(!$notification || !isset($notification['type'])) {
return $notification;
}
if($notification['type'] === 'comment') {
$notification['type'] = 'mention';
}
if($notification['type'] === 'share') {
$notification['type'] = 'reblog';
}
return $notification;
}
public static function set($id, $val)
{
return Redis::zadd(self::CACHE_KEY . $id, $val, $val);