ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
class.ilIndividualAssessmentLPInterface.php
Go to the documentation of this file.
1<?php
2
3require_once 'Services/Tracking/classes/class.ilLPStatusWrapper.php';
4require_once 'Modules/IndividualAssessment/classes/Members/class.ilIndividualAssessmentMembersStorageDB.php';
6 protected static $members_storage = null;
7
8 public static function updateLPStatusOfMember(ilIndividualAssessmentMember $member) {
9 ilLPStatusWrapper::_refreshStatus($member->assessmentId(), array($member->id()));
10 }
11
12
13 public static function updateLPStatusByIds($iass_id, array $usr_ids) {
14 ilLPStatusWrapper::_refreshStatus($iass_id, $usr_ids);
15 }
16
17 public static function determineStatusOfMember($iass_id, $usr_id) {
18 if(self::$members_storage === null) {
19 self::$members_storage = self::getMembersStorage();
20 }
21 $iass = new ilObjIndividualAssessment($iass_id,false);
22 $members = $iass->loadMembers($iass);
23 $usr = new ilObjUser($usr_id);
24 if($members->userAllreadyMember($usr)) {
25 $member = self::$members_storage->loadMember($iass ,$usr);
26 if($member->finalized()) {
27 return $member->LPStatus();
30 }
31 }
33 }
34
35 protected static function getMembersStorage() {
36 global $DIC;
38 }
39
40 public static function getMembersHavingStatusIn($iass_id, $status) {
41 if(self::$members_storage === null) {
42 self::$members_storage = self::getMembersStorage();
43 }
44 $members = self::$members_storage->loadMembers(new ilObjIndividualAssessment($iass_id,false));
45 $return = array();
46 foreach($members as $usr_id => $record) {
47 if((string)self::determineStatusOfMember($iass_id,$usr_id) === (string)$status) {
48 $return[] = $usr_id;
49 }
50 }
51 return $return;
52 }
53
54 public static function isActiveLP($a_object_id) {
55 require_once 'Modules/IndividualAssessment/classes/class.ilIndividualAssessmentLP.php';
56 return ilIndividualAssessmentLP::getInstance($a_object_id)->isActive();
57 }
58}
An exception for terminatinating execution or to throw for unit testing.
static updateLPStatusOfMember(ilIndividualAssessmentMember $member)
Edit the record of a user, set LP.
assessmentId()
Get the ilObjIndividualAssessment id corresponding to this membership.
id()
Get the user id corresponding to this membership.
static _refreshStatus($a_obj_id, $a_users=null)
Set dirty.
const LP_STATUS_IN_PROGRESS_NUM
const LP_STATUS_NOT_ATTEMPTED_NUM
For the purpose of streamlining the grading and learning-process status definition outside of tests,...
static getInstance($a_obj_id)
global $DIC