ILIAS  trunk Revision v12.0_alpha-377-g3641b37b9db
ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo Class Reference
+ Collaboration diagram for ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo:

Public Member Functions

 __construct ()
 
 isActivated (int $lm_id)
 
 activate (int $lm_id, bool $activated)
 
 saveReadingTime (int $lm_id, int $reading_time)
 
 getReadingTime (int $lm_id)
 
 loadData (array $lm_ids)
 

Protected Attributes

ilDBInterface $db
 

Static Protected Attributes

static array $times = []
 

Detailed Description

Author
Alexander Killing killi.nosp@m.ng@l.nosp@m.eifos.nosp@m..de

Definition at line 24 of file class.ReadingTimeDBRepo.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo::__construct ( )

Definition at line 29 of file class.ReadingTimeDBRepo.php.

30 {
31 global $DIC;
32 $this->db = $DIC->database();
33 }
global $DIC
Definition: shib_login.php:26

References $DIC.

Member Function Documentation

◆ activate()

ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo::activate ( int  $lm_id,
bool  $activated 
)

Definition at line 50 of file class.ReadingTimeDBRepo.php.

50 : void
51 {
52 $db = $this->db;
53 $db->update(
54 "content_object",
55 [
56 "act_est_reading_time" => ["integer", $activated]
57 ],
58 [ // where
59 "id" => ["integer", $lm_id]
60 ]
61 );
62 }
update(string $table_name, array $values, array $where)
@description $where MUST contain existing columns only.

References ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo\$db, and ilDBInterface\update().

+ Here is the call graph for this function:

◆ getReadingTime()

ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo::getReadingTime ( int  $lm_id)

Definition at line 78 of file class.ReadingTimeDBRepo.php.

78 : ?int
79 {
80 if (!isset(self::$times[$lm_id])) {
81 $this->loadData([$lm_id]);
82 }
83 return self::$times[$lm_id];
84 }

References ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo\loadData().

+ Here is the call graph for this function:

◆ isActivated()

ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo::isActivated ( int  $lm_id)

Definition at line 35 of file class.ReadingTimeDBRepo.php.

35 : bool
36 {
37 $db = $this->db;
38 $set = $db->queryF(
39 "SELECT act_est_reading_time FROM content_object " .
40 " WHERE id = %s ",
41 ["integer"],
42 [$lm_id]
43 );
44 if ($rec = $db->fetchAssoc($set)) {
45 return (bool) $rec["act_est_reading_time"];
46 }
47 return false;
48 }
fetchAssoc(ilDBStatement $statement)
queryF(string $query, array $types, array $values)

References ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo\$db, ilDBInterface\fetchAssoc(), and ilDBInterface\queryF().

+ Here is the call graph for this function:

◆ loadData()

ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo::loadData ( array  $lm_ids)

Definition at line 86 of file class.ReadingTimeDBRepo.php.

86 : void
87 {
88 $db = $this->db;
89 $set = $db->queryF(
90 "SELECT id, act_est_reading_time, est_reading_time FROM content_object " .
91 " WHERE " . $db->in("id", $lm_ids, false, "integer"),
92 [],
93 []
94 );
95 foreach ($lm_ids as $lm_id) {
96 self::$times[(int) $lm_id] = null;
97 }
98 while ($rec = $db->fetchAssoc($set)) {
99 if ($rec["act_est_reading_time"]) {
100 self::$times[(int) $rec["id"]] = (int) $rec["est_reading_time"];
101 }
102 }
103 }
in(string $field, array $values, bool $negate=false, string $type="")

References ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo\$db, ilDBInterface\fetchAssoc(), ilDBInterface\in(), ILIAS\Repository\int(), and ilDBInterface\queryF().

Referenced by ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo\getReadingTime().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ saveReadingTime()

ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo::saveReadingTime ( int  $lm_id,
int  $reading_time 
)

Definition at line 64 of file class.ReadingTimeDBRepo.php.

64 : void
65 {
66 $db = $this->db;
67 $db->update(
68 "content_object",
69 [
70 "est_reading_time" => ["integer", $reading_time]
71 ],
72 [ // where
73 "id" => ["integer", $lm_id]
74 ]
75 );
76 }

References ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo\$db, and ilDBInterface\update().

+ Here is the call graph for this function:

Field Documentation

◆ $db

◆ $times

array ILIAS\LearningModule\ReadingTime\ReadingTimeDBRepo::$times = []
staticprotected

Definition at line 27 of file class.ReadingTimeDBRepo.php.


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