ILIAS  release_8 Revision v8.23
ilHelpDataSet Class Reference

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V. More...

+ Inheritance diagram for ilHelpDataSet:
+ Collaboration diagram for ilHelpDataSet:

Public Member Functions

 getSupportedVersions ()
 
 readData (string $a_entity, string $a_version, array $a_ids)
 
 importRecord (string $a_entity, array $a_types, array $a_rec, ilImportMapping $a_mapping, string $a_schema_version)
 
- Public Member Functions inherited from ilDataSet
 __construct ()
 
 init (string $a_entity, string $a_schema_version)
 Init. More...
 
 getSupportedVersions ()
 
 readData (string $a_entity, string $a_version, array $a_ids)
 Read data from DB. More...
 
 setExportDirectories (string $a_relative, string $a_absolute)
 
 setImportDirectory (string $a_val)
 
 getImportDirectory ()
 
 setDSPrefix (string $a_val)
 
 getDSPrefix ()
 
 getDSPrefixString ()
 
 getDirectDataFromQuery (string $a_query, bool $a_convert_to_leading_upper=true, bool $a_set=true)
 Get data from query.This is a standard procedure, all db field names are directly mapped to abstract fields. More...
 
 convertToLeadingUpper (string $a_str)
 Make xyz_abc a XyzAbc string. More...
 
 getXmlRepresentation (string $a_entity, string $a_schema_version, ?array $a_ids, string $a_field="", bool $a_omit_header=false, bool $a_omit_types=false)
 Get xml representation <dataset install_id="123" install_url="..."> <types entity="table_name" version="4.0.1"> <ftype name="field_1" type="text"> <ftype name="field_2" type="date"> <ftype name="field_3" type="integer"> </types> <types ...> ... More...
 
 addRecordsXml (ilXmlWriter $a_writer, array $a_prefixes, string $a_entity, string $a_schema_version, array $a_ids, ?string $a_field="")
 
 afterXmlRecordWriting (string $a_entity, string $a_version, array $a_set)
 
 getNamespaces (array &$namespaces, string $a_entity, string $a_schema_version)
 
 getXmlRecord (string $a_entity, string $a_version, array $a_set)
 Get xml record for version. More...
 
 getXmlTypes (string $a_entity, string $a_version)
 Get xml types. More...
 
 getXMLEntityName (string $a_entity, string $a_version)
 Get entity name for xml (may be overwritten) More...
 
 getXMLEntityTag (string $a_entity, string $a_schema_version)
 Get entity tag. More...
 
 setImport (ilSurveyImporter $a_val)
 
 getImport ()
 
 setCurrentInstallationId (string $a_val)
 
 getCurrentInstallationId ()
 
 importRecord (string $a_entity, array $a_types, array $a_rec, ilImportMapping $a_mapping, string $a_schema_version)
 Needs to be overwritten for import use case. More...
 

Protected Member Functions

 getXmlNamespace (string $a_entity, string $a_schema_version)
 
 getTypes (string $a_entity, string $a_version)
 
- Protected Member Functions inherited from ilDataSet
 getTypes (string $a_entity, string $a_version)
 Get (abstract) types for (abstract) field names. More...
 
 getXmlNamespace (string $a_entity, string $a_schema_version)
 
 getDependencies (string $a_entity, string $a_version, ?array $a_rec=null, ?array $a_ids=null)
 
 createObjectExportId (string $a_type, string $a_id)
 Build ilias export id. More...
 
 parseObjectExportId (string $a_id, ?string $a_fallback_id=null)
 Parse export id. More...
 
 stripTags (array $rec, array $omit_keys=[])
 

Additional Inherited Members

- Data Fields inherited from ilDataSet
const EXPORT_NO_INST_ID = 1
 
const EXPORT_ID_ILIAS_LOCAL = 2
 
const EXPORT_ID_ILIAS_LOCAL_INVALID = 3
 
const EXPORT_ID_ILIAS_REMOTE = 4
 
const EXPORT_ID_ILIAS_REMOTE_INVALID = 5
 
const EXPORT_ID = 6
 
const EXPORT_ID_INVALID = 7
 
int $dircnt = 0
 
- Protected Attributes inherited from ilDataSet
string $current_installation_id = ""
 
array $data = []
 
ilDBInterface $db
 
ilLogger $ds_log
 
string $import_directory = ""
 
string $entity = ""
 
string $schema_version = ""
 
string $relative_export_dir = ""
 
string $absolute_export_dir = ""
 
string $ds_prefix = "ds"
 
string $version = ""
 
ilSurveyImporter $import
 

Detailed Description

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.

ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.

If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning Help system data set class

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

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

Member Function Documentation

◆ getSupportedVersions()

ilHelpDataSet::getSupportedVersions ( )

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

26  : array
27  {
28  return array("4.3.0");
29  }

◆ getTypes()

ilHelpDataSet::getTypes ( string  $a_entity,
string  $a_version 
)
protected

Definition at line 36 of file class.ilHelpDataSet.php.

36  : array
37  {
38  if ($a_entity === "help_map") {
39  switch ($a_version) {
40  case "4.3.0":
41  return array(
42  "Chap" => "integer",
43  "Component" => "text",
44  "ScreenId" => "text",
45  "ScreenSubId" => "text",
46  "Perm" => "text"
47  );
48  }
49  }
50 
51  if ($a_entity === "help_tooltip") {
52  switch ($a_version) {
53  case "4.3.0":
54  return array(
55  "Id" => "integer",
56  "TtText" => "text",
57  "TtId" => "text",
58  "Comp" => "text",
59  "Lang" => "text"
60  );
61  }
62  }
63  return [];
64  }

◆ getXmlNamespace()

ilHelpDataSet::getXmlNamespace ( string  $a_entity,
string  $a_schema_version 
)
protected

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

31  : string
32  {
33  return "https://www.ilias.de/xml/Services/Help/" . $a_entity;
34  }

◆ importRecord()

ilHelpDataSet::importRecord ( string  $a_entity,
array  $a_types,
array  $a_rec,
ilImportMapping  $a_mapping,
string  $a_schema_version 
)

Definition at line 91 of file class.ilHelpDataSet.php.

References ilHelp\addTooltip(), ilImportMapping\getAllMappings(), ilImportMapping\getMapping(), ilHelpMapping\saveMappingEntry(), and ilDataSet\stripTags().

97  : void {
98  $a_rec = $this->stripTags($a_rec);
99  switch ($a_entity) {
100  case "help_map":
101 
102  // without module ID we do nothing
103  $module_id = $a_mapping->getMapping('Services/Help', 'help_module', 0);
104  $t = $a_mapping->getAllMappings();
105  if ($module_id) {
106  $new_chap = $a_mapping->getMapping(
107  'Services/Help',
108  'help_chap',
109  $a_rec["Chap"]
110  );
111 
112  // new import (5.1): get chapter from learning module import mapping
113  if ((int) $new_chap === 0) {
114  $new_chap = $a_mapping->getMapping(
115  'Modules/LearningModule',
116  'lm_tree',
117  $a_rec["Chap"]
118  );
119  }
120 
121  if ($new_chap > 0) {
123  $new_chap,
124  $a_rec["Component"],
125  $a_rec["ScreenId"],
126  $a_rec["ScreenSubId"],
127  $a_rec["Perm"],
128  $module_id
129  );
130  }
131  }
132  break;
133 
134  case "help_tooltip":
135 
136  // without module ID we do nothing
137  $module_id = $a_mapping->getMapping('Services/Help', 'help_module', 0);
138  if ($module_id) {
139  ilHelp::addTooltip($a_rec["TtId"], $a_rec["TtText"], $module_id);
140  }
141  break;
142  }
143  }
static saveMappingEntry(int $a_chap, string $a_comp, string $a_screen_id, string $a_screen_sub_id, string $a_perm, int $a_module_id=0)
getMapping(string $a_comp, string $a_entity, string $a_old_id)
static addTooltip(string $a_tt_id, string $a_text, int $a_module_id=0)
stripTags(array $rec, array $omit_keys=[])
+ Here is the call graph for this function:

◆ readData()

ilHelpDataSet::readData ( string  $a_entity,
string  $a_version,
array  $a_ids 
)

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

References ilDataSet\$db, $ilDB, and ilDataSet\getDirectDataFromQuery().

66  : void
67  {
68  $ilDB = $this->db;
69 
70  if ($a_entity === "help_map") {
71  switch ($a_version) {
72  case "4.3.0":
73  $this->getDirectDataFromQuery("SELECT chap, component, screen_id, screen_sub_id, perm " .
74  " FROM help_map " .
75  "WHERE " .
76  $ilDB->in("chap", $a_ids, false, "integer"));
77  break;
78  }
79  }
80 
81  if ($a_entity === "help_tooltip") {
82  switch ($a_version) {
83  case "4.3.0":
84  $this->getDirectDataFromQuery("SELECT id, tt_text, tt_id, comp, lang FROM help_tooltip " .
85  " WHERE module_id = " . $ilDB->quote(0, "integer"));
86  break;
87  }
88  }
89  }
ilDBInterface $db
getDirectDataFromQuery(string $a_query, bool $a_convert_to_leading_upper=true, bool $a_set=true)
Get data from query.This is a standard procedure, all db field names are directly mapped to abstract ...
+ Here is the call graph for this function:

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