'type' => 'file',
'filename' => 'avatar.jpg',
],
+ 'tags' => [
+ 'label' => 'groepen',
+ 'values' => [],
+ 'filename' => 'profile/.tags',
+ ],
];
foreach ($cols as $col => &$colconf) {
if (!isset($colconf['filename'])) {
continue; # exceptional storage
}
+
+ if (isset($colconf['values'])) {
+ if (!file_exists($colconf['filename'])) {
+ continue;
+ #TODO: drop key
+ }
+ $tags = [];
+ foreach (glob($colconf['filename'] . '/*') as $tag) {
+ $tagname = pathinfo($tag, PATHINFO_BASENAME);
+ $target = "$tag/{$user['name']}";
+ $val = file_exists($target);
+ $tags[$tagname] = ['value' => $val];
+ if (empty($User['admin'])) {
+ continue; # forbidden
+ }
+ if (!is_writable($tag)) {
+ continue; # locked tag directory
+ }
+ if ($val and !is_writable($target)) {
+ continue; # existing file locked
+ }
+ $tags[$tagname]['target'] = $target;
+ }
+ }
+
$filetype = @$colconf['type'] == 'file' ? 'jpg' : 'txt';
$colpath = $user['dir'] . '/' . $colconf['filename'];
if (file_exists($colpath)) {
],
] + $cols;
-$tagdir = 'profile/.tags';
-if (file_exists($tagdir)) {
- $tags = [];
- foreach (glob("$tagdir/*") as $tag) {
- $tagname = pathinfo($tag, PATHINFO_BASENAME);
- $target = "$tag/{$user['name']}";
- $val = file_exists($target);
- $tags[$tagname] = ['value' => $val];
- if (empty($User['admin'])) {
- continue; # forbidden
- }
- if (!is_writable($tag)) {
- continue; # locked tag directory
- }
- if ($val and !is_writable($target)) {
- continue; # existing file locked
- }
- $tags[$tagname]['target'] = $target;
- }
-
- if ($tags) {
- $cols['tags'] = [
- 'label' => 'groepen',
- 'values' => $tags,
- ];
- }
-}
-
if (isset($user['pass'])) {
$cols['newpass'] = [
'label' => 'wachtwoord',