ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
class.ilAwarenessUserProviderMemberships.php
Go to the documentation of this file.
1<?php
2
3/* Copyright (c) 1998-2014 ILIAS open source, Extended GPL, see docs/LICENSE */
4
5include_once("./Services/Awareness/classes/class.ilAwarenessUserProvider.php");
6
15{
21 function getProviderId()
22 {
23 return "mmbr_user_grpcrs";
24 }
25
31 function getTitle()
32 {
33 $this->lng->loadLanguageModule("mmbr");
34 return $this->lng->txt("mmbr_awrn_my_groups_courses");
35 }
36
42 function getInfo()
43 {
44 $this->lng->loadLanguageModule("crs");
45 return $this->lng->txt("mmbr_awrn_my_groups_courses_info");
46 }
47
54 {
55 global $ilDB;
56
57 $awrn_logger = ilLoggerFactory::getLogger('awrn');
58
59 include_once("./Services/Membership/classes/class.ilParticipants.php");
60 $groups_and_courses_of_user = ilParticipants::_getMembershipByType($this->getUserId(), array("grp", "crs"));
61
62 $awrn_logger->debug("Courses and groups of user:'".$this->getUserId()."': ".implode(", ",$groups_and_courses_of_user));
63
64 $set = $ilDB->query($q = "SELECT DISTINCT usr_id FROM obj_members ".
65 " WHERE ".$ilDB->in("obj_id", $groups_and_courses_of_user, false, "integer"));
66
67 $awrn_logger->debug($q);
68
69 $ub = array();
70 while ($rec = $ilDB->fetchAssoc($set))
71 {
72 $ub[] = $rec["usr_id"];
73 }
74
75 $awrn_logger->debug("Got ".count($ub)." distinct members.");
76
77 return $ub;
78 }
79}
80?>
All members of the same courses/groups as the user.
getInfo()
Provider info (used in administration settings)
getTitle()
Provider title (used in awareness overlay and in administration settings)
A class that provides a collection of users for the awareness tool.
static getLogger($a_component_id)
Get component logger.
static _getMembershipByType($a_usr_id, $a_type, $a_only_member_role=false)
get membership by type Get course or group membership
global $ilDB