Move expand_acl to ACLFormatter::expand()

- including tests
This commit is contained in:
Philipp Holzer 2019-10-23 00:40:14 +02:00
parent 7a9c5d10ee
commit f65f7f11c3
No known key found for this signature in database
GPG key ID: D8365C3D36B77D90
8 changed files with 224 additions and 160 deletions

27
src/Util/ACLFormatter.php Normal file
View file

@ -0,0 +1,27 @@
<?php
namespace Friendica\Util;
use Friendica\Model\Group;
/**
* Util class for ACL formatting
*/
final class ACLFormatter
{
/**
* Turn user/group ACLs stored as angle bracketed text into arrays
*
* @param string $ids A angle-bracketed list of IDs
*
* @return array The array based on the IDs
*/
public function expand(string $ids)
{
// turn string array of angle-bracketed elements into numeric array
// e.g. "<1><2><3>" => array(1,2,3);
preg_match_all('/<(' . Group::FOLLOWERS . '|'. Group::MUTUALS . '|[0-9]+)>/', $ids, $matches, PREG_PATTERN_ORDER);
return $matches[1];
}
}