Stuff
This commit is contained in:
parent
a0c7b92dae
commit
3c74cf586c
|
|
@ -122,7 +122,8 @@ class RegistrationService {
|
|||
IProvider $tokenProvider,
|
||||
ICrypto $crypto,
|
||||
IRequest $request,
|
||||
IDBConnection $connection
|
||||
IDBConnection $connection,
|
||||
AgencyManager $agencyManager
|
||||
) {
|
||||
$this->appName = $appName;
|
||||
$this->mailService = $mailService;
|
||||
|
|
@ -141,7 +142,7 @@ class RegistrationService {
|
|||
$this->tokenProvider = $tokenProvider;
|
||||
$this->crypto = $crypto;
|
||||
$this->connection = $connection;
|
||||
$this->agencyManager = new AgencyManager($connection);
|
||||
$this->agencyManager = $agencyManager;
|
||||
}
|
||||
|
||||
public function confirmEmail(Registration $registration): void {
|
||||
|
|
@ -341,6 +342,16 @@ class RegistrationService {
|
|||
return $allowedDomains;
|
||||
}
|
||||
|
||||
function generateRandomAgencyId($length = 6) {
|
||||
$characters = '0123456789';
|
||||
$charactersLength = strlen($characters);
|
||||
$randomString = '';
|
||||
for ($i = 0; $i < $length; $i++) {
|
||||
$randomString .= $characters[rand(0, $charactersLength - 1)];
|
||||
}
|
||||
return $randomString;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Registration $registration
|
||||
* @param string|null $loginName
|
||||
|
|
@ -443,37 +454,35 @@ class RegistrationService {
|
|||
/**
|
||||
* REGISTRIERUNG EINER NEUEN AGENTUR PASSIERT HIER
|
||||
*/
|
||||
$newgid = "agency_";
|
||||
$newgid_counter = 1;
|
||||
$newgid = "agencymaingroupid_".generateRandomAgencyId();
|
||||
$groupidfree = false;
|
||||
while($groupidfree == false){
|
||||
// Find the next free Agency-ID
|
||||
if($this->groupManager->groupExists($newgid.$newgid_counter) == true){
|
||||
$newgid_counter += 1;
|
||||
if($this->groupManager->groupExists($newgid) == true){
|
||||
$newgid = "agencymaingroupid_".generateRandomAgencyId();
|
||||
}
|
||||
else{
|
||||
$groupidfree = true;
|
||||
}
|
||||
}
|
||||
|
||||
$newgroup = $this->groupManager->createGroup($newgid.$newgid_counter);
|
||||
//Creating default groups
|
||||
$newgroup = $this->groupManager->createGroup($newgid);
|
||||
$newgroup = $this->groupManager->setDisplayName("Mitarbeiter");
|
||||
$newgroup->addUser($user);
|
||||
/**
|
||||
* TODO: Im Meeting einmal klären, was nun mit den Ordnern genau laufen soll und das dann HIER aktualisieren.
|
||||
*/
|
||||
|
||||
// Create two new Directorys for that agency
|
||||
$newgroup_admins = $this->groupManager->createGroup($newgid."_defaultadmingroup");
|
||||
$newgroup_admins = $this->groupManager->setDisplayName("Administratoren");
|
||||
$newgroup_admins->addUser($user);
|
||||
|
||||
// Create default Dirs
|
||||
$folderManager = new FolderManager($this->connection, $this->groupManager);
|
||||
|
||||
// Main-Dir for complete Agency
|
||||
$newFolderIdAG = $folderManager->createFolder('Agenturdaten');
|
||||
$folderManager->addApplicableGroup($newFolderIdAG, $newgroup->getGId());
|
||||
$folderManager->setGroupPermissions($newFolderIdAG, $newgroup->getGId(), '31');
|
||||
|
||||
// Upload-Standard-Directory
|
||||
$newFolderIdSt = $folderManager->createFolder('Standard Uploadbereich');
|
||||
$folderManager->addApplicableGroup($newFolderIdSt, $newgroup->getGId());
|
||||
$folderManager->setGroupPermissions($newFolderIdSt, $newgroup->getGId(), '31');
|
||||
|
||||
// Create new AGENCY-Object
|
||||
/**
|
||||
* Create a new Agency with data for fast loading other data
|
||||
|
|
|
|||
Loading…
Reference in New Issue