This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.
More...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.
ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.
If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning Class ilBadgeAssignment
- Author
- Jörg Lützenkirchen luetz.nosp@m.enki.nosp@m.rchen.nosp@m.@lei.nosp@m.fos.c.nosp@m.om
Definition at line 24 of file class.ilBadgeAssignment.php.
◆ __construct()
| ilBadgeAssignment::__construct |
( |
int |
$a_badge_id = null, |
|
|
int |
$a_user_id = null |
|
) |
| |
◆ clearBadgeCache()
| static ilBadgeAssignment::clearBadgeCache |
( |
int |
$a_user_id | ) |
|
|
static |
◆ delete()
| ilBadgeAssignment::delete |
( |
| ) |
|
Definition at line 320 of file class.ilBadgeAssignment.php.
320 : void
321 {
323
326 return;
327 }
328
330
331 $ilDB->manipulate(
"DELETE FROM badge_user_badge" .
332 " WHERE badge_id = " .
$ilDB->quote($this->getBadgeId(),
"integer") .
333 " AND user_id = " .
$ilDB->quote($this->getUserId(),
"integer"));
334 }
References $ilDB.
◆ deleteByBadgeId()
| static ilBadgeAssignment::deleteByBadgeId |
( |
int |
$a_badge_id | ) |
|
|
static |
◆ deleteByParentId()
| static ilBadgeAssignment::deleteByParentId |
( |
int |
$a_parent_obj_id | ) |
|
|
static |
Definition at line 350 of file class.ilBadgeAssignment.php.
350 : void
351 {
352 foreach (self::getInstancesByParentId($a_parent_obj_id) as $ass) {
353 $ass->delete();
354 }
355 }
◆ deleteByUserId()
| static ilBadgeAssignment::deleteByUserId |
( |
int |
$a_user_id | ) |
|
|
static |
◆ deleteStaticFiles()
| ilBadgeAssignment::deleteStaticFiles |
( |
| ) |
|
◆ exists()
| static ilBadgeAssignment::exists |
( |
int |
$a_badge_id, |
|
|
int |
$a_user_id |
|
) |
| |
|
static |
◆ getAssignedUsers()
| static ilBadgeAssignment::getAssignedUsers |
( |
int |
$a_badge_id | ) |
|
|
static |
◆ getAwardedBy()
| ilBadgeAssignment::getAwardedBy |
( |
| ) |
|
◆ getBadgeId()
| ilBadgeAssignment::getBadgeId |
( |
| ) |
|
◆ getBadgesForUser()
| static ilBadgeAssignment::getBadgesForUser |
( |
int |
$a_user_id, |
|
|
int |
$a_ts_from, |
|
|
int |
$a_ts_to |
|
) |
| |
|
static |
- Parameters
-
| int | $a_user_id | |
| int | $a_ts_from | |
| int | $a_ts_to | |
- Returns
- array[]
Definition at line 385 of file class.ilBadgeAssignment.php.
389 : array {
391
393
395 "SELECT bdg.parent_id, ub.tstamp, bdg.title FROM badge_user_badge ub JOIN badge_badge bdg" .
396 " ON (ub.badge_id = bdg.id) " .
397 " WHERE ub.user_id = %s AND ub.tstamp >= %s AND ub.tstamp <= %s",
398 array("integer","integer","integer"),
399 array($a_user_id, $a_ts_from, $a_ts_to)
400 );
404 }
406 }
fetchAssoc(ilDBStatement $statement)
queryF(string $query, array $types, array $values)
References $res.
Referenced by ilBadgeLearningHistoryProvider\getEntries().
◆ getInstancesByBadgeId()
| static ilBadgeAssignment::getInstancesByBadgeId |
( |
int |
$a_badge_id | ) |
|
|
static |
◆ getInstancesByParentId()
| static ilBadgeAssignment::getInstancesByParentId |
( |
int |
$a_parent_obj_id | ) |
|
|
static |
- Parameters
-
- Returns
- self[]
Definition at line 151 of file class.ilBadgeAssignment.php.
153 : array {
155
157
159
160 $badge_ids = array();
162 $badge_ids[] = $badge->getId();
163 }
164 if (count($badge_ids)) {
165 $set =
$ilDB->query(
"SELECT * FROM badge_user_badge" .
166 " WHERE " .
$ilDB->in(
"badge_id", $badge_ids,
"",
"integer"));
167 while ($row =
$ilDB->fetchAssoc($set)) {
168 $obj = new self();
169 $obj->importDBRow($row);
171 }
172 }
173
175 }
static getInstancesByParentId(int $a_parent_id, array $a_filter=null)
◆ getInstancesByUserId()
| static ilBadgeAssignment::getInstancesByUserId |
( |
int |
$a_user_id | ) |
|
|
static |
◆ getLatestTimestamp()
| static ilBadgeAssignment::getLatestTimestamp |
( |
int |
$a_user_id | ) |
|
|
static |
Definition at line 81 of file class.ilBadgeAssignment.php.
83 : int {
85
87
89 "SELECT max(tstamp) maxts FROM badge_user_badge " .
90 " WHERE user_id = %s",
91 ["integer"],
92 [$a_user_id]
93 );
95 return (int) $rec["maxts"];
96 }
◆ getNewCounter()
| static ilBadgeAssignment::getNewCounter |
( |
int |
$a_user_id | ) |
|
|
static |
Definition at line 50 of file class.ilBadgeAssignment.php.
52 : int {
54
56
58 $noti_repo = new \ILIAS\Badge\Notification\BadgeNotificationPrefRepository($user);
59
60 $last = $noti_repo->getLastCheckedTimestamp();
61
62
63
64 if ($last === 0) {
65 $last = time() - (24 * 60 * 60);
66 }
67
68 if ($last > 0) {
70 "SELECT count(*) cnt FROM badge_user_badge " .
71 " WHERE user_id = %s AND tstamp >= %s",
72 ["integer", "integer"],
73 [$a_user_id, $last]
74 );
76 return (int) $rec["cnt"];
77 }
78 return 0;
79 }
◆ getPosition()
| ilBadgeAssignment::getPosition |
( |
| ) |
|
◆ getPropertiesForStorage()
| ilBadgeAssignment::getPropertiesForStorage |
( |
| ) |
|
|
protected |
◆ getTimestamp()
| ilBadgeAssignment::getTimestamp |
( |
| ) |
|
◆ getUserId()
| ilBadgeAssignment::getUserId |
( |
| ) |
|
◆ importDBRow()
| ilBadgeAssignment::importDBRow |
( |
array |
$a_row | ) |
|
|
protected |
Definition at line 261 of file class.ilBadgeAssignment.php.
261 : void
262 {
263 $this->stored = true;
265 $this->
setUserId((
int) $a_row[
"user_id"]);
269 }
setTimestamp(int $a_value)
setPosition(?int $a_value)
◆ read()
| ilBadgeAssignment::read |
( |
int |
$a_badge_id, |
|
|
int |
$a_user_id |
|
) |
| |
|
protected |
Definition at line 271 of file class.ilBadgeAssignment.php.
274 : void {
276
277 $set =
$ilDB->query(
"SELECT * FROM badge_user_badge" .
278 " WHERE badge_id = " .
$ilDB->quote($a_badge_id,
"integer") .
279 " AND user_id = " .
$ilDB->quote($a_user_id,
"integer"));
280 $row =
$ilDB->fetchAssoc($set);
281 if ($row && $row["user_id"]) {
283 }
284 }
importDBRow(array $a_row)
Referenced by __construct().
◆ setAwardedBy()
| ilBadgeAssignment::setAwardedBy |
( |
int |
$a_id | ) |
|
◆ setBadgeId()
| ilBadgeAssignment::setBadgeId |
( |
int |
$a_value | ) |
|
|
protected |
◆ setPosition()
| ilBadgeAssignment::setPosition |
( |
?int |
$a_value | ) |
|
◆ setTimestamp()
| ilBadgeAssignment::setTimestamp |
( |
int |
$a_value | ) |
|
|
protected |
◆ setUserId()
| ilBadgeAssignment::setUserId |
( |
int |
$a_value | ) |
|
|
protected |
◆ store()
| ilBadgeAssignment::store |
( |
| ) |
|
Definition at line 298 of file class.ilBadgeAssignment.php.
298 : void
299 {
301
304 return;
305 }
306
308 "badge_id" => array(
"integer", $this->
getBadgeId()),
309 "user_id" => array(
"integer", $this->
getUserId())
310 );
312
313 if (!$this->stored) {
314 $ilDB->insert(
"badge_user_badge", $fields +
$keys);
315 } else {
316 $ilDB->update(
"badge_user_badge", $fields,
$keys);
317 }
318 }
getPropertiesForStorage()
References $ilDB, and $keys.
◆ updatePositions()
| static ilBadgeAssignment::updatePositions |
( |
int |
$a_user_id, |
|
|
array |
$a_positions |
|
) |
| |
|
static |
Definition at line 357 of file class.ilBadgeAssignment.php.
360 : void {
361 $existing = array();
362 foreach (self::getInstancesByUserId($a_user_id) as $ass) {
363 $badge =
new ilBadge($ass->getBadgeId());
364 $existing[$badge->getId()] = array($badge->getTitle(), $ass);
365 }
366
367 $new_pos = 0;
368 foreach ($a_positions as $title) {
369 foreach ($existing as
$id => $item) {
370 if ($title == $item[0]) {
371 $item[1]->setPosition(++$new_pos);
372 $item[1]->store();
373 unset($existing[
$id]);
374 }
375 }
376 }
377 }
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Referenced by ilPersonalProfileGUI\savePublicProfile().
◆ $awarded_by
| int ilBadgeAssignment::$awarded_by = 0 |
|
protected |
◆ $badge_id
| int ilBadgeAssignment::$badge_id = 0 |
|
protected |
◆ $db
◆ $pos
| int ilBadgeAssignment::$pos = null |
|
protected |
◆ $stored
| bool ilBadgeAssignment::$stored = false |
|
protected |
◆ $tstamp
| int ilBadgeAssignment::$tstamp = 0 |
|
protected |
◆ $user_id
| int ilBadgeAssignment::$user_id = 0 |
|
protected |
The documentation for this class was generated from the following file: