/** * @param string $websiteId * @param string $id * @param SourceItem $sourceItem * @param \stdClass $manifest * * @return DataPackage */ protected function loadDataObject($websiteId, $id, SourceItem $sourceItem, \stdClass $manifest) { $package = new DataPackage(); $package->setWebsiteid($websiteId); $package->setId($id); $package->setReadonly($sourceItem->isReadonly()); $package->setSourceType($sourceItem->getType()); $package->setSource($sourceItem); if (property_exists($manifest, 'name') && is_object($manifest->name)) { $package->setName($manifest->name); } if (property_exists($manifest, 'description') && is_object($manifest->description)) { $package->setDescription($manifest->description); } if (property_exists($manifest, 'version')) { $package->setVersion($manifest->version); } if (property_exists($manifest, 'websiteSettings') && is_array($manifest->websiteSettings)) { $package->setWebsiteSettings($manifest->websiteSettings); } if (property_exists($manifest, 'pageTypes') && is_array($manifest->pageTypes)) { $package->setPageTypes($manifest->pageTypes); } if (property_exists($manifest, 'templateSnippets') && is_array($manifest->templateSnippets)) { $package->setTemplateSnippets($manifest->templateSnippets); } if (property_exists($manifest, 'modules') && is_array($manifest->modules)) { $package->setModules($manifest->modules); } $this->setWebsiteSettingsSource($package, $sourceItem); $this->setPageTypesSource($package, $sourceItem); $this->setTemplateSnippetsSource($package, $sourceItem); $this->setModulesSource($package, $sourceItem); return $package; }