1b93137e16
* requires PHP 5.6 * use blazy on linklist since a lot more thumbs are retrieved * thumbnails can be disabled * thumbs size is now 120x120 * thumbs are now cropped to fit the expected size Fixes #345 #425 #487 #543 #588 #590
49 lines
1.1 KiB
PHP
49 lines
1.1 KiB
PHP
<?php
|
|
|
|
use WebThumbnailer\WebThumbnailer;
|
|
|
|
/**
|
|
* Class Thumbnailer
|
|
*
|
|
* Utility class used to retrieve thumbnails using web-thumbnailer dependency.
|
|
*/
|
|
class Thumbnailer
|
|
{
|
|
/**
|
|
* @var WebThumbnailer instance.
|
|
*/
|
|
protected $wt;
|
|
|
|
/**
|
|
* @var ConfigManager instance.
|
|
*/
|
|
protected $conf;
|
|
|
|
/**
|
|
* Thumbnailer constructor.
|
|
*
|
|
* @param ConfigManager $conf instance.
|
|
*/
|
|
public function __construct($conf)
|
|
{
|
|
$this->conf = $conf;
|
|
$this->wt = new WebThumbnailer();
|
|
\WebThumbnailer\Application\ConfigManager::addFile('inc/web-thumbnailer.json');
|
|
$this->wt->maxWidth($this->conf->get('thumbnails.width'))
|
|
->maxHeight($this->conf->get('thumbnails.height'))
|
|
->crop(true)
|
|
->debug($this->conf->get('dev.debug', false));
|
|
}
|
|
|
|
/**
|
|
* Retrieve a thumbnail for given URL
|
|
*
|
|
* @param string $url where to look for a thumbnail.
|
|
*
|
|
* @return bool|string The thumbnail relative cache file path, or false if none has been found.
|
|
*/
|
|
public function get($url)
|
|
{
|
|
return $this->wt->thumbnail($url);
|
|
}
|
|
}
|