/** * @param GitPackageConfigResource $resource */ private function updateResource($resource) { $res = $this->modx->runProcessor('resource/update', $resource->toArray()); $resObject = $res->getObject(); if ($resObject && isset($resObject['id'])) { /** @var modResource $modResource */ $modResource = $this->modx->getObject('modResource', array('id' => $resObject['id'])); if ($modResource) { $this->resourceMap[$modResource->pagetitle] = $modResource->id; $tvs = $resource->getTvs(); foreach ($tvs as $tv) { $modResource->setTVValue($tv['name'], $tv['value']); } } } }
/** * @param GitPackageConfigResource $resource */ private function updateResource($resource) { $res = $this->modx->runProcessor('resource/update', $resource->toArray()); $resObject = $res->getObject(); $colObject = $this->modx->getObject('CollectionSetting', array('collection' => $resObject['id'])); if ($resObject && isset($resObject['id'])) { /** @var modResource $modResource */ $modResource = $this->modx->getObject('modResource', array('id' => $resObject['id'])); if ($modResource) { $this->resourceMap[$modResource->pagetitle] = $modResource->id; $tvs = $resource->getTvs(); foreach ($tvs as $tv) { $modResource->setTVValue($tv['name'], $tv['value']); } } // Set the correct Collections template for a resource, if specified if ($colObject) { $others = $resource->getOthers(); foreach ($others as $other) { if ($other['name'] == 'collections') { $colObject->set('template', $other['value']); $colObject->save(); } } } // Set the properties field with ContentBlocks JSON formatting, if specified $properties = $resource->getProperties(); if ($properties) { $modResource->set('properties', null); $modResource->set('properties', $properties); $modResource->save(); } } }