$gid, 'permissions' => $rows[$i]['permissions'], 'users' => OC_Group::usersInGroup($gid), 'parentFolder' => false)); } else { $group = array(array('gid' => $gid, 'permissions' => $rows[$i]['permissions'], 'users' => OC_Group::usersInGroup($gid), 'parentFolder' => basename($path))); } if (!isset($item['groups'])) { $item['groups'] = $group; } else if (is_array($item['groups'])) { $gidExists = false; $currentGroups = $item['groups']; // Check if the group is already included foreach ($currentGroups as $g) { if ($g['gid'] == $gid) { $gidExists = true; } } if (!$gidExists) { $item['groups'] = array_merge($item['groups'], $group); } } } else { if ($path == $source) { $user = array(array('uid' => $uid_shared_with, 'permissions' => $rows[$i]['permissions'], 'parentFolder' => false)); } else { $user = array(array('uid' => $uid_shared_with, 'permissions' => $rows[$i]['permissions'], 'parentFolder' => basename($path))); } if (!isset($item['users'])) { $item['users'] = $user; } else if (is_array($item['users'])) { $item['users'] = array_merge($item['users'], $user); } } } } } $path = dirname($path); } OCP\JSON::success(array('data' => $item)); ?>