diff --git a/src/Content/Text/BBCode.php b/src/Content/Text/BBCode.php index 9cf7df4e3e..7a316c251b 100644 --- a/src/Content/Text/BBCode.php +++ b/src/Content/Text/BBCode.php @@ -1631,7 +1631,7 @@ class BBCode // Try to Oembed if ($try_oembed) { $text = preg_replace("/\[video\](.*?\.(ogg|ogv|oga|ogm|webm|mp4).*?)\[\/video\]/ism", '', $text); - $text = preg_replace("/\[audio\](.*?\.(ogg|ogv|oga|ogm|webm|mp4|mp3).*?)\[\/audio\]/ism", '', $text); + $text = preg_replace("/\[audio\](.*?)\[\/audio\]/ism", '', $text); $text = preg_replace_callback("/\[video\](.*?)\[\/video\]/ism", $try_oembed_callback, $text); $text = preg_replace_callback("/\[audio\](.*?)\[\/audio\]/ism", $try_oembed_callback, $text); diff --git a/src/Model/APContact.php b/src/Model/APContact.php index 7ce47bb227..071d935165 100644 --- a/src/Model/APContact.php +++ b/src/Model/APContact.php @@ -26,6 +26,7 @@ use Friendica\Core\Logger; use Friendica\Database\DBA; use Friendica\DI; use Friendica\Protocol\ActivityPub; +use Friendica\Util\Crypto; use Friendica\Util\Network; use Friendica\Util\JsonLD; use Friendica\Util\DateTimeFormat; @@ -209,6 +210,9 @@ class APContact $apcontact['pubkey'] = null; if (!empty($compacted['w3id:publicKey'])) { $apcontact['pubkey'] = trim(JsonLD::fetchElement($compacted['w3id:publicKey'], 'w3id:publicKeyPem', '@value')); + if (strstr($apcontact['pubkey'], 'RSA ')) { + $apcontact['pubkey'] = Crypto::rsaToPem($apcontact['pubkey']); + } } $apcontact['manually-approve'] = (int)JsonLD::fetchElement($compacted, 'as:manuallyApprovesFollowers'); diff --git a/src/Protocol/ActivityPub/Receiver.php b/src/Protocol/ActivityPub/Receiver.php index 30728ff11a..508e5acd53 100644 --- a/src/Protocol/ActivityPub/Receiver.php +++ b/src/Protocol/ActivityPub/Receiver.php @@ -841,6 +841,10 @@ class Receiver continue; } + if (empty($element['href'])) { + $element['href'] = $element['name']; + } + $taglist[] = $element; } return $taglist;