Esempio n. 1
0
 /**
  * updates the TemplateSnippet of the given id and website id.
  * if snippet exists only at filesystem, create the snippet in db.
  *
  * @param TemplateSnippetSource     $snippetSource
  * @param \Cms\Data\TemplateSnippet $snippet
  *
  * @return  DataTemplateSnippet
  */
 public function update(TemplateSnippetSource $snippetSource, DataTemplateSnippet $snippet)
 {
     $snippetId = $snippet->getId();
     $existsAtFilesystem = $this->daoFilesystem->existsSnippet($snippetSource, $snippetId);
     $existsAtDoctrine = $this->daoDoctrine->existsSnippet($snippetSource, $snippetId);
     if ($existsAtFilesystem && !$existsAtDoctrine) {
         return $this->daoDoctrine->create($snippetSource, $snippet);
     }
     return $this->daoDoctrine->update($snippetSource, $snippet);
 }
Esempio n. 2
0
 /**
  * updates the TemplateSnippet of the given id and website id
  *
  * @param TemplateSnippetSource     $snippetSource
  * @param \Cms\Data\TemplateSnippet $snippet
  *
  * @return  DataTemplateSnippet
  * @throws ReadOnlyException
  */
 public function update(TemplateSnippetSource $snippetSource, DataTemplateSnippet $snippet)
 {
     $this->internalGetById($snippetSource, $snippet->getId());
     // read-only DAO
     throw new ReadOnlyException(1613, __METHOD__, __LINE__, null, new \Exception('read only DAO'));
 }
Esempio n. 3
0
 /**
  * @param \Cms\Data\TemplateSnippet $data
  */
 protected function setValuesFromData(TemplateSnippetData $data)
 {
     $this->setWebsiteId($data->getWebsiteId());
     $this->setId($data->getId());
     $this->setName($data->getName());
     $this->setDescription($data->getDescription());
     $this->setCategory($data->getCategory());
     $this->setContent($data->getContent());
     $this->setReadonly($data->isReadonly());
     $this->setSourceType($data->getSourceType());
     $this->setOverwritten($data->isOverwritten());
     $this->setBaseLayout($data->isBaseLayout());
     $this->setPageTypes($data->getPageTypes());
     $this->setPreviewImageUrl($data->getPreviewImageUrl());
 }
Esempio n. 4
0
 /**
  * updates the TemplateSnippet of the given id and website id
  *
  * @param TemplateSnippetSource     $snippetSource
  * @param \Cms\Data\TemplateSnippet $snippet
  *
  * @return \Cms\Data\TemplateSnippet
  * @throws \Cms\Exception
  */
 public function update(TemplateSnippetSource $snippetSource, DataTemplateSnippet $snippet)
 {
     $snippetOrm = $this->getOrmById($snippetSource->getWebsiteId(), $snippet->getId());
     try {
         $this->setAttributesToOrm($snippetOrm, $snippet);
         $entityManager = $this->getEntityManager();
         $entityManager->persist($snippetOrm);
         $entityManager->flush();
         $entityManager->refresh($snippetOrm);
         $this->clearEntityManager();
     } catch (\Exception $e) {
         throw new CmsException(1611, __METHOD__, __LINE__, null, $e);
     }
     return $this->convertToCmsDataObject($snippetOrm);
 }