- added type-hints
- added some documentation
- added default: block for unknown 'rel' value
- changed return type void to empty array
This commit is contained in:
Roland Häder 2022-06-22 05:44:57 +02:00
parent dfa95ea58d
commit abd0d9f3fd
Signed by: roland
GPG Key ID: C82EDE5DDFA0BA77
5 changed files with 527 additions and 466 deletions

View File

@ -383,7 +383,7 @@ class DFRN
if ($public) {
// DFRN itself doesn't uses this. But maybe someone else wants to subscribe to the public feed.
OStatus::hublinks($doc, $root, $owner["nick"]);
OStatus::addHubLink($doc, $root, $owner["nick"]);
$attributes = ["rel" => "salmon", "href" => DI::baseUrl()."/salmon/".$owner["nick"]];
XML::addElement($doc, $root, "link", "", $attributes);

View File

@ -1040,7 +1040,7 @@ class Feed
$attributes = ["href" => $owner["url"], "rel" => "alternate", "type" => "text/html"];
XML::addElement($doc, $root, "link", "", $attributes);
OStatus::hublinks($doc, $root, $owner["nick"]);
OStatus::addHubLink($doc, $root, $owner["nick"]);
$attributes = ["href" => DI::baseUrl() . $selfUri, "rel" => "self", "type" => "application/atom+xml"];
XML::addElement($doc, $root, "link", "", $attributes);

File diff suppressed because it is too large Load Diff

View File

@ -55,7 +55,7 @@ class Relay
* @param string $url
* @return boolean "true" is the post is wanted by the system
*/
public static function isSolicitedPost(array $tags, string $body, int $authorid, string $url, string $network = '')
public static function isSolicitedPost(array $tags, string $body, int $authorid, string $url, string $network = ''): bool
{
$config = DI::config();
@ -139,6 +139,7 @@ class Relay
*
* @param array $gserver Global server record
* @param array $fields Optional network specific fields
* @return void
* @throws \Exception
*/
public static function updateContact(array $gserver, array $fields = [])
@ -198,6 +199,7 @@ class Relay
* The relay contact is a technical contact entry that exists once per server.
*
* @param array $contact of the relay contact
* @return void
*/
public static function markForArchival(array $contact)
{
@ -229,15 +231,14 @@ class Relay
* @param integer $item_id id of the item that is sent
* @param array $contacts Previously fetched contacts
* @param array $networks Networks of the relay servers
*
* @return array of relay servers
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
public static function getDirectRelayList(int $item_id)
public static function getDirectRelayList(int $item_id): array
{
$serverlist = [];
if (!DI::config()->get("system", "relay_directly", false)) {
if (!DI::config()->get('system', 'relay_directly', false)) {
return [];
}
@ -302,10 +303,10 @@ class Relay
* Return a list of relay servers
*
* @param array $fields Field list
* @return array
* @return array List of relay servers
* @throws Exception
*/
public static function getList($fields = []):array
public static function getList(array $fields = []): array
{
return DBA::selectToArray('apcontact', $fields,
["`type` = ? AND `url` IN (SELECT `url` FROM `contact` WHERE `uid` = ? AND `rel` = ?)", 'Application', 0, Contact::FRIEND]);
@ -316,7 +317,7 @@ class Relay
*
* @param array $gserver Global server record
* @param array $fields Fieldlist
* @return array with the contact
* @return array|bool Array with the contact or false on error
* @throws \Exception
*/
private static function getContact(array $gserver, array $fields = ['batch', 'id', 'url', 'name', 'network', 'protocol', 'archive', 'blocked'])
@ -344,6 +345,8 @@ class Relay
/**
* Resubscribe to all relay servers
*
* @return void
*/
public static function reSubscribe()
{

View File

@ -40,10 +40,10 @@ class Salmon
/**
* @param string $uri Uniform Resource Identifier
* @param string $keyhash encoded key
* @return mixed
* @return string Key or empty string on any errors
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
public static function getKey(string $uri, string $keyhash)
public static function getKey(string $uri, string $keyhash): string
{
$ret = [];
@ -83,13 +83,13 @@ class Salmon
Logger::notice('Key located', ['ret' => $ret]);
if (count($ret) == 1) {
// We only found one one key so we don't care if the hash matches.
// If it's the wrong key we'll find out soon enough because
// message verification will fail. This also covers some older
// software which don't supply a keyhash. As long as they only
// have one key we'll be right.
return $ret[0];
/* We only found one one key so we don't care if the hash matches.
* If it's the wrong key we'll find out soon enough because
* message verification will fail. This also covers some older
* software which don't supply a keyhash. As long as they only
* have one key we'll be right.
*/
return (string) $ret[0];
} else {
foreach ($ret as $a) {
$hash = Strings::base64UrlEncode(hash('sha256', $a));