/** * Gets the options for the content mappers * @return array */ protected function getContentMapperOptions($modelName) { $contentMappers = $this->contentService->getContentMappersForType($modelName); foreach ($contentMappers as $id => $contentMapper) { $contentMappers[$id] = $id; } $contentMappers = array('' => '---') + $contentMappers; return $contentMappers; }
public function contentAction(OrmManager $orm, Cms $cms, ContentService $contentService, ImageUrlGenerator $imageUrlGenerator, $model, $id, $locale) { $model = $orm->getModel($model); $entry = $model->getById($id); if (!$entry) { $this->response->setStatusCode(Response::STATUS_CODE_NOT_FOUND); return; } $site = $cms->getCurrentSite($this->request->getBaseUrl(), $locale); $content = $contentService->getContentForEntry($model, $entry, $site->getId(), $locale); if ($content->image) { $transformation = $this->request->getQueryParameter('transformation', 'crop'); $options = array('width' => $this->request->getQueryParameter('width', 100), 'height' => $this->request->getQueryParameter('height', 100)); $content->image = $imageUrlGenerator->generateUrl($content->image, $transformation, $options); } unset($content->data); $this->setJsonView($content); }
/** * Gets the result from the query * @param \ride\web\cms\orm\ContentProperties $properties * @param \ride\library\orm\query\ModelQuery $query * @return array Array with Content objects */ protected function getResult(ContentProperties $contentProperties, ContentService $contentService, ModelQuery $query) { $entry = $query->queryFirst(); if (!$entry) { return $entry; } $node = $this->properties->getNode(); $titleFormat = $contentProperties->getContentTitleFormat(); $teaserFormat = $contentProperties->getContentTeaserFormat(); $imageFormat = $contentProperties->getContentImageFormat(); $dateFormat = $contentProperties->getContentDateFormat(); return $contentService->getContentForEntry($this->model, $entry, $node->getRootNodeId(), $this->locale, null, $titleFormat, $teaserFormat, $imageFormat, $dateFormat); }
/** * Action to get the available content mappers for a model * @param \ride\web\cms\orm\ContentService $contentService * @param string $model Name of the model * @return null */ public function modelMappersAction(ContentService $contentService, $model) { $contentMappers = $contentService->getContentMappersForType($model); $this->setJsonView(array($model => array_keys($contentMappers))); }
/** * Gets the result from the query * @param \ride\web\cms\orm\ContentProperties $contentProperties * @param \ride\web\cms\orm\ContentService $contentService * @param \ride\library\orm\query\ModelQuery $query * @return array Array with Content objects */ private function getResult(ContentProperties $contentProperties, ContentService $contentService, ModelQuery $query) { $result = $query->query(); if (!$result) { return $result; } $node = $this->properties->getNode(); $contentMapper = $contentProperties->getContentMapper(); $titleFormat = $contentProperties->getContentTitleFormat(); $teaserFormat = $contentProperties->getContentTeaserFormat(); $imageFormat = $contentProperties->getContentImageFormat(); $dateFormat = $contentProperties->getContentDateFormat(); return $contentService->getContentForEntries($this->model, $result, $node->getRootNodeId(), $this->locale, $contentMapper, $titleFormat, $teaserFormat, $imageFormat, $dateFormat); }
/** * Gets the available mappers * @return array Array with ContentMapper objects * @see \ride\library\cms\content\mapper\ContentMapper */ public function getContentMappers() { return $this->contentService->getContentMappers(); }