62 lines
2.0 KiB
PHP
62 lines
2.0 KiB
PHP
<?php
|
|
declare(strict_types=1);
|
|
|
|
namespace OCA\Agency\Controller;
|
|
use OCP\AppFramework\OCSController;
|
|
use OCP\IRequest;
|
|
use OCP\AppFramework\Http\DataResponse;
|
|
|
|
use OCP\IDBConnection;
|
|
use OCP\IUserSession;
|
|
use OCP\IGroupManager;
|
|
use OCP\IUserManager;
|
|
use OCP\IGroup;
|
|
|
|
use OCA\GroupFolders\Folder\FolderManager;
|
|
|
|
class PublicController extends OCSController {
|
|
|
|
protected $userSession;
|
|
protected $request;
|
|
protected $connection;
|
|
protected $groupManager;
|
|
protected $userManager;
|
|
|
|
public function __construct(string $AppName, IRequest $request, IUserSession $userSession,IDBConnection $connection, IGroupManager $groupManager, IUserManager $userManager){
|
|
parent::__construct($AppName, $request);
|
|
$this->userSession = $userSession;
|
|
$this->request = $request;
|
|
$this->connection = $connection;
|
|
$this->groupManager = $groupManager;
|
|
$this->userManager = $userManager;
|
|
}
|
|
|
|
|
|
/**
|
|
*
|
|
* @NoCSRFRequired
|
|
*/
|
|
public function createGroupFolder(string $gid, string $aid): DataResponse{
|
|
$folderManager = new FolderManager($this->connection, $this->groupManager);
|
|
$newFolderIdAG = $folderManager->createFolder('Agenturdaten_'.$aid);
|
|
## Hinzufügen der Mitarbeitergruppe der entsprechenden Agentur
|
|
$folderManager->addApplicableGroup($newFolderIdAG, $gid);
|
|
$folderManager->setGroupPermissions($newFolderIdAG, $gid, '31');
|
|
## Hinzufügen der Admingruppe, damit die weitere Dateien und Ordneraktionen bei der #Migration klappen
|
|
$folderManager->addApplicableGroup($newFolderIdAG, "admin");
|
|
$folderManager->setGroupPermissions($newFolderIdAG, "admin", '31');
|
|
return new DataResponse(array("status" => $aid));
|
|
}
|
|
|
|
/**
|
|
*
|
|
* @NoCSRFRequired
|
|
*/
|
|
public function renameAgencyGroup(string $name, string $id): DataResponse{
|
|
$this->groupManager->get($id)->setDisplayName($name);
|
|
return new DataResponse(array("data" => $name." ".$id));
|
|
}
|
|
|
|
|
|
}
|