ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
ilMDIdentifier Class Reference
+ Inheritance diagram for ilMDIdentifier:
+ Collaboration diagram for ilMDIdentifier:

Public Member Functions

 setCatalog ($a_catalog)
 
 getCatalog ()
 
 setEntry ($a_entry)
 
 getEntry ()
 
 save ()
 
 update ()
 
 delete ()
 
 __getFields ()
 
 read ()
 
 toXML (&$writer, $a_overwrite_id=false)
 
 setCatalog ($a_catalog)
 
 getCatalog ()
 
 setEntry ($a_entry)
 
 getEntry ()
 
 save ()
 
 update ()
 
 delete ()
 
 __getFields ()
 
 read ()
 
 toXML (&$writer)
 
 _getIds ($a_rbac_id, $a_obj_id, $a_parent_id, $a_parent_type)
 
- Public Member Functions inherited from ilMDBase
 __construct ( $a_rbac_id=0, $a_obj_id=0, $a_type=0)
 
 setRBACId ($a_id)
 
 getRBACId ()
 
 setObjId ($a_id)
 
 getObjId ()
 
 setObjType ($a_type)
 
 getObjType ()
 
 setMetaId ($a_meta_id, $a_read_data=true)
 
 getMetaId ()
 
 setParentType ($a_parent_type)
 
 getParentType ()
 
 setParentId ($a_id)
 
 getParentId ()
 
 setExportMode ($a_export_mode=true)
 
 getExportMode ()
 
 validate ()
 
 update ()
 
 save ()
 
 delete ()
 
 toXML (&$writer)
 
 __construct ( $a_rbac_id=0, $a_obj_id=0, $a_type=0)
 
 setRBACId ($a_id)
 
 getRBACId ()
 
 setObjId ($a_id)
 
 getObjId ()
 
 setObjType ($a_type)
 
 getObjType ()
 
 setMetaId ($a_meta_id, $a_read_data=true)
 
 getMetaId ()
 
 setParentType ($a_parent_type)
 
 getParentType ()
 
 setParentId ($a_id)
 
 getParentId ()
 
 validate ()
 
 update ()
 
 save ()
 
 delete ()
 
 toXML (&$writer)
 

Static Public Member Functions

static _getIds ($a_rbac_id, $a_obj_id, $a_parent_id, $a_parent_type)
 
static _getEntriesForObj ($a_rbac_id, $a_obj_id, $a_obj_type)
 Get IDs for an object. More...
 
static _getEntriesForRbacObj ($a_rbac_id, $a_obj_type="")
 Get IDs for an rbac object. More...
 
static existsIdInRbacObject ($a_rbac_id, $a_obj_type, $a_catalog, $a_entry)
 Does id entry exist in rbac object? More...
 
static readIdData ($a_rbac_id, $a_obj_type, $a_catalog, $a_entry)
 Does id entry exist in rbac object? More...
 

Additional Inherited Members

- Data Fields inherited from ilMDBase
 $rbac_id
 
 $obj_id
 
 $obj_type
 
 $export_mode = false
 
- Protected Attributes inherited from ilMDBase
 $log
 

Detailed Description

Definition at line 32 of file class.ilMDIdentifier.php.

Member Function Documentation

◆ __getFields() [1/2]

ilMDIdentifier::__getFields ( )

Definition at line 98 of file class.ilMDIdentifier.php.

References array, getCatalog(), getEntry(), ilMDBase\getObjId(), ilMDBase\getObjType(), ilMDBase\getParentId(), ilMDBase\getParentType(), and ilMDBase\getRBACId().

Referenced by save().

99  {
100  return array('rbac_id' => array('integer',$this->getRBACId()),
101  'obj_id' => array('integer',$this->getObjId()),
102  'obj_type' => array('text',$this->getObjType()),
103  'parent_type' => array('text',$this->getParentType()),
104  'parent_id' => array('integer',$this->getParentId()),
105  'catalog' => array('text',$this->getCatalog()),
106  'entry' => array('text',$this->getEntry()));
107  }
Create styles array
The data for the language used.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __getFields() [2/2]

ilMDIdentifier::__getFields ( )

Definition at line 101 of file class.ilMDIdentifier.php.

References array, getCatalog(), getEntry(), ilMDBase\getObjId(), ilMDBase\getObjType(), ilMDBase\getParentId(), ilMDBase\getParentType(), ilMDBase\getRBACId(), and ilUtil\prepareDBString().

102  {
103  return array('rbac_id' => $this->getRBACId(),
104  'obj_id' => $this->getObjId(),
105  'obj_type' => ilUtil::prepareDBString($this->getObjType()),
106  'parent_type' => $this->getParentType(),
107  'parent_id' => $this->getParentId(),
108  'catalog' => ilUtil::prepareDBString($this->getCatalog()),
109  'entry' => ilUtil::prepareDBString($this->getEntry()));
110  }
Create styles array
The data for the language used.
static prepareDBString($a_str)
prepare a string for db writing (insert/update)
+ Here is the call graph for this function:

◆ _getEntriesForObj()

static ilMDIdentifier::_getEntriesForObj (   $a_rbac_id,
  $a_obj_id,
  $a_obj_type 
)
static

Get IDs for an object.

Parameters

Definition at line 183 of file class.ilMDIdentifier.php.

References $ilDB, $query, $r, $res, and array.

Referenced by ilLMObject\getExportId(), and ilLMObject\saveExportId().

184  {
185  global $ilDB;
186 
187  $query = "SELECT meta_identifier_id, catalog, entry FROM il_meta_identifier " .
188  "WHERE rbac_id = " . $ilDB->quote($a_rbac_id, 'integer') . " " .
189  "AND obj_id = " . $ilDB->quote($a_obj_id, 'integer') . " " .
190  "AND obj_type = " . $ilDB->quote($a_obj_type, 'text');
191 
192  $res = $ilDB->query($query);
193  $entries = array();
194  while ($r = $ilDB->fetchAssoc($res)) {
195  $entries[$r["meta_identifier_id"]] =
196  array("catalog" => $r["catalog"],
197  "entry" => $r["entry"]);
198  }
199  return $entries;
200  }
$r
Definition: example_031.php:79
foreach($_POST as $key=> $value) $res
$query
Create styles array
The data for the language used.
global $ilDB
+ Here is the caller graph for this function:

◆ _getEntriesForRbacObj()

static ilMDIdentifier::_getEntriesForRbacObj (   $a_rbac_id,
  $a_obj_type = "" 
)
static

Get IDs for an rbac object.

Parameters

Definition at line 208 of file class.ilMDIdentifier.php.

References $ilDB, $query, $r, $res, and array.

Referenced by ilLMObject\getDuplicateExportIDs().

209  {
210  global $ilDB;
211 
212  $query = "SELECT meta_identifier_id, catalog, entry, obj_id FROM il_meta_identifier " .
213  "WHERE rbac_id = " . $ilDB->quote($a_rbac_id, 'integer');
214 
215  if ($a_obj_type != "") {
216  $query.=
217  " AND obj_type = " . $ilDB->quote($a_obj_type, 'text');
218  }
219 
220  $res = $ilDB->query($query);
221  $entries = array();
222  while ($r = $ilDB->fetchAssoc($res)) {
223  $entries[$r["meta_identifier_id"]] =
224  array("catalog" => $r["catalog"],
225  "entry" => $r["entry"],
226  "obj_id" => $r["obj_id"]);
227  }
228  return $entries;
229  }
$r
Definition: example_031.php:79
foreach($_POST as $key=> $value) $res
$query
Create styles array
The data for the language used.
global $ilDB
+ Here is the caller graph for this function:

◆ _getIds() [1/2]

ilMDIdentifier::_getIds (   $a_rbac_id,
  $a_obj_id,
  $a_parent_id,
  $a_parent_type 
)

Definition at line 147 of file class.ilMDIdentifier.php.

References $ilDB, $query, $res, $row, array, and ilDBConstants\FETCHMODE_OBJECT.

148  {
149  global $ilDB;
150 
151  $query = "SELECT meta_identifier_id FROM il_meta_identifier " .
152  "WHERE rbac_id = " . $ilDB->quote($a_rbac_id) . " " .
153  "AND obj_id = " . $ilDB->quote($a_obj_id) . " " .
154  "AND parent_id = " . $ilDB->quote($a_parent_id) . " " .
155  "AND parent_type = " . $ilDB->quote($a_parent_type);
156 
157 
158  $res = $ilDB->query($query);
159  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
160  $ids[] = $row->meta_identifier_id;
161  }
162  return $ids ? $ids : array();
163  }
foreach($_POST as $key=> $value) $res
$query
Create styles array
The data for the language used.
global $ilDB

◆ _getIds() [2/2]

static ilMDIdentifier::_getIds (   $a_rbac_id,
  $a_obj_id,
  $a_parent_id,
  $a_parent_type 
)
static

Definition at line 160 of file class.ilMDIdentifier.php.

References $ilDB, $query, $res, $row, array, and ilDBConstants\FETCHMODE_OBJECT.

Referenced by ilMDMetaMetadata\getIdentifierIds(), and ilMDGeneral\getIdentifierIds().

161  {
162  global $ilDB;
163 
164  $query = "SELECT meta_identifier_id FROM il_meta_identifier " .
165  "WHERE rbac_id = " . $ilDB->quote($a_rbac_id, 'integer') . " " .
166  "AND obj_id = " . $ilDB->quote($a_obj_id, 'integer') . " " .
167  "AND parent_id = " . $ilDB->quote($a_parent_id, 'integer') . " " .
168  "AND parent_type = " . $ilDB->quote($a_parent_type, 'text');
169 
170  $res = $ilDB->query($query);
171  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
172  $ids[] = $row->meta_identifier_id;
173  }
174  return $ids ? $ids : array();
175  }
foreach($_POST as $key=> $value) $res
$query
Create styles array
The data for the language used.
global $ilDB
+ Here is the caller graph for this function:

◆ delete() [1/2]

ilMDIdentifier::delete ( )

Definition at line 84 of file class.ilMDIdentifier.php.

References $ilDB, $query, $res, and ilMDBase\getMetaId().

85  {
86  global $ilDB;
87 
88  if ($this->getMetaId()) {
89  $query = "DELETE FROM il_meta_identifier " .
90  "WHERE meta_identifier_id = " . $ilDB->quote($this->getMetaId(), 'integer');
91  $res = $ilDB->manipulate($query);
92  return true;
93  }
94  return false;
95  }
foreach($_POST as $key=> $value) $res
$query
global $ilDB
+ Here is the call graph for this function:

◆ delete() [2/2]

ilMDIdentifier::delete ( )

Definition at line 85 of file class.ilMDIdentifier.php.

References $ilDB, $query, and ilMDBase\getMetaId().

86  {
87  global $ilDB;
88 
89  if ($this->getMetaId()) {
90  $query = "DELETE FROM il_meta_identifier " .
91  "WHERE meta_identifier_id = " . $ilDB->quote($this->getMetaId());
92 
93  $this->db->query($query);
94 
95  return true;
96  }
97  return false;
98  }
$query
global $ilDB
+ Here is the call graph for this function:

◆ existsIdInRbacObject()

static ilMDIdentifier::existsIdInRbacObject (   $a_rbac_id,
  $a_obj_type,
  $a_catalog,
  $a_entry 
)
static

Does id entry exist in rbac object?

Parameters

Definition at line 237 of file class.ilMDIdentifier.php.

References $ilDB, $query, $r, and $s.

Referenced by ilLMObject\existsExportID().

238  {
239  global $ilDB;
240 
241  $query = "SELECT meta_identifier_id, obj_id FROM il_meta_identifier " .
242  "WHERE rbac_id = " . $ilDB->quote($a_rbac_id, 'integer') .
243  " AND obj_type = " . $ilDB->quote($a_obj_type, 'text') .
244  " AND catalog = " . $ilDB->quote($a_catalog, 'text') .
245  " AND entry = " . $ilDB->quote($a_entry, 'text');
246  $s = $ilDB->query($query);
247  if ($r = $ilDB->fetchAssoc($s)) {
248  return true;
249  }
250  return false;
251  }
$s
Definition: pwgen.php:45
$r
Definition: example_031.php:79
$query
global $ilDB
+ Here is the caller graph for this function:

◆ getCatalog() [1/2]

ilMDIdentifier::getCatalog ( )

Definition at line 40 of file class.ilMDIdentifier.php.

41  {
42  return $this->catalog;
43  }

◆ getCatalog() [2/2]

ilMDIdentifier::getCatalog ( )

Definition at line 40 of file class.ilMDIdentifier.php.

Referenced by __getFields(), and toXML().

41  {
42  return $this->catalog;
43  }
+ Here is the caller graph for this function:

◆ getEntry() [1/2]

ilMDIdentifier::getEntry ( )

Definition at line 48 of file class.ilMDIdentifier.php.

Referenced by __getFields(), and toXML().

49  {
50  return $this->entry;
51  }
+ Here is the caller graph for this function:

◆ getEntry() [2/2]

ilMDIdentifier::getEntry ( )

Definition at line 48 of file class.ilMDIdentifier.php.

49  {
50  return $this->entry;
51  }

◆ read() [1/2]

ilMDIdentifier::read ( )

Definition at line 109 of file class.ilMDIdentifier.php.

References $ilDB, $query, $res, $row, ilDBConstants\FETCHMODE_OBJECT, ilMDBase\getMetaId(), setCatalog(), setEntry(), ilMDBase\setObjId(), ilMDBase\setObjType(), ilMDBase\setParentId(), ilMDBase\setParentType(), and ilMDBase\setRBACId().

110  {
111  global $ilDB;
112 
113  if ($this->getMetaId()) {
114  $query = "SELECT * FROM il_meta_identifier " .
115  "WHERE meta_identifier_id = " . $ilDB->quote($this->getMetaId(), 'integer');
116 
117  $res = $this->db->query($query);
118  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
119  $this->setRBACId($row->rbac_id);
120  $this->setObjId($row->obj_id);
121  $this->setObjType($row->obj_type);
122  $this->setParentId($row->parent_id);
123  $this->setParentType($row->parent_type);
124  $this->setCatalog($row->catalog);
125  $this->setEntry($row->entry);
126  }
127  }
128  return true;
129  }
setObjType($a_type)
foreach($_POST as $key=> $value) $res
setObjId($a_id)
setRBACId($a_id)
$query
setParentId($a_id)
global $ilDB
setParentType($a_parent_type)
+ Here is the call graph for this function:

◆ read() [2/2]

ilMDIdentifier::read ( )

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

References $ilDB, $query, $res, $row, ilDBConstants\FETCHMODE_OBJECT, ilMDBase\getMetaId(), setCatalog(), setEntry(), ilMDBase\setObjId(), ilMDBase\setObjType(), ilMDBase\setParentId(), ilMDBase\setParentType(), ilMDBase\setRBACId(), and ilUtil\stripSlashes().

113  {
114  global $ilDB;
115 
116  if ($this->getMetaId()) {
117  $query = "SELECT * FROM il_meta_identifier " .
118  "WHERE meta_identifier_id = " . $ilDB->quote($this->getMetaId());
119 
120  $res = $this->db->query($query);
121  while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
122  $this->setRBACId($row->rbac_id);
123  $this->setObjId($row->obj_id);
124  $this->setObjType($row->obj_type);
125  $this->setParentId($row->parent_id);
126  $this->setParentType($row->parent_type);
127  $this->setCatalog(ilUtil::stripSlashes($row->catalog));
128  $this->setEntry(ilUtil::stripSlashes($row->entry));
129  }
130  }
131  return true;
132  }
setObjType($a_type)
foreach($_POST as $key=> $value) $res
setObjId($a_id)
setRBACId($a_id)
$query
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
setParentId($a_id)
global $ilDB
setParentType($a_parent_type)
+ Here is the call graph for this function:

◆ readIdData()

static ilMDIdentifier::readIdData (   $a_rbac_id,
  $a_obj_type,
  $a_catalog,
  $a_entry 
)
static

Does id entry exist in rbac object?

Parameters

Definition at line 259 of file class.ilMDIdentifier.php.

References $data, $ilDB, $query, $r, $s, and array.

Referenced by ilLMObject\getExportIDInfo().

260  {
261  global $ilDB;
262 
263  $query = "SELECT * FROM il_meta_identifier " .
264  "WHERE rbac_id = " . $ilDB->quote($a_rbac_id, 'integer') .
265  " AND obj_type = " . $ilDB->quote($a_obj_type, 'text') .
266  " AND catalog = " . $ilDB->quote($a_catalog, 'text') .
267  " AND entry = " . $ilDB->quote($a_entry, 'text');
268  $s = $ilDB->query($query);
269  $data = array();
270  while ($r = $ilDB->fetchAssoc($s)) {
271  $data[] = $r;
272  }
273  return $data;
274  }
$s
Definition: pwgen.php:45
$r
Definition: example_031.php:79
$query
Create styles array
The data for the language used.
global $ilDB
+ Here is the caller graph for this function:

◆ save() [1/2]

ilMDIdentifier::save ( )

Definition at line 54 of file class.ilMDIdentifier.php.

References ilMDBase\getMetaId(), ilDBConstants\MDB2_AUTOQUERY_INSERT, and ilMDBase\setMetaId().

55  {
56  if ($this->db->autoExecute(
57  'il_meta_identifier',
58  $this->__getFields(),
60  )) {
61  $this->setMetaId($this->db->getLastInsertId());
62 
63  return $this->getMetaId();
64  }
65  return false;
66  }
setMetaId($a_meta_id, $a_read_data=true)
+ Here is the call graph for this function:

◆ save() [2/2]

ilMDIdentifier::save ( )

Definition at line 54 of file class.ilMDIdentifier.php.

References $ilDB, __getFields(), array, ilMDBase\getMetaId(), and ilMDBase\setMetaId().

55  {
56  global $ilDB;
57 
58  $fields = $this->__getFields();
59  $fields['meta_identifier_id'] = array('integer',$next_id = $ilDB->nextId('il_meta_identifier'));
60 
61  if ($this->db->insert('il_meta_identifier', $fields)) {
62  $this->setMetaId($next_id);
63  return $this->getMetaId();
64  }
65  return false;
66  }
setMetaId($a_meta_id, $a_read_data=true)
Create styles array
The data for the language used.
global $ilDB
+ Here is the call graph for this function:

◆ setCatalog() [1/2]

ilMDIdentifier::setCatalog (   $a_catalog)

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

37  {
38  $this->catalog = $a_catalog;
39  }

◆ setCatalog() [2/2]

ilMDIdentifier::setCatalog (   $a_catalog)

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

Referenced by read().

37  {
38  $this->catalog = $a_catalog;
39  }
+ Here is the caller graph for this function:

◆ setEntry() [1/2]

ilMDIdentifier::setEntry (   $a_entry)

Definition at line 44 of file class.ilMDIdentifier.php.

45  {
46  $this->entry = $a_entry;
47  }

◆ setEntry() [2/2]

ilMDIdentifier::setEntry (   $a_entry)

Definition at line 44 of file class.ilMDIdentifier.php.

Referenced by read().

45  {
46  $this->entry = $a_entry;
47  }
+ Here is the caller graph for this function:

◆ toXML() [1/2]

ilMDIdentifier::toXML ( $writer,
  $a_overwrite_id = false 
)

Definition at line 136 of file class.ilMDIdentifier.php.

References array, getCatalog(), getEntry(), ilMDBase\getExportMode(), ilMDBase\getObjId(), ilMDBase\getObjType(), and ilMDBase\getRBACId().

137  {
138  $entry_default = ($this->getObjId() == 0)
139  ? "il_" . IL_INST_ID . "_" . $this->getObjType() . "_" . $this->getRBACId()
140  : "il_" . IL_INST_ID . "_" . $this->getObjType() . "_" . $this->getObjId();
141 
142  $entry = $this->getEntry() ? $this->getEntry() : $entry_default;
143  $catalog = $this->getCatalog();
144 
145  if ($this->getExportMode() && $this->getCatalog() != "ILIAS_NID") {
146  $entry = $entry_default;
147  $catalog = "ILIAS";
148  }
149 
150  if (strlen($catalog)) {
151  $writer->xmlElement('Identifier', array('Catalog' => $catalog,
152  'Entry' => $entry));
153  } else {
154  $writer->xmlElement('Identifier', array('Entry' => $entry));
155  }
156  }
Create styles array
The data for the language used.
+ Here is the call graph for this function:

◆ toXML() [2/2]

ilMDIdentifier::toXML ( $writer)

Definition at line 139 of file class.ilMDIdentifier.php.

References array, getCatalog(), and getEntry().

140  {
141  $writer->xmlElement('Identifier', array('Catalog' => $this->getCatalog(),
142  'Entry' => $this->getEntry()));
143  }
Create styles array
The data for the language used.
+ Here is the call graph for this function:

◆ update() [1/2]

ilMDIdentifier::update ( )

Definition at line 68 of file class.ilMDIdentifier.php.

References $ilDB, array, and ilMDBase\getMetaId().

69  {
70  global $ilDB;
71 
72  if ($this->getMetaId()) {
73  if ($this->db->update(
74  'il_meta_identifier',
75  $this->__getFields(),
76  array("meta_identifier_id" => array('integer',$this->getMetaId()))
77  )) {
78  return true;
79  }
80  }
81  return false;
82  }
Create styles array
The data for the language used.
global $ilDB
+ Here is the call graph for this function:

◆ update() [2/2]

ilMDIdentifier::update ( )

Definition at line 68 of file class.ilMDIdentifier.php.

References $ilDB, ilMDBase\getMetaId(), and ilDBConstants\MDB2_AUTOQUERY_UPDATE.

69  {
70  global $ilDB;
71 
72  if ($this->getMetaId()) {
73  if ($this->db->autoExecute(
74  'il_meta_identifier',
75  $this->__getFields(),
77  "meta_identifier_id = " . $ilDB->quote($this->getMetaId())
78  )) {
79  return true;
80  }
81  }
82  return false;
83  }
global $ilDB
+ Here is the call graph for this function:

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