ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ILIAS\Blog\Settings\SettingsDBRepository Class Reference
+ Collaboration diagram for ILIAS\Blog\Settings\SettingsDBRepository:

Public Member Functions

 __construct (protected ilDBInterface $db, protected InternalDataService $data)
 
 create (Settings $setting)
 
 update (Settings $setting)
 
 getByObjId (int $id)
 
 saveOrder (int $id, array $order)
 

Protected Member Functions

 getSettingsFromRecord (array $rec)
 

Detailed Description

Definition at line 26 of file SettingsDBRepository.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Blog\Settings\SettingsDBRepository::__construct ( protected ilDBInterface  $db,
protected InternalDataService  $data 
)

Definition at line 28 of file SettingsDBRepository.php.

31 {
32 }

Member Function Documentation

◆ create()

ILIAS\Blog\Settings\SettingsDBRepository::create ( Settings  $setting)

Definition at line 62 of file SettingsDBRepository.php.

62 : void
63 {
64 $this->db->insert("il_blog", [
65 "id" => ["integer", $setting->getId()],
66 "ppic" => ["integer", $setting->getProfilePicture()],
67 "bg_color" => ["text", $setting->getBackgroundColor()],
68 "font_color" => ["text", $setting->getFontColor()],
69 "rss_active" => ["integer", $setting->getRSS()],
70 "approval" => ["integer", $setting->getApproval()],
71 "abs_shorten" => ["integer", $setting->getAbstractShorten()],
72 "abs_shorten_len" => ["integer", $setting->getAbstractShortenLength()],
73 "abs_image" => ["integer", $setting->getAbstractImage()],
74 "abs_img_width" => ["integer", $setting->getAbstractImageWidth()],
75 "abs_img_height" => ["integer", $setting->getAbstractImageHeight()],
76 "keywords" => ["integer", $setting->getKeywords()],
77 "authors" => ["integer", $setting->getAuthors()],
78 "nav_mode" => ["integer", $setting->getNavMode()],
79 "nav_list_mon_with_post" => ["integer", $setting->getNavModeListMonthsWithPostings()],
80 "nav_list_mon" => ["integer", $setting->getNavModeListMonths()],
81 "ov_post" => ["integer", $setting->getOverviewPostings()],
82 "nav_order" => ["text", implode(';', $setting->getOrder())]
83 ]);
84 }
ilSetting $setting
Definition: class.ilias.php:68

References ILIAS\$setting.

◆ getByObjId()

ILIAS\Blog\Settings\SettingsDBRepository::getByObjId ( int  $id)

Definition at line 111 of file SettingsDBRepository.php.

111 : ?Settings
112 {
113 $set = $this->db->queryF(
114 "SELECT * FROM il_blog WHERE id = %s",
115 ["integer"],
116 [$id]
117 );
118
119 $rec = $this->db->fetchAssoc($set);
120 if ($rec !== false) {
121 return $this->getSettingsFromRecord($rec);
122 }
123 return null;
124 }
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
Definition: plugin.php:23

References $id, and ILIAS\Blog\Settings\SettingsDBRepository\getSettingsFromRecord().

+ Here is the call graph for this function:

◆ getSettingsFromRecord()

ILIAS\Blog\Settings\SettingsDBRepository::getSettingsFromRecord ( array  $rec)
protected

Definition at line 34 of file SettingsDBRepository.php.

34 : Settings
35 {
36 $order = explode(';', $rec['nav_order'] ?? "");
37 if (count($order) === 1 && current($order) === "") {
38 $order = [];
39 }
40 return $this->data->settings(
41 (int) $rec['id'],
42 (bool) $rec['ppic'],
43 (string) $rec['bg_color'],
44 (string) $rec['font_color'],
45 (bool) $rec['rss_active'],
46 (bool) $rec['approval'],
47 (bool) $rec['abs_shorten'],
48 (int) $rec['abs_shorten_len'],
49 (bool) $rec['abs_image'],
50 (int) $rec['abs_img_width'],
51 (int) $rec['abs_img_height'],
52 (bool) $rec['keywords'],
53 (bool) $rec['authors'],
54 (int) $rec['nav_mode'],
55 (int) $rec['nav_list_mon_with_post'],
56 (int) $rec['nav_list_mon'],
57 (int) $rec['ov_post'],
58 $order
59 );
60 }

Referenced by ILIAS\Blog\Settings\SettingsDBRepository\getByObjId().

+ Here is the caller graph for this function:

◆ saveOrder()

ILIAS\Blog\Settings\SettingsDBRepository::saveOrder ( int  $id,
array  $order 
)

Definition at line 126 of file SettingsDBRepository.php.

126 : void
127 {
128 $this->db->update(
129 "il_blog",
130 [
131 "nav_order" => ["", implode(';', $order)]
132 ],
133 [
134 "id" => ["integer", $id]
135 ]
136 );
137 }

References $id.

◆ update()

ILIAS\Blog\Settings\SettingsDBRepository::update ( Settings  $setting)

Definition at line 86 of file SettingsDBRepository.php.

86 : void
87 {
88 $this->db->update("il_blog", [
89 "ppic" => ["integer", $setting->getProfilePicture()],
90 "bg_color" => ["text", $setting->getBackgroundColor()],
91 "font_color" => ["text", $setting->getFontColor()],
92 "rss_active" => ["integer", $setting->getRSS()],
93 "approval" => ["integer", $setting->getApproval()],
94 "abs_shorten" => ["integer", $setting->getAbstractShorten()],
95 "abs_shorten_len" => ["integer", $setting->getAbstractShortenLength()],
96 "abs_image" => ["integer", $setting->getAbstractImage()],
97 "abs_img_width" => ["integer", $setting->getAbstractImageWidth()],
98 "abs_img_height" => ["integer", $setting->getAbstractImageHeight()],
99 "keywords" => ["integer", $setting->getKeywords()],
100 "authors" => ["integer", $setting->getAuthors()],
101 "nav_mode" => ["integer", $setting->getNavMode()],
102 "nav_list_mon_with_post" => ["integer", $setting->getNavModeListMonthsWithPostings()],
103 "nav_list_mon" => ["integer", $setting->getNavModeListMonths()],
104 "ov_post" => ["integer", $setting->getOverviewPostings()],
105 "nav_order" => ["text", implode(';', $setting->getOrder())]
106 ], [
107 "id" => ["integer", $setting->getId() ?? 0]
108 ]);
109 }

References ILIAS\$setting.


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