diff --git a/flextype/Images.php b/flextype/Images.php index 6db7ae6d..ca6f49ce 100644 --- a/flextype/Images.php +++ b/flextype/Images.php @@ -13,6 +13,48 @@ namespace Flextype; use Flextype\Component\Http\Http; +use Flextype\Component\Event\Event; +use Thunder\Shortcode\Shortcode\ShortcodeInterface; + +// Event: onShortcodesInitialized +Event::addListener('onShortcodesInitialized', function () { + + // Shortcode: [image path="home/image.jpg"] + Entries::shortcode()->addHandler('image', function(ShortcodeInterface $s) { + $params = []; + + // API + // http://glide.thephpleague.com/1.0/api/quick-reference/ + ($s->getParameter('or')) and $params['w'] = $s->getParameter('or'); + ($s->getParameter('flip')) and $params['flip'] = $s->getParameter('flip'); + ($s->getParameter('crop')) and $params['crop'] = $s->getParameter('crop'); + ($s->getParameter('w')) and $params['w'] = $s->getParameter('w'); + ($s->getParameter('h')) and $params['h'] = $s->getParameter('h'); + ($s->getParameter('fit')) and $params['fit'] = $s->getParameter('fit'); + ($s->getParameter('dpr')) and $params['dpr'] = $s->getParameter('dpr'); + ($s->getParameter('bri')) and $params['bri'] = $s->getParameter('bri'); + ($s->getParameter('con')) and $params['con'] = $s->getParameter('con'); + ($s->getParameter('gam')) and $params['gam'] = $s->getParameter('gam'); + ($s->getParameter('sharp')) and $params['sharp'] = $s->getParameter('sharp'); + ($s->getParameter('blur')) and $params['blur'] = $s->getParameter('blur'); + ($s->getParameter('pixel')) and $params['pixel'] = $s->getParameter('pixel'); + ($s->getParameter('filt')) and $params['filt'] = $s->getParameter('filt'); + ($s->getParameter('mark')) and $params['mark'] = $s->getParameter('mark'); + ($s->getParameter('markw')) and $params['markw'] = $s->getParameter('markw'); + ($s->getParameter('markh')) and $params['markh'] = $s->getParameter('markh'); + ($s->getParameter('markx')) and $params['markx'] = $s->getParameter('markx'); + ($s->getParameter('marky')) and $params['marky'] = $s->getParameter('marky'); + ($s->getParameter('markpad')) and $params['markpad'] = $s->getParameter('markpad'); + ($s->getParameter('markpos')) and $params['markpos'] = $s->getParameter('markpos'); + ($s->getParameter('markalpha')) and $params['markalpha'] = $s->getParameter('markalpha'); + ($s->getParameter('bg')) and $params['bg'] = $s->getParameter('bg'); + ($s->getParameter('border')) and $params['border'] = $s->getParameter('border'); + ($s->getParameter('q')) and $params['q'] = $s->getParameter('q'); + ($s->getParameter('fm')) and $params['fm'] = $s->getParameter('fm'); + + return Images::get($s->getParameter('path'), $params); + }); +}); class Images {