82 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
/*****************************************************************************
 | 
						|
 * AlbumIndex.php
 | 
						|
 * Contains the album index template.
 | 
						|
 *
 | 
						|
 * Kabuki CMS (C) 2013-2015, Aaron van Geffen
 | 
						|
 *****************************************************************************/
 | 
						|
 | 
						|
class AlbumIndex extends Template
 | 
						|
{
 | 
						|
	protected $albums;
 | 
						|
	protected $show_edit_buttons;
 | 
						|
	protected $show_labels;
 | 
						|
	protected $row_limit = 1000;
 | 
						|
 | 
						|
	const TILE_WIDTH = 400;
 | 
						|
	const TILE_HEIGHT = 300;
 | 
						|
 | 
						|
	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;
 | 
						|
	}
 | 
						|
 | 
						|
	public function html_main()
 | 
						|
	{
 | 
						|
		echo '
 | 
						|
			<div class="tiled_grid clearfix">';
 | 
						|
 | 
						|
		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']))
 | 
						|
				{
 | 
						|
					$thumbs = [];
 | 
						|
					foreach ([1, 2] as $factor)
 | 
						|
						$thumbs[$factor] = $album['thumbnail']->getThumbnailUrl(
 | 
						|
							static::TILE_WIDTH * $factor, static::TILE_HEIGHT * $factor, true, true);
 | 
						|
 | 
						|
					echo '
 | 
						|
								<img src="', $thumbs[1], '"' . (isset($thumbs[2]) ?
 | 
						|
									' srcset="' . $thumbs[2] . ' 2x"' : '') .
 | 
						|
									' alt="" style="width: ', static::TILE_WIDTH,
 | 
						|
										'px; height: ', static::TILE_HEIGHT, 'px">';
 | 
						|
				}
 | 
						|
				else
 | 
						|
					echo '
 | 
						|
								<img src="', BASEURL, '/images/nothumb.svg" alt="">';
 | 
						|
 | 
						|
				if ($this->show_labels)
 | 
						|
					echo '
 | 
						|
								<h4>', $album['caption'], '</h4>';
 | 
						|
 | 
						|
				echo '
 | 
						|
							</a>
 | 
						|
						</div>';
 | 
						|
			}
 | 
						|
 | 
						|
			echo '
 | 
						|
					</div>';
 | 
						|
		}
 | 
						|
 | 
						|
		echo '
 | 
						|
			</div>';
 | 
						|
	}
 | 
						|
}
 |