use Friendica\Content\Text\BBCode;
use Friendica\Core\Protocol;
use Friendica\Model\Contact;
-
use Friendica\Model\FileTag;
use Friendica\Util\Strings;
-use Friendica\Util\XML;
/**
* Turn user/group ACLs stored as angle bracketed text into arrays
{
$categories = [];
$folders = [];
-
- $matches = [];
$first = true;
- $cnt = preg_match_all('/<(.*?)>/', $item['file'], $matches, PREG_SET_ORDER);
- if ($cnt) {
- foreach ($matches as $mtch) {
- $categories[] = [
- 'name' => XML::escape(FileTag::decode($mtch[1])),
- 'url' => "#",
- 'removeurl' => ((local_user() == $item['uid'])?'filerm/' . $item['id'] . '?f=&cat=' . XML::escape(FileTag::decode($mtch[1])):""),
- 'first' => $first,
- 'last' => false
- ];
- $first = false;
- }
+
+ foreach (FileTag::fileToArray($item['file'], 'category') as $savedFolderName) {
+ $categories[] = [
+ 'name' => $savedFolderName,
+ 'url' => "#",
+ 'removeurl' => ((local_user() == $item['uid']) ? 'filerm/' . $item['id'] . '?f=&cat=' . rawurlencode($savedFolderName) : ""),
+ 'first' => $first,
+ 'last' => false
+ ];
+ $first = false;
}
if (count($categories)) {
}
if (local_user() == $item['uid']) {
- $matches = [];
- $first = true;
- $cnt = preg_match_all('/\[(.*?)\]/', $item['file'], $matches, PREG_SET_ORDER);
- if ($cnt) {
- foreach ($matches as $mtch) {
- $folders[] = [
- 'name' => XML::escape(FileTag::decode($mtch[1])),
- 'url' => "#",
- 'removeurl' => ((local_user() == $item['uid']) ? 'filerm/' . $item['id'] . '?f=&term=' . XML::escape(FileTag::decode($mtch[1])) : ""),
- 'first' => $first,
- 'last' => false
- ];
- $first = false;
- }
+ foreach (FileTag::fileToArray($item['file']) as $savedFolderName) {
+ $folders[] = [
+ 'name' => $savedFolderName,
+ 'url' => "#",
+ 'removeurl' => ((local_user() == $item['uid']) ? 'filerm/' . $item['id'] . '?f=&term=' . rawurlencode($savedFolderName) : ""),
+ 'first' => $first,
+ 'last' => false
+ ];
+ $first = false;
}
}