Newer
Older

Dominik Chrzanowski
committed
<?php
/**
* This file contains QUI\PresentationBricks\Controls\IconBox
*/
namespace QUI\PresentationBricks\Controls;
use QUI;
/**
* Class WallpaperTextArrow
*
* @package quiqqer/presentation-bricks
*/
class IconBox extends QUI\Control
{
/**
* constructor
*
* @param array $attributes
*/
public function __construct($attributes = [])
{
// default options
$this->setAttributes([

Dominik Chrzanowski
committed
'template' => 'default',
'centerContent' => false,
'entriesPerLine' => 2,
'iconSize' => 'small',
'imgIconSize' => '50px',
'imgSquare' => false

Dominik Chrzanowski
committed
]);
parent::__construct($attributes);
$this->addCSSFile(

Dominik Chrzanowski
committed
dirname(__FILE__) . '/IconBox.css'

Dominik Chrzanowski
committed
);
}
/**
* (non-PHPdoc)
*
* @see \QUI\Control::create()
*/
public function getBody()
{
$Engine = QUI::getTemplateManager()->getEngine();

Dominik Chrzanowski
committed
$entries = json_decode($this->getAttribute('entries'), true);
$template = $this->getAttribute('template');
$centerContent = $this->getAttribute('centerContent');
$entriesPerLine = $this->getAttribute('entriesPerLine');
$iconSize = $this->getAttribute('iconSize');
$imgIconSize = $this->getAttribute('imgIconSize');
$imgSquare = $this->getAttribute('imgSquare');

Dominik Chrzanowski
committed
$enabledEntries = [];
foreach ($entries as $entry) {
if ($entry['isDisabled'] === 1) {
continue;
}
array_push($enabledEntries, $entry);
}

Dominik Chrzanowski
committed
$Engine->assign([

Dominik Chrzanowski
committed
'this' => $this,
'centerContent' => $centerContent,
'entriesPerLine' => $entriesPerLine,
'iconSize' => $iconSize,
'imgIconSize' => $imgIconSize,
'imgSquare' => $imgSquare,

Dominik Chrzanowski
committed
'entries' => $enabledEntries

Dominik Chrzanowski
committed
]);

Dominik Chrzanowski
committed
return $Engine->fetch(dirname(__FILE__) . '/IconBox.' . $template . '.html');