19declare(strict_types=1);
25 protected \ilDBInterface
$db;
38 foreach ($a_ids as
$id) {
43 if ((
$id[1] ??
"") ==
"") {
46 $pos2 = strpos($full_id,
"/", strpos($full_id,
"/") + 1);
47 if ($pos2 ===
false) {
50 $id2 = substr($full_id, $pos2 + 1);
52 $id2 = explode(
"#", ($id2 ??
""));
53 if (($id2[0] ??
"") ==
"") {
56 if (($id2[1] ??
"") ==
"") {
60 $pos = strpos($full_id,
"#");
62 $full_id = substr($full_id, 0, $pos);
66 array(
"chap" => array(
"integer", $a_chap),
67 "perm" => array(
"text", $id2[1]),
68 "full_id" => array(
"text", trim($full_id)),
69 "module_id" => array(
"integer", 0)
81 string $a_screen_sub_id,
88 array(
"chap" => array(
"integer", $a_chap),
89 "perm" => array(
"text", $a_perm),
90 "module_id" => array(
"integer", $a_module_id),
91 "full_id" => array(
"text", $full_id)
101 $this->db->manipulate(
102 "DELETE FROM help_map WHERE " .
103 " chap = " . $this->db->quote($a_chap,
"integer") .
104 " AND module_id = " . $this->db->quote($a_module_id,
"integer")
112 $set = $this->db->query(
113 "SELECT * FROM help_map " .
114 " WHERE chap = " . $this->db->quote($a_chap,
"integer") .
115 " AND module_id = " . $this->db->quote($a_module_id,
"integer") .
118 $screen_ids = array();
119 while ($rec = $this->db->fetchAssoc($set)) {
120 $id = $rec[
"full_id"];
121 if ($rec[
"perm"] !=
"" && $rec[
"perm"] !=
"-") {
122 $id .=
"#" . $rec[
"perm"];
134 foreach ($module_ids as $module_id) {
135 $set = $this->db->query(
137 "SELECT chap, perm FROM help_map JOIN lm_tree" .
138 " ON (help_map.chap = lm_tree.child) " .
139 " WHERE full_id = " . $this->db->quote($a_screen_id,
"text") .
140 " AND module_id = " . $this->db->quote($module_id,
"integer") .
141 " ORDER BY lm_tree.lft"
143 while ($rec = $this->db->fetchAssoc($set)) {
152 $this->db->manipulate(
"DELETE FROM help_map WHERE " .
153 " module_id = " . $this->db->quote($a_id,
"integer"));
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins
getScreenIdsOfChapter(int $a_chap, int $a_module_id=0)
removeScreenIdsOfChapter(int $a_chap, int $a_module_id=0)
saveMappingEntry(int $a_chap, string $a_comp, string $a_screen_id, string $a_screen_sub_id, string $a_perm, int $a_module_id=0, string $full_id="")
getChaptersForScreenId(string $a_screen_id, array $module_ids)
saveScreenIdsForChapter(int $a_chap, array $a_ids)
__construct(\ilDBInterface $db)
deleteEntriesOfModule(int $a_id)