Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion appinfo/info.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@

<bugs>https://www.arawa.fr/contact/</bugs>
<dependencies>
<nextcloud min-version="25" max-version="31"/>
<php min-version="8.1"/>
<nextcloud min-version="28" max-version="31"/>
</dependencies>

<summary>Create Groupfolders with delegated management</summary>
Expand Down
5 changes: 3 additions & 2 deletions lib/Controller/ConnectedGroupController.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
use OCA\Workspace\Space\SpaceManager;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http;
use OCP\AppFramework\Http\Attribute\NoAdminRequired;
use OCP\AppFramework\Http\Attribute\OpenAPI;
use OCP\AppFramework\Http\JSONResponse;
use OCP\IGroupManager;
Expand All @@ -40,12 +41,12 @@ public function __construct(
*
* Add a group connected to a workspace/groupfolder.
*
* @NoAdminRequired
* @SpaceAdminRequired
*
* @param int $spaceId
* @param string $gid
*/
#[NoAdminRequired]
public function addGroup(int $spaceId, string $gid): JSONResponse {

if (!$this->groupManager->groupExists($gid)) {
Expand Down Expand Up @@ -121,9 +122,9 @@ public function addGroup(int $spaceId, string $gid): JSONResponse {
/**
* Remove a group connected to a workspace/groupfolder.
*
* @NoAdminRequired
* @SpaceAdminRequired
*/
#[NoAdminRequired]
public function removeGroup(int $spaceId, string $gid) {
if (!$this->groupManager->groupExists($gid)) {
$message = sprintf('The group %s does not exist', $gid);
Expand Down
3 changes: 2 additions & 1 deletion lib/Controller/FileCSVController.php
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
use OCA\Workspace\Users\UsersExistCheck;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http;
use OCP\AppFramework\Http\Attribute\NoAdminRequired;
use OCP\AppFramework\Http\JSONResponse;
use OCP\Files\IRootFolder;
use OCP\IL10N;
Expand Down Expand Up @@ -282,11 +283,11 @@ public function import(?int $spaceId = null): JSONResponse {
}

/**
* @NoAdminRequired
* @SpaceAdminRequired
* Returns formatted list of existing users of the instance.
*
*/
#[NoAdminRequired]
public function getFromFiles(?int $spaceId = null):JSONResponse {
try {
$params = $this->request->getParams();
Expand Down
20 changes: 10 additions & 10 deletions lib/Controller/GroupController.php
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
use OCA\Workspace\Space\SpaceManager;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http;
use OCP\AppFramework\Http\Attribute\NoAdminRequired;
use OCP\AppFramework\Http\JSONResponse;
use OCP\Collaboration\Collaborators\ISearch;
use OCP\IGroupManager;
Expand Down Expand Up @@ -70,7 +71,6 @@ public function __construct(
}

/**
* @NoAdminRequired
* @SpaceAdminRequired
*
* Creates a group
Expand All @@ -83,6 +83,7 @@ public function __construct(
* @var string $spaceId for Middleware
*
*/
#[NoAdminRequired]
public function create(array $data = []): JSONResponse {

$data = array_merge(self::DEFAULT, $data);
Expand Down Expand Up @@ -113,7 +114,6 @@ public function create(array $data = []): JSONResponse {
}

/**
* @NoAdminRequired
* @SpaceAdminRequired
*
* Deletes a group
Expand All @@ -123,6 +123,7 @@ public function create(array $data = []): JSONResponse {
* @var int $spaceId
*
*/
#[NoAdminRequired]
public function delete(string $gid, int $spaceId): JSONResponse {
$gid = urldecode(urldecode($gid));

Expand All @@ -147,7 +148,6 @@ public function delete(string $gid, int $spaceId): JSONResponse {
}

/**
* @NoAdminRequired
* @SpaceAdminRequired
*
* Renames a group
Expand All @@ -158,6 +158,7 @@ public function delete(string $gid, int $spaceId): JSONResponse {
* @var int $spaceId
*
*/
#[NoAdminRequired]
public function rename(string $newGroupName,
string $gid,
int $spaceId): JSONResponse {
Expand Down Expand Up @@ -191,7 +192,6 @@ public function rename(string $newGroupName,
}

/**
* @NoAdminRequired
* @SpaceAdminRequired
* Adds a user to a group.
* The function automaticaly adds the user the the corresponding workspace's user group, and to the application
Expand All @@ -202,6 +202,7 @@ public function rename(string $newGroupName,
* @var string $user
*
*/
#[NoAdminRequired]
public function addUser(string $spaceId, string $gid, string $user): JSONResponse {
// Makes sure group exist
$NCGroup = $this->groupManager->get($gid);
Expand Down Expand Up @@ -241,14 +242,14 @@ public function addUser(string $spaceId, string $gid, string $user): JSONRespons
/**
* Remove a user from a workspace.
*
* @NoAdminRequired
* @SpaceAdminRequired
*
* @param array|string $space
* @param string $gid
* @param string $user
* @return JSONResponse
*/
#[NoAdminRequired]
public function removeUserFromWorkspace(
array|string $space,
string $gid,
Expand Down Expand Up @@ -298,7 +299,6 @@ public function removeUserFromWorkspace(
}

/**
* @NoAdminRequired
* @SpaceAdminRequired
*
* Removes a user from a group
Expand All @@ -310,6 +310,7 @@ public function removeUserFromWorkspace(
* @var string $user
*
*/
#[NoAdminRequired]
public function removeUser(
IRequest $request,
array|string $space,
Expand Down Expand Up @@ -385,9 +386,9 @@ public function removeUser(
}

/**
* @NoAdminRequired
* @SpaceAdminRequired
*/
#[NoAdminRequired]
public function attachGroupToSpace(int $spaceId, string $gid) {
$workspace = $this->spaceManager->get($spaceId);
$this->spaceManager->attachGroup($workspace['groupfolder_id'], $gid);
Expand All @@ -398,11 +399,11 @@ public function attachGroupToSpace(int $spaceId, string $gid) {
}

/**
* @NoAdminRequired
* @GeneralManagerRequired
* @param string|array $groupfolder
*
*/
#[NoAdminRequired]
public function transferUsersToGroups(string $spaceId,
string|array $groupfolder): JSONResponse {
if (gettype($groupfolder) === 'string') {
Expand Down Expand Up @@ -444,12 +445,11 @@ public function transferUsersToGroups(string $spaceId,
}

/**
* @NoAdminRequired
*
* @param string $pattern The pattern to search
* @param bool $ignoreSpaces (not require) Ignore the workspace groups
* @param array<string> $groupsPresents are groups already present
*/
#[NoAdminRequired]
public function search(string $pattern, ?bool $ignoreSpaces = null, array $groupsPresents = []): JSONResponse {

[$groups] = $this->collaboratorSearch->search(
Expand Down
7 changes: 4 additions & 3 deletions lib/Controller/PageController.php
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@
use OCA\Workspace\Exceptions\NotFoundException;
use OCA\Workspace\Service\UserService;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http\Attribute\NoAdminRequired;
use OCP\AppFramework\Http\Attribute\NoCSRFRequired;
use OCP\AppFramework\Http\TemplateResponse;
use OCP\IConfig;
use OCP\IUserSession;
Expand All @@ -44,10 +46,9 @@ public function __construct(

/**
* Application's main page
*
* @NoAdminRequired
* @NOCSRFRequired
*/
#[NoAdminRequired]
#[NoCSRFRequired]
public function index($path = ''): TemplateResponse {
if (strpos($path, 'api/v') === 0) {
// avoid non existing API routes to be handled by this controller
Expand Down
11 changes: 4 additions & 7 deletions lib/Controller/SpaceController.php
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
use OCA\Workspace\Db\SpaceMapper;
use OCA\Workspace\Service\SpaceService;
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http\Attribute\NoAdminRequired;
use OCP\AppFramework\Http\DataResponse;
use OCP\IRequest;

Expand All @@ -41,24 +42,20 @@ public function __construct(
parent::__construct($AppName, $request);
}

/**
* @NoAdminRequired
*/
#[NoAdminRequired]
public function find(int $id): DataResponse {
return new DataResponse($this->spaceService->find($id));
}

/**
* @NoAdminRequired
*/
#[NoAdminRequired]
public function findAll(): DataResponse {
return new DataResponse($this->spaceService->findAll());
}

/**
* @NoAdminRequired
* @SpaceAdminRequired
*/
#[NoAdminRequired]
public function updateColorCode(string $colorCode, int $spaceId): DataResponse {
return new DataResponse($this->spaceService->updateColorCode($colorCode, (int)$spaceId));
}
Expand Down
Loading
Loading