mirror of
https://github.com/friendica/friendica
synced 2025-04-27 16:30:10 +00:00
Improvements to signature check, private posts do work now again
This commit is contained in:
parent
4c224fbddd
commit
b44fc62708
5 changed files with 166 additions and 97 deletions
|
@ -40,11 +40,26 @@ class JsonLD
|
|||
return $data;
|
||||
}
|
||||
|
||||
private static function objectify($element)
|
||||
{
|
||||
if (is_array($element)) {
|
||||
$keys = array_keys($element);
|
||||
if (is_int(array_pop($keys))) {
|
||||
return array_map('objectify', $element);
|
||||
} else {
|
||||
return (object)array_map('objectify', $element);
|
||||
}
|
||||
} else {
|
||||
return $element;
|
||||
}
|
||||
}
|
||||
|
||||
public static function normalize($json)
|
||||
{
|
||||
jsonld_set_document_loader('Friendica\Util\JsonLD::documentLoader');
|
||||
|
||||
$jsonobj = json_decode(json_encode($json));
|
||||
// $jsonobj = array_map('Friendica\Util\JsonLD::objectify', $json);
|
||||
$jsonobj = json_decode(json_encode($json, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE));
|
||||
|
||||
return jsonld_normalize($jsonobj, array('algorithm' => 'URDNA2015', 'format' => 'application/nquads'));
|
||||
}
|
||||
|
@ -59,11 +74,11 @@ class JsonLD
|
|||
'vcard' => (object)['@id' => 'http://www.w3.org/2006/vcard/ns#', '@type' => '@id'],
|
||||
'uuid' => (object)['@id' => 'http://schema.org/identifier', '@type' => '@id']];
|
||||
|
||||
$jsonobj = json_decode(json_encode($json));
|
||||
$jsonobj = json_decode(json_encode($json, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE));
|
||||
|
||||
$compacted = jsonld_compact($jsonobj, $context);
|
||||
|
||||
return json_decode(json_encode($compacted), true);
|
||||
return json_decode(json_encode($compacted, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE), true);
|
||||
}
|
||||
|
||||
public static function fetchElement($array, $element, $key, $type = null, $type_value = null)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue