Source of file SilverStripeContentImporter.php
Size: 1,313 Bytes - Last Modified: 2021-12-23T10:26:26+00:00
/var/www/docs.ssmods.com/process/src/code/import/SilverStripeContentImporter.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | <?php class SilverStripeContentImporter extends ExternalContentImporter { /** * Override this to specify additional import handlers * * @var array */ private static $importer_classes = array(); public function __construct() { $this->init(); } public function init() { $this->contentTransforms['DataObject'] = new SilverStripeDataObjectImporter(); $this->contentTransforms['UserDefinedForm'] = new SilverStripeFormImporter(); $this->contentTransforms['EditableDropdown'] = new SilverStripeEditableDropdownImporter(); $this->contentTransforms['CalendarEvent'] = new SilverStripeCalendarEventImporter(); $this->contentTransforms['CalendarDateTime'] = new SilverStripeCalendarDateTimeImporter(); $this->contentTransforms['EditableOption'] = new SilverStripeEditableOptionImporter(); foreach ($this->config()->importer_classes as $type => $cls) { $this->contentTransforms[$type] = new $cls; } } protected function getExternalType($item) { if ($item->ClassName) { $name = null; $hierarchy = ClassInfo::ancestry($item->ClassName); foreach ($hierarchy as $ancestor => $val) { if (isset($this->contentTransforms[$ancestor])) { $name = $ancestor; } } if ($name) { return $name; } } return 'DataObject'; } } |