pics/templates/AlbumIndex.php

72 lines
1.5 KiB
PHP

<?php
/*****************************************************************************
* AlbumIndex.php
* Contains the album index template.
*
* Kabuki CMS (C) 2013-2015, Aaron van Geffen
*****************************************************************************/
class AlbumIndex extends SubTemplate
{
protected $albums;
protected $show_edit_buttons;
protected $show_labels;
protected $row_limit = 1000;
const TILE_WIDTH = 400;
const TILE_HEIGHT = 267;
public function __construct(array $albums, $show_edit_buttons = false, $show_labels = true)
{
$this->albums = $albums;
$this->show_edit_buttons = $show_edit_buttons;
$this->show_labels = $show_labels;
}
protected function html_content()
{
echo '
<div class="tiled_grid">';
foreach (array_chunk($this->albums, 3) as $photos)
{
echo '
<div class="tiled_row">';
foreach ($photos as $album)
{
echo '
<div class="landscape">';
if ($this->show_edit_buttons)
echo '
<a class="edit" href="#">Edit</a>';
echo '
<a href="', $album['link'], '">';
if (isset($album['thumbnail']))
echo '
<img src="', $album['thumbnail']->getThumbnailUrl(static::TILE_WIDTH, static::TILE_HEIGHT, true, true), '" alt="">';
else
echo '
<img src="', BASEURL, '/images/nothumb.png" alt="">';
if ($this->show_labels)
echo '
<h4>', $album['caption'], '</h4>';
echo '
</a>
</div>';
}
echo '
</div>';
}
echo '
</div>';
}
}