This class determines assignment member state information directly on the persistence layer.
More...
This class determines assignment member state information directly on the persistence layer.
Thus its procedures are fast but may not include/respect all higher application logic of the assignment state of members
- Author
- killi.nosp@m.ng@l.nosp@m.eifos.nosp@m..de
Definition at line 13 of file class.ilExcAssMemberStateRepository.php.
◆ __construct()
ilExcAssMemberStateRepository::__construct |
( |
\ilDBInterface |
$db = null | ) |
|
◆ getAssignmentIdsWithGradingNeeded()
ilExcAssMemberStateRepository::getAssignmentIdsWithGradingNeeded |
( |
array |
$exc_ids | ) |
|
Get assignments with open gradings.
- Parameters
-
int[] | $exc_ids exercises the user is "tutor" of |
- Returns
- int[]
Definition at line 67 of file class.ilExcAssMemberStateRepository.php.
72 'SELECT ass.id, COUNT(*) open_grading FROM exc_mem_ass_status st LEFT JOIN exc_assignment ass 73 ON (st.ass_id = ass.id) 74 WHERE ' . $db->in(
"ass.exc_id", $exc_ids,
false,
"integer") .
' 78 array(
"text",
"integer"),
82 while ($rec = $db->fetchAssoc($set)) {
83 $open_gradings[$rec[
"id"]] = $rec[
"open_grading"];
85 return $open_gradings;
◆ getAssignmentIdsWithPeerFeedbackNeeded()
ilExcAssMemberStateRepository::getAssignmentIdsWithPeerFeedbackNeeded |
( |
array |
$exc_ids, |
|
|
int |
$user_id |
|
) |
| |
Get all assignments for a user where the user may hand in submissions.
- Parameters
-
| int[] | $exc_ids exercises the user is "member" in |
int | $user_id | |
- Returns
- int[]
Definition at line 95 of file class.ilExcAssMemberStateRepository.php.
101 'SELECT ass.id, count(*) nr_given, ass.peer_dl, ass.peer_min, max(idl.tstamp) maxidl, max(peer.tstamp) maxpeer 102 FROM exc_assignment ass 103 LEFT JOIN exc_assignment_peer peer ON (ass.id = peer.ass_id) 104 LEFT JOIN exc_idl idl ON (ass.id = idl.ass_id) 105 WHERE ' . $db->in(
"ass.exc_id", $exc_ids,
false,
"integer") .
' 106 AND ass.deadline_mode = %s 107 AND ass.time_stamp < %s 108 AND (ass.deadline2 < %s OR ass.deadline2 IS NULL) 110 AND (peer.giver_id = %s) 111 AND (ass.peer_dl > %s OR ass.peer_dl IS NULL) 112 AND (peer.is_valid = %s) 114 HAVING (ass.peer_min > nr_given) AND (maxidl < %s OR maxidl IS NULL) 116 array(
"integer",
"integer",
"integer",
"integer",
"integer",
"integer",
"integer",
"integer"),
117 array(0, time(), time(), 1, $user_id, time(), 1, time())
120 while ($rec = $db->fetchAssoc($set)) {
126 'SELECT ass.id, count(*) nr_given, ass.peer_dl, ass.peer_min, max(idl.tstamp) maxidl, max(peer.tstamp) maxpeer 127 FROM exc_assignment ass 128 LEFT JOIN exc_assignment_peer peer ON (ass.id = peer.ass_id) 129 LEFT JOIN exc_idl idl ON (ass.id = idl.ass_id) 130 WHERE ' . $db->in(
"ass.exc_id", $exc_ids,
false,
"integer") .
' 131 AND ass.deadline_mode = %s 132 AND ass.time_stamp < %s 133 AND (ass.deadline2 < %s OR ass.deadline2 IS NULL) 135 AND (peer.giver_id IS NULL) 136 AND (ass.peer_dl > %s OR ass.peer_dl IS NULL) 137 AND (peer.tstamp IS NULL) 139 HAVING (maxpeer IS NULL) AND (maxidl < %s OR maxidl IS NULL) 141 array(
"integer",
"integer",
"integer",
"integer",
"integer",
"integer"),
142 array(0, time(), time(), 1, time(), time())
144 while ($rec = $db->fetchAssoc($set)) {
◆ getSubmitableAssignmentIdsOfUser()
ilExcAssMemberStateRepository::getSubmitableAssignmentIdsOfUser |
( |
array |
$exc_ids, |
|
|
int |
$user_id |
|
) |
| |
Get all assignments for a user where the user may hand in submissions.
- Parameters
-
| int[] | $exc_ids exercises the user is "member" in |
int | $user_id | |
- Returns
- int[]
Definition at line 36 of file class.ilExcAssMemberStateRepository.php.
40 'SELECT ass.id FROM exc_assignment ass LEFT JOIN exc_idl idl 41 ON (ass.id = idl.ass_id AND idl.member_id = %s) 42 WHERE ' . $db->in(
"ass.exc_id", $exc_ids,
false,
"integer") .
' 43 AND (( ass.deadline_mode = %s 44 AND (ass.start_time IS NULL OR ass.start_time < %s ) 45 AND (ass.time_stamp IS NULL OR ass.time_stamp > %s OR ass.deadline2 > %s OR idl.tstamp > %s)) 47 ass.deadline_mode = %s 48 AND (idl.starting_ts > 0) 49 AND (idl.starting_ts + (ass.relative_deadline * 24 * 60 * 60) > %s) 51 array(
"integer",
"integer",
"integer",
"integer",
"integer",
"integer",
"integer",
"integer"),
52 array($user_id, 0, time(), time(), time(), time(), 1, time())
55 while ($rec = $db->fetchAssoc($set)) {
The documentation for this class was generated from the following file: