diff --git a/appinfo/routes.php b/appinfo/routes.php index 9ef7ab0..30da1de 100644 --- a/appinfo/routes.php +++ b/appinfo/routes.php @@ -1,5 +1,11 @@ [ + // Apps + ['name' => 'public#publicresponse', 'url' => '/api/v1/creategf', 'verb' => 'POST'], + ], //'resources' => [ // 'agency' => ['url' => '/agencys'], //], @@ -28,8 +34,6 @@ return [ ['name' => 'migrate#startMigration', 'url' => '/startmigration', 'verb' => 'PUT'], ['name' => 'migrate#getcurrentuser', 'url' => '/getcurrentuser', 'verb' => 'POST'], ['name' => 'migrate#renameGroup', 'url' => '/regr', 'verb' => 'POST'], - ['name' => 'migrate#createAGGroupFolder', 'url' => '/createagf', 'verb' => 'GET'], - - + //['name' => 'migrate#createAGGroupFolder', 'url' => '/createagf', 'verb' => 'GET'], ] ]; diff --git a/lib/AppInfo/Application.php b/lib/AppInfo/Application.php index 3bc0c1f..da68bda 100644 --- a/lib/AppInfo/Application.php +++ b/lib/AppInfo/Application.php @@ -28,19 +28,20 @@ class Application extends App { # ADding the Event, that User has Changed - update the logged User by Django. Works only by personal informations of the User! $dispatcher->addServiceListener(UserChangedEvent::class, UserChangedByNC::class); + # Checking, if a user logged in in Django and which user is logged in in Django. $dispatcher->addServiceListener(BeforeTemplateRenderedEvent::class, LoginByNC::class); } } /* - CHANGED USER IN DJANGO BY NC + User logged in, save Session-ID and login the User in Django */ class LoginByNC extends Controller { protected $session; protected $request; - private $nclink = 'https://test.app.digitale-agentur.com'; - //private $nclink = 'http://host.docker.internal:8000'; + //private $nclink = 'https://test.app.digitale-agentur.com'; + private $nclink = 'http://host.docker.internal:8000'; public function __construct(string $AppName, IRequest $request, IUserSession $session) { $this->request = $request; @@ -90,8 +91,8 @@ class UserChangedByNC extends Controller { protected $session; protected $request; - private $nclink = 'https://test.app.digitale-agentur.com'; - //private $nclink = 'http://host.docker.internal:8000'; + //private $nclink = 'https://test.app.digitale-agentur.com'; + private $nclink = 'http://host.docker.internal:8000'; public function __construct(string $AppName, IRequest $request, IUserSession $session) { $this->request = $request; @@ -123,8 +124,8 @@ class UserChangedByNC extends Controller { class LogoutByNC extends Controller { protected $session; - private $nclink = 'https://test.app.digitale-agentur.com'; - //private $nclink = 'http://host.docker.internal:8000'; + //private $nclink = 'https://test.app.digitale-agentur.com'; + private $nclink = 'http://host.docker.internal:8000'; public function __construct(string $AppName, IRequest $request, IUserSession $session) { parent::__construct($AppName, $request); diff --git a/lib/Controller/AgencyController.php b/lib/Controller/AgencyController.php index b02b6d0..6733b2b 100644 --- a/lib/Controller/AgencyController.php +++ b/lib/Controller/AgencyController.php @@ -143,15 +143,13 @@ class AgencyController extends Controller { $this->groupManager->get($groupid)->delete(); //return "OK!"; } - - /** - * @PublicPage - * @NoCSRFRequired - * @NoAdminRequired - * - */ + /** + * @NoAdminRequired + * @NoCSRFRequired + * @CORS + */ public function getlogdata(){ - echo "THIS IS AWESOME"; + refickdichscheissnextclouidturn "NIX!"; } diff --git a/lib/Controller/MigrateController.php b/lib/Controller/MigrateController.php index 76c1732..35616cd 100644 --- a/lib/Controller/MigrateController.php +++ b/lib/Controller/MigrateController.php @@ -1,6 +1,4 @@ userSession->getUser()->getUID(); - return $this->userSession->getSession(); + return $this->userSession->getUser()->getUID(); } /** * Method change the GroupName - ADMIN NEED! @@ -91,31 +88,27 @@ class MigrateController extends Controller { } /** - * @PublicPage - * @NoCSRFRequired - * - * @param: - * $id - id of a group - * $aid - agencyid - * $sk - security-key - * @return DataResponse - */ - public function createAGGroupFolder(string $gid, string $aid, string $sk){ - return array('test' => 'hi'); - #if($sk == "lkjahstaszd76uhjNJABHM65rftzvb323ADSD567tzu9ztz"){ - # echo "groupfolder created"; - #$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'); - #echo "groupfolder created"; - #} - #else{ - # echo "FAILED"; + * @NoAdminRequired + */ + public function createAGGroupFolder(string $gid, string $aid){ + //if($sk == "lkjahstaszd76uhjNJABHM65rftzvb323ADSD567tzu9ztz"){ + #$folderManager = new FolderManager($this->connection, $this->groupManager); + #$newFolderIdAG = $folderManager->createFolderss('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 JSONResponse([ + 'status' => 'error', + 'data' => [ + 'message' => 'Folder not found' + ], + ]); + // } + //else{ + // return var_dump("FAIL GF CREATING"); #} } } diff --git a/lib/Controller/PublicController.php b/lib/Controller/PublicController.php new file mode 100644 index 0000000..581b04f --- /dev/null +++ b/lib/Controller/PublicController.php @@ -0,0 +1,50 @@ +userSession = $userSession; + $this->request = $request; + $this->connection = $connection; + $this->groupManager = $groupManager; + $this->userManager = $userManager; + } + + + /** + * @NoAdminRequired + * @NoCSRFRequired + */ + public function publicresponse(string $gid, string $aid): DataResponse{ + $folderManager = new FolderManager($this->connection, $this->groupManager); + #$newFolderIdAG = $folderManager->createFolderss('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)); + } +}