Skip to content
Snippets Groups Projects
RenderArticles.php 1.89 KiB
Newer Older
<?php
/**
 * Copyright (c) 2012-2018, Agence Française Informatique (AFI). All rights reserved.
 *
 * BOKEH is free software; you can redistribute it and/or modify
 * it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by
 * the Free Software Foundation.
 *
 * There are special exceptions to the terms and conditions of the AGPL as it
 * is applied to this software (see README file).
 *
 * BOKEH is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
 *
 * You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE
 * along with BOKEH; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
 */


class Intonation_View_RenderArticles extends ZendAfi_View_Helper_BaseHelper {
  public function renderArticles($articles) {
    if (!$this->view->titre)
      $this->view->titre = $this->_('Liste d\'articles');

Ghislain Loas's avatar
Ghislain Loas committed
    $content = [$this->_div(['class' => 'col-12 articles_list_title'],
                            $this->_tag('h1',
                                        $this->view->titre)),
Ghislain Loas's avatar
Ghislain Loas committed
                $this->_div(['class' => 'col-12 articles_list_content'],
                            $this->_getHtml($articles))];

    return $this->view->grid(implode($content));
  }


  protected function _getHtml($articles) {
Ghislain Loas's avatar
Ghislain Loas committed
    if (empty($articles))
      return $this->_tag('p', $this->_('Aucun événement'));

    $html = [];
    foreach($articles as $article)
Ghislain Loas's avatar
Ghislain Loas committed
      $html [] = $this->_div(['class' => 'col-12 wrapper_article_content'],
                              $this->_htmlForArticle($article));
Ghislain Loas's avatar
Ghislain Loas committed
    return $this->view->grid(implode($html));
  }


  protected function _htmlForArticle($article) {
    return $this->view->renderArticle($article);