예제 #1
0
 protected function _prepareView(Content $content, ContentSpec $handlerContent = null, $handlerAction = null)
 {
     $view = 'NyroDevNyroCmsBundle:Handler:news';
     $vars = array('content' => $content);
     $routCfg = $this->get('nyrocms')->getRouteFor($content);
     $route = $routCfg['route'];
     $routePrm = $routCfg['prm'];
     if ($handlerContent) {
         $view .= 'Show';
         $vars['news'] = $handlerContent;
         $vars['backUrl'] = $this->generateUrl($route, $routePrm);
         $route .= '_spec';
         $routePrm['id'] = $handlerContent->getId();
         $routePrm['title'] = $this->get('nyrodev')->urlify($handlerContent->getTitle());
     } else {
         $page = $this->request->query->get('page', 1);
         $nbPerPage = $this->getParameter('handler_news_perpage', 6);
         $total = $this->getTotalContentSpec($content);
         $nbPages = ceil($total / $nbPerPage);
         if ($page > $nbPages) {
             $page = $nbPages;
         }
         if ($page < 1) {
             $page = 1;
         }
         $pager = new \NyroDev\UtilityBundle\Utility\Pager($this->get('nyrodev'), $route, $routePrm, $total, $page, $nbPerPage);
         $results = $this->getContentSpecs($content, $pager->getStart(), $nbPerPage);
         $vars['results'] = $results;
         $vars['pager'] = $pager;
     }
     return array('view' => $view . '.html.php', 'vars' => $vars);
 }
 public function getAfters(ContentSpec $contentSpec)
 {
     return $this->createQueryBuilder('cs')->andWhere('cs.contentHandler = :chid')->setParameter('chid', $contentSpec->getContentHandler()->getId())->andWhere('cs.position > :position')->setParameter('position', $contentSpec->getPosition())->addOrderBy('cs.position', 'ASC')->getQuery()->getResult();
 }
예제 #3
0
 protected function deleteFileClb(ContentSpec $row, $field)
 {
     $file = $this->hasComposer() ? $row->getInData($field) : $row->getInContent($field);
     if ($file) {
         $fs = new Filesystem();
         $filePath = $this->getUploadRootDir() . '/' . $file;
         if ($fs->exists($filePath)) {
             $fs->remove($filePath);
             $this->get('nyrodev_image')->removeCache($filePath);
         }
         $this->hasComposer() ? $row->setInData($field, null) : $row->getInContent($field, null);
     }
 }