public function createMultipleTeams(Workspace $workspace, User $user, $name, $nbTeams, $description, $maxUsers, $isPublic, $selfRegistration, $selfUnregistration, ResourceNode $resource = null, array $creatableResources = array()) { $this->om->startFlushSuite(); $teams = array(); $nodes = array(); $index = 1; for ($i = 0; $i < $nbTeams; ++$i) { $team = new Team(); $validName = $this->computeValidTeamName($workspace, $name, $index); $team->setName($validName['name']); $index = $validName['index'] + 1; $team->setWorkspace($workspace); $team->setDescription($description); $team->setMaxUsers($maxUsers); $team->setIsPublic($isPublic); $team->setSelfRegistration($selfRegistration); $team->setSelfUnregistration($selfUnregistration); $this->createTeam($team, $workspace, $user, $resource, $creatableResources); $node = $team->getDirectory()->getResourceNode(); $node->setIndex(1); $this->om->persist($node); $teams[] = $team; $nodes[] = $node; } $this->linkResourceNodesArray($workspace, $nodes); $this->om->forceFlush(); foreach ($teams as $team) { $this->initializeTeamRights($team); // $this->initializeTeamDirectoryPerms($team); } $this->om->endFlushSuite(); }
/** * @EXT\Route( * "/workspace/{workspace}/team/create/form", * name="claro_team_create_form" * ) * @EXT\ParamConverter("user", options={"authenticatedUser" = true}) * @EXT\Template() * * @return \Symfony\Component\HttpFoundation\Response */ public function teamCreateFormAction(Workspace $workspace, User $user) { $this->checkWorkspaceManager($workspace, $user); $params = $this->teamManager->getParametersByWorkspace($workspace); $team = new Team(); $team->setIsPublic($params->getIsPublic()); $team->setSelfRegistration($params->getSelfRegistration()); $team->setSelfUnregistration($params->getSelfUnregistration()); $form = $this->formFactory->create(new TeamType(), $team); return ['form' => $form->createView(), 'workspace' => $workspace]; }