ILIAS  release_7 Revision v7.30-3-g800a261c036
ilUserProfilePromptDataGateway Class Reference

Profile prompt data gateway. More...

+ Collaboration diagram for ilUserProfilePromptDataGateway:

Public Member Functions

 __construct ()
 Constructor. More...
 
 saveSettings (ilProfilePromptSettings $settings)
 Save settings. More...
 
 getSettings ()
 Get settings. More...
 
 getUserPrompt ($user_id)
 Get user prompt data. More...
 
 saveLastUserPrompt (int $user_id, string $last_profile_prompt="")
 Save user prompt. More...
 

Protected Attributes

 $lng
 
 $user_settings
 
 $db
 

Detailed Description

Profile prompt data gateway.

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

Definition at line 11 of file class.ilUserProfilePromptDataGateway.php.

Constructor & Destructor Documentation

◆ __construct()

ilUserProfilePromptDataGateway::__construct ( )

Constructor.

Definition at line 31 of file class.ilUserProfilePromptDataGateway.php.

32 {
33 global $DIC;
34
35 $this->user_settings = new ilSetting("user");
36 $this->lng = $DIC->language();
37 $this->db = $DIC->database();
38 }
ILIAS Setting Class.
global $DIC
Definition: goto.php:24

References $DIC.

Member Function Documentation

◆ getSettings()

ilUserProfilePromptDataGateway::getSettings ( )

Get settings.

Returns
ilProfilePromptSettings

Definition at line 65 of file class.ilUserProfilePromptDataGateway.php.

66 {
69
70 $info_texts = $prompt_texts = [];
71 foreach ($lng->getInstalledLanguages() as $l) {
72 $info_texts[$l] = $user_settings->get("user_profile_info_" . $l);
73 $prompt_texts[$l] = $user_settings->get("user_profile_prompt_" . $l);
74 }
75
76 return new ilProfilePromptSettings(
77 (int) $user_settings->get("user_profile_prompt_mode"),
78 (int) $user_settings->get("user_profile_prompt_days"),
79 $info_texts,
80 $prompt_texts
81 );
82 }

References $lng, and $user_settings.

◆ getUserPrompt()

ilUserProfilePromptDataGateway::getUserPrompt (   $user_id)

Get user prompt data.

Parameters
$user_id
Returns
ilProfileUserPrompt

Definition at line 90 of file class.ilUserProfilePromptDataGateway.php.

91 {
92 $db = $this->db;
93
94 $set = $db->queryF(
95 "SELECT first_login, last_profile_prompt FROM usr_data " .
96 " WHERE usr_id = %s ",
97 array("integer"),
98 array($user_id)
99 );
100 if ($rec = $db->fetchAssoc($set)) {
101 return new ilProfileUserPrompt($user_id, $rec["last_profile_prompt"], $rec["first_login"]);
102 }
103 return new ilProfileUserPrompt($user_id, "", "");
104 }

References $db.

◆ saveLastUserPrompt()

ilUserProfilePromptDataGateway::saveLastUserPrompt ( int  $user_id,
string  $last_profile_prompt = "" 
)

Save user prompt.

Parameters
int$user_id
string$last_profile_prompt

Definition at line 112 of file class.ilUserProfilePromptDataGateway.php.

113 {
114 $db = $this->db;
115
116 if ($last_profile_prompt == "") {
117 $last_profile_prompt = ilUtil::now();
118 }
119
120 $db->update("usr_data", array(
121 "last_profile_prompt" => array("timestamp", $last_profile_prompt)
122 ), array( // where
123 "usr_id" => array("integer", $user_id)
124 ));
125 }
static now()
Return current timestamp in Y-m-d H:i:s format.

References $db, and ilUtil\now().

+ Here is the call graph for this function:

◆ saveSettings()

ilUserProfilePromptDataGateway::saveSettings ( ilProfilePromptSettings  $settings)

Save settings.

Parameters
ilProfilePromptSettings$settings

Definition at line 45 of file class.ilUserProfilePromptDataGateway.php.

46 {
48
49 foreach ($settings->getInfoTexts() as $l => $text) {
50 $user_settings->set("user_profile_info_" . $l, $text);
51 }
52 foreach ($settings->getPromptTexts() as $l => $text) {
53 $user_settings->set("user_profile_prompt_" . $l, $text);
54 }
55
56 $user_settings->set("user_profile_prompt_mode", (int) $settings->getMode());
57 $user_settings->set("user_profile_prompt_days", (int) $settings->getDays());
58 }

References $user_settings, ilProfilePromptSettings\getDays(), ilProfilePromptSettings\getInfoTexts(), ilProfilePromptSettings\getMode(), and ilProfilePromptSettings\getPromptTexts().

+ Here is the call graph for this function:

Field Documentation

◆ $db

ilUserProfilePromptDataGateway::$db
protected

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

Referenced by getUserPrompt(), and saveLastUserPrompt().

◆ $lng

ilUserProfilePromptDataGateway::$lng
protected

Definition at line 16 of file class.ilUserProfilePromptDataGateway.php.

Referenced by getSettings().

◆ $user_settings

ilUserProfilePromptDataGateway::$user_settings
protected

Definition at line 21 of file class.ilUserProfilePromptDataGateway.php.

Referenced by getSettings(), and saveSettings().


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