Add UIBlocks to twig (CollapsibleSection, FieldBadge, Panel)

This commit is contained in:
Eric
2021-01-15 10:12:02 +01:00
parent 63eb0f1530
commit 5fe8ca178e
10 changed files with 60 additions and 29 deletions

View File

@@ -0,0 +1,22 @@
<?php
/**
* @copyright Copyright (C) 2010-2021 Combodo SARL
* @license http://opensource.org/licenses/AGPL-3.0
*/
namespace Combodo\iTop\Application\UI\Base\Component\CollapsibleSection;
use Combodo\iTop\Application\UI\Base\AbstractUIBlockFactory;
class CollapsibleSectionUIBlockFactory extends AbstractUIBlockFactory
{
public const TWIG_TAG_NAME = 'UICollapsibleSection';
public const UI_BLOCK_CLASS_NAME = "Combodo\\iTop\\Application\\UI\\Base\\Component\\CollapsibleSection\\CollapsibleSection";
public static function MakeStandard(string $sTitle, ?string $sId = null)
{
return new CollapsibleSection($sTitle, [], $sId);
}
}

View File

@@ -14,7 +14,7 @@ use Combodo\iTop\Application\UI\Base\AbstractUIBlockFactory;
use Combodo\iTop\Application\UI\Base\Component\DataTable\StaticTable\FormTable\FormTable;
use Combodo\iTop\Application\UI\Base\Component\DataTable\StaticTable\FormTableRow\FormTableRow;
use Combodo\iTop\Application\UI\Base\Component\DataTable\StaticTable\StaticTable;
use Combodo\iTop\Application\UI\Base\Component\Panel\PanelFactory;
use Combodo\iTop\Application\UI\Base\Component\Panel\PanelUIBlockFactory;
use Combodo\iTop\Application\UI\Base\Component\Title\TitleUIBlockFactory;
use Combodo\iTop\Application\UI\Base\Component\Toolbar\Toolbar;
use Combodo\iTop\Application\UI\Base\Layout\UIContentBlock;
@@ -114,7 +114,7 @@ class DataTableUIBlockFactory extends AbstractUIBlockFactory
}
if (!isset($aExtraParams['surround_with_panel']) || $aExtraParams['surround_with_panel']) {
$oContainer = PanelFactory::MakeForClass($oSet->GetClass(), "Result")->AddCSSClasses('ibo-datatable-panel');
$oContainer = PanelUIBlockFactory::MakeForClass($oSet->GetClass(), "Result")->AddCSSClasses('ibo-datatable-panel');
$oContainer->AddToolbarBlock($oBlockMenu);
$oContainer->AddMainBlock($oDataTable);
} else {

View File

@@ -8,10 +8,14 @@
namespace Combodo\iTop\Application\UI\Base\Component\FieldBadge;
use Combodo\iTop\Application\UI\Base\AbstractUIBlockFactory;
use ormStyle;
class FieldBadgeFactory
class FieldBadgeUIBlockFactory extends AbstractUIBlockFactory
{
public const UI_BLOCK_CLASS_NAME = "Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldBadge\\FieldBadge";
public const TWIG_TAG_NAME = 'UIFieldBadge';
/**
* @param string $sValue
* @param \ormStyle|null $oStyle

View File

@@ -19,11 +19,12 @@
namespace Combodo\iTop\Application\UI\Base\Component\Panel;
use Combodo\iTop\Application\UI\Base\AbstractUIBlockFactory;
use MetaModel;
use ormStyle;
/**
* Class PanelFactory
* Class PanelUIBlockFactory
*
* @internal
* @author Guillaume Lajarige <guillaume.lajarige@combodo.com>
@@ -32,8 +33,11 @@ use ormStyle;
*
* @link <itop_url>/test/VisualTest/Backoffice/RenderAllUiBlocks.php#title-panels to see live examples
*/
class PanelFactory
class PanelUIBlockFactory extends AbstractUIBlockFactory
{
public const TWIG_TAG_NAME = 'UIPanel';
public const UI_BLOCK_CLASS_NAME = "Combodo\\iTop\\Application\\UI\\Base\\Component\\Panel\\Panel";
/**
* Make a basis Panel component
*