ILIAS  release_4-4 Revision
All Data Structures Namespaces Files Functions Variables Modules Pages
class.ilAdvancedMetaDataImporter.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
3 
4 include_once("./Services/Export/classes/class.ilXmlImporter.php");
5 
14 {
15  function importXmlRepresentation($a_entity, $a_id, $a_xml, $a_mapping)
16  {
17  include_once "Services/AdvancedMetaData/classes/class.ilAdvancedMDParser.php";
18  include_once "Services/AdvancedMetaData/classes/class.ilAdvancedMDRecord.php";
19 
20  $parser = new ilAdvancedMDParser($a_id, $a_mapping);
21  $parser->setXMLContent($a_xml);
22  $parser->startParsing();
23 
24  // select records for object
25  foreach($parser->getFieldIds() as $obj_id => $items)
26  {
27  foreach($items as $sub_type => $field_ids)
28  {
29  // find records for fields
30  $rec_ids = array();
31  foreach($field_ids as $field_id)
32  {
33  $def = new ilAdvancedMDFieldDefinition($field_id);
34  $rec_ids[] = $def->getRecordId();
35  }
36  $rec_ids = array_unique($rec_ids);
37 
38  ilAdvancedMDRecord::saveObjRecSelection($obj_id, $sub_type, $rec_ids);
39  }
40  }
41  }
42 }
43 
44 ?>
importXmlRepresentation($a_entity, $a_id, $a_xml, $a_mapping)
static saveObjRecSelection($a_obj_id, $a_sub_type="", $a_records)
Save repository object record selection.
Xml importer class.