ILIAS  trunk Revision v11.0_alpha-2645-g16283d3b3f8
ILIAS\Exercise\Team\TeamManager Class Reference
+ Collaboration diagram for ILIAS\Exercise\Team\TeamManager:

Public Member Functions

 __construct (InternalRepoService $repo, InternalDomainService $domain, protected \ilExcTutorTeamFeedbackFileStakeholder $feedback_stakeholder)
 
 create (int $ass_id, int $first_user)
 
 getTeamForMember (int $ass_id, int $user_id)
 
 getMemberIds (int $team_id)
 
 getTeamMemberIdsOrUserId (int $ass_id, int $user_id)
 
 getStatusForTeam (int $team_id)
 
 getAssignmentForTeam (int $team_id)
 
 writeLog (int $team_id, int $action, string $content)
 
 deleteTeamsOfAssignment (int $ass_id)
 

Protected Member Functions

 getTeam (int $team_id)
 

Protected Attributes

TutorFeedbackFileTeamRepository $feedback_repo
 
TeamDBRepository $repo
 
InternalDomainService $domain
 

Detailed Description

Definition at line 28 of file TeamManager.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Exercise\Team\TeamManager::__construct ( InternalRepoService  $repo,
InternalDomainService  $domain,
protected \ilExcTutorTeamFeedbackFileStakeholder  $feedback_stakeholder 
)

Definition at line 34 of file TeamManager.php.

References ILIAS\Exercise\Team\TeamManager\$domain, ILIAS\Exercise\InternalRepoService\team(), and ILIAS\Exercise\InternalRepoService\tutorFeedbackFileTeam().

38  {
39  $this->repo = $repo->team();
40  $this->domain = $domain;
41  $this->feedback_repo = $repo->tutorFeedbackFileTeam();
42  }
InternalDomainService $domain
Definition: TeamManager.php:32
+ Here is the call graph for this function:

Member Function Documentation

◆ create()

ILIAS\Exercise\Team\TeamManager::create ( int  $ass_id,
int  $first_user 
)

Definition at line 44 of file TeamManager.php.

References $id.

47  : int {
48  $id = $this->repo->create();
49  $this->repo->addUser($id, $ass_id, $first_user);
50  $this->domain->assignment()->tutorFeedbackFile($ass_id)->createCollection($first_user);
51  return $id;
52  }
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23

◆ deleteTeamsOfAssignment()

ILIAS\Exercise\Team\TeamManager::deleteTeamsOfAssignment ( int  $ass_id)

Definition at line 110 of file TeamManager.php.

110  : void
111  {
112  foreach ($this->repo->getTeamIdsOfAssignment($ass_id) as $team_id) {
113  $this->repo->deleteTeamLog($team_id);
114  $this->feedback_repo->deleteTeamCollection(
115  $team_id,
116  $this->feedback_stakeholder
117  );
118  $this->repo->deleteTeam($team_id);
119  }
120  }

◆ getAssignmentForTeam()

ILIAS\Exercise\Team\TeamManager::getAssignmentForTeam ( int  $team_id)

Definition at line 88 of file TeamManager.php.

Referenced by ILIAS\Exercise\Team\TeamManager\getStatusForTeam().

88  : int
89  {
90  return $this->repo->getAssignmentForTeam($team_id);
91  }
+ Here is the caller graph for this function:

◆ getMemberIds()

ILIAS\Exercise\Team\TeamManager::getMemberIds ( int  $team_id)
Returns
int[]

Definition at line 62 of file TeamManager.php.

Referenced by ILIAS\Exercise\Team\TeamManager\getTeamMemberIdsOrUserId().

62  : array
63  {
64  return $this->repo->getMemberIds($team_id);
65  }
+ Here is the caller graph for this function:

◆ getStatusForTeam()

ILIAS\Exercise\Team\TeamManager::getStatusForTeam ( int  $team_id)

Definition at line 77 of file TeamManager.php.

References $ass_id, and ILIAS\Exercise\Team\TeamManager\getAssignmentForTeam().

77  : string
78  {
79  $members = iterator_to_array($this->repo->getMembers($team_id));
80  $ass_id = $this->getAssignmentForTeam($team_id);
81  $mem_status = new \ilExAssignmentMemberStatus(
82  $ass_id,
83  current($members)->getUserId()
84  );
85  return $mem_status->getStatus();
86  }
+ Here is the call graph for this function:

◆ getTeam()

ILIAS\Exercise\Team\TeamManager::getTeam ( int  $team_id)
protected

Definition at line 93 of file TeamManager.php.

Referenced by ILIAS\Exercise\Team\TeamManager\writeLog().

94  {
95  return new \ilExAssignmentTeam($team_id);
96  }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the caller graph for this function:

◆ getTeamForMember()

ILIAS\Exercise\Team\TeamManager::getTeamForMember ( int  $ass_id,
int  $user_id 
)

Definition at line 54 of file TeamManager.php.

Referenced by ILIAS\Exercise\Team\TeamManager\getTeamMemberIdsOrUserId().

54  : ?int
55  {
56  return $this->repo->getTeamForMember($ass_id, $user_id);
57  }
+ Here is the caller graph for this function:

◆ getTeamMemberIdsOrUserId()

ILIAS\Exercise\Team\TeamManager::getTeamMemberIdsOrUserId ( int  $ass_id,
int  $user_id 
)

Definition at line 67 of file TeamManager.php.

References $user_id, ILIAS\Exercise\Team\TeamManager\getMemberIds(), and ILIAS\Exercise\Team\TeamManager\getTeamForMember().

67  : array
68  {
69  $team_id = $this->getTeamForMember($ass_id, $user_id);
70  if (!is_null($team_id) && $team_id !== 0) {
71  return $this->getMemberIds(($team_id));
72  }
73  return [$user_id];
74  }
getTeamForMember(int $ass_id, int $user_id)
Definition: TeamManager.php:54
+ Here is the call graph for this function:

◆ writeLog()

ILIAS\Exercise\Team\TeamManager::writeLog ( int  $team_id,
int  $action,
string  $content 
)

Definition at line 98 of file TeamManager.php.

References ILIAS\Exercise\Team\TeamManager\getTeam().

102  : void {
103  $team = $this->getTeam($team_id);
104  $team->writeLog(
105  $action,
106  $content
107  );
108  }
+ Here is the call graph for this function:

Field Documentation

◆ $domain

InternalDomainService ILIAS\Exercise\Team\TeamManager::$domain
protected

Definition at line 32 of file TeamManager.php.

Referenced by ILIAS\Exercise\Team\TeamManager\__construct().

◆ $feedback_repo

TutorFeedbackFileTeamRepository ILIAS\Exercise\Team\TeamManager::$feedback_repo
protected

Definition at line 30 of file TeamManager.php.

◆ $repo

TeamDBRepository ILIAS\Exercise\Team\TeamManager::$repo
protected

Definition at line 31 of file TeamManager.php.


The documentation for this class was generated from the following file: