ILIAS  trunk Revision v13.0_alpha-62-g3b72d83f2e5
ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval Class Reference
+ Inheritance diagram for ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval:
+ Collaboration diagram for ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval:

Public Member Functions

 __construct (protected InternalDomainService $domain, protected \ilExAssignment $assignment)
 
 getData (array $fields, ?Range $range=null, ?Order $order=null, array $filter=[], array $parameters=[])
 
 count (array $filter=[], array $parameters=[])
 
 isFieldNumeric (string $field)
 
 getPanelInfo ()
 
 getData (array $fields, ?Range $range=null, ?Order $order=null, array $filter=[], array $parameters=[])
 
 count (array $filter, array $parameters)
 
 isFieldNumeric (string $field)
 

Protected Member Functions

 collectData ()
 
 addPanelInfo (array $peer_review_data, string $user_ids_key, string $title_key)
 
 translateUserIds (array $user_ids)
 

Protected Attributes

array $data = null
 
array $panel_info = []
 

Detailed Description

Definition at line 29 of file PeerReviewOverviewRetrieval.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval::__construct ( protected InternalDomainService  $domain,
protected \ilExAssignment  $assignment 
)

Definition at line 36 of file PeerReviewOverviewRetrieval.php.

39 {
40 }

Member Function Documentation

◆ addPanelInfo()

ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval::addPanelInfo ( array  $peer_review_data,
string  $user_ids_key,
string  $title_key 
)
protected

Definition at line 134 of file PeerReviewOverviewRetrieval.php.

138 : void {
139 if (!$peer_review_data[$user_ids_key]) {
140 return;
141 }
142
143 $this->panel_info[] = [
144 'title' => $this->domain->lng()->txt($title_key),
145 'value' => $this->translateUserIds($peer_review_data[$user_ids_key])
146 ];
147 }

◆ collectData()

ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval::collectData ( )
protected

Definition at line 77 of file PeerReviewOverviewRetrieval.php.

77 : array
78 {
79 if ($this->data !== null) {
80 return $this->data;
81 }
82
83 $this->data = [];
84 $this->panel_info = [];
85
86 $peer_review = $this->domain->peerReview()->exPeerReview($this->assignment);
87 if ($peer_review === null) {
88 return $this->data;
89 }
90
91 $peer_review_data = $peer_review->validatePeerReviewGroups();
92 if (!is_array($peer_review_data)) {
93 return $this->data;
94 }
95
96 $id = 0;
97 foreach ($peer_review_data['reviews'] as $peer_id => $reviews) {
98 $peer = current($this->translateUserIds([$peer_id]));
99
100 foreach ($reviews as $giver_id => $status) {
101 $this->data[] = [
102 'id' => ++$id,
103 'recipient' => $peer,
104 'giver' => current($this->translateUserIds([$giver_id])),
105 'status' => $status ? $this->domain->lng()->txt('valid') : ''
106 ];
107 }
108 }
109
110 $this->addPanelInfo(
111 $peer_review_data,
112 'missing_user_ids',
113 'exc_peer_review_missing_users'
114 );
115 $this->addPanelInfo(
116 $peer_review_data,
117 'not_returned_ids',
118 'exc_peer_review_not_returned_users'
119 );
120 $this->addPanelInfo(
121 $peer_review_data,
122 'invalid_peer_ids',
123 'exc_peer_review_invalid_peer_ids'
124 );
125 $this->addPanelInfo(
126 $peer_review_data,
127 'invalid_giver_ids',
128 'exc_peer_review_invalid_giver_ids'
129 );
130
131 return $this->data;
132 }
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23
addPanelInfo(array $peer_review_data, string $user_ids_key, string $title_key)

References $data, and $id.

◆ count()

ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval::count ( array  $filter = [],
array  $parameters = [] 
)

◆ getData()

ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval::getData ( array  $fields,
?Range  $range = null,
?Order  $order = null,
array  $filter = [],
array  $parameters = [] 
)

Implements ILIAS\Repository\RetrievalInterface.

Definition at line 42 of file PeerReviewOverviewRetrieval.php.

48 : \Generator {
49 $data = $this->collectData();
50 $data = $this->applyOrder($data, $order);
51 $data = $this->applyRange($data, $range);
52
53 foreach ($data as $row) {
54 yield $row;
55 }
56 }

◆ getPanelInfo()

ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval::getPanelInfo ( )

Definition at line 70 of file PeerReviewOverviewRetrieval.php.

◆ isFieldNumeric()

ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval::isFieldNumeric ( string  $field)

Implements ILIAS\Repository\RetrievalInterface.

Definition at line 65 of file PeerReviewOverviewRetrieval.php.

65 : bool
66 {
67 return $field === 'id';
68 }

◆ translateUserIds()

ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval::translateUserIds ( array  $user_ids)
protected

Definition at line 149 of file PeerReviewOverviewRetrieval.php.

149 : array
150 {
151 $result = [];
152
153 foreach (array_unique($user_ids) as $user_id) {
155 }
156
157 return $result;
158 }
static getNamePresentation( $a_user_id, bool $a_user_image=false, bool $a_profile_link=false, string $a_profile_back_link='', bool $a_force_first_lastname=false, bool $a_omit_login=false, bool $a_sortable=true, bool $a_return_data_array=false, $a_ctrl_path=null)
Default behaviour is:

References $user_id, and ilUserUtil\getNamePresentation().

+ Here is the call graph for this function:

Field Documentation

◆ $data

array ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval::$data = null
protected

Definition at line 33 of file PeerReviewOverviewRetrieval.php.

◆ $panel_info

array ILIAS\Exercise\PeerReview\PeerReviewOverviewRetrieval::$panel_info = []
protected

Definition at line 34 of file PeerReviewOverviewRetrieval.php.


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