userSession = $userSession; $this->request = $request; $this->connection = $connection; $this->groupManager = $groupManager; $this->userManager = $userManager; } // Return an random Id-Ele for generating single IDs public function generateRandomPassword($length = 50) { $characters = '_=()?!-ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; $charactersLength = strlen($characters); $randomString = ''; for ($i = 0; $i < $length; $i++) { $randomString .= $characters[rand(0, $charactersLength - 1)]; } return $randomString; } /** * @NoCSRFRequired * @NoAdminRequired */ public function startMigration(string $agencyid, string $mainurl) { $json = file_get_contents($mainurl.$agencyid); // Hier werden die Nutzer erstellt, anhand eines JSON-Arrays von der API (migrateAgency) $ag_data = json_decode($json, true); $feedbackstring = "Erstelle Nutzer: "; foreach($ag_data as $ele){ $feedbackstring .= $ele['displayname'].", "; if($this->userManager->userExists($ele['userid']) == false){ $tempuser = $this->userManager->createUser($ele['userid'], $this->generateRandomPassword()); $tempuser->setEmailAddress($ele['userid']); $tempuser->setDisplayName($ele['displayname']); } } return $feedbackstring; } /** * @PublicPage * @NoCSRFRequired * @NoAdminRequired */ public function getcurrentuser(){ #return $this->userSession->getUser()->getUID(); return $this->userSession->getSession(); } /** * Method change the GroupName - ADMIN NEED! * * @PublicPage * @NoCSRFRequired */ public function renameGroup(string $id, string $name){ $this->groupManager->get($id)->setDisplayName($name); return 'OK!'; } }