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

Public Member Functions

 __construct ()
 
 isGloballyActivated ()
 
 isActivated (int $lm_id)
 
 activate (int $lm_id, bool $activate)
 Set activation. More...
 
 updateReadingTime (int $lm_id)
 Gets the calculated reading time from all pages of the LM and stores it (redundantly for quick access) in the learning module. More...
 
 loadData (array $lm_ids)
 
 getReadingTime (int $lm_id)
 

Protected Attributes

ILIAS COPage ReadingTime ReadingTimeManager $page_manager
 
ReadingTimeDBRepo $repo
 
ilSetting $lm_set
 

Detailed Description

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

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

Constructor & Destructor Documentation

◆ __construct()

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

Definition at line 30 of file class.ReadingTimeManager.php.

31 {
32 $this->lm_set = new \ilSetting("lm");
33 $this->repo = new ReadingTimeDBRepo();
34 $this->page_manager = new \ILIAS\COPage\ReadingTime\ReadingTimeManager();
35 }

Member Function Documentation

◆ activate()

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

Set activation.

If switched from off to on, ensure all missing page reading times are set.

Definition at line 51 of file class.ReadingTimeManager.php.

51 : void
52 {
53 $is_active = $this->repo->isActivated($lm_id);
54 $this->repo->activate($lm_id, $activate);
55 if (!$is_active && $activate) {
56 $this->page_manager->setMissingReadingTimes("lm", $lm_id);
57 $this->updateReadingTime($lm_id);
58 }
59 }
updateReadingTime(int $lm_id)
Gets the calculated reading time from all pages of the LM and stores it (redundantly for quick access...

References ILIAS\LearningModule\ReadingTime\ReadingTimeManager\updateReadingTime().

+ Here is the call graph for this function:

◆ getReadingTime()

ILIAS\LearningModule\ReadingTime\ReadingTimeManager::getReadingTime ( int  $lm_id)
Returns
int|null Null, if reading time is deactivated

Definition at line 80 of file class.ReadingTimeManager.php.

80 : ?int
81 {
82 return $this->repo->getReadingTime($lm_id);
83 }

◆ isActivated()

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

Definition at line 42 of file class.ReadingTimeManager.php.

42 : bool
43 {
44 return $this->repo->isActivated($lm_id);
45 }

◆ isGloballyActivated()

ILIAS\LearningModule\ReadingTime\ReadingTimeManager::isGloballyActivated ( )

Definition at line 37 of file class.ReadingTimeManager.php.

37 : bool
38 {
39 return (bool) $this->lm_set->get("est_reading_time");
40 }

◆ loadData()

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

Definition at line 72 of file class.ReadingTimeManager.php.

72 : void
73 {
74 $this->repo->loadData($lm_ids);
75 }

◆ updateReadingTime()

ILIAS\LearningModule\ReadingTime\ReadingTimeManager::updateReadingTime ( int  $lm_id)

Gets the calculated reading time from all pages of the LM and stores it (redundantly for quick access) in the learning module.

Definition at line 66 of file class.ReadingTimeManager.php.

66 : void
67 {
68 $reading_time = $this->page_manager->getParentReadingTime("lm", $lm_id);
69 $this->repo->saveReadingTime($lm_id, $reading_time);
70 }

Referenced by ILIAS\LearningModule\ReadingTime\ReadingTimeManager\activate().

+ Here is the caller graph for this function:

Field Documentation

◆ $lm_set

ilSetting ILIAS\LearningModule\ReadingTime\ReadingTimeManager::$lm_set
protected

Definition at line 28 of file class.ReadingTimeManager.php.

◆ $page_manager

ILIAS COPage ReadingTime ReadingTimeManager ILIAS\LearningModule\ReadingTime\ReadingTimeManager::$page_manager
protected

Definition at line 26 of file class.ReadingTimeManager.php.

◆ $repo

ReadingTimeDBRepo ILIAS\LearningModule\ReadingTime\ReadingTimeManager::$repo
protected

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


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