diff --git a/application/dashlet.class.inc.php b/application/dashlet.class.inc.php index 01c74a723..0ef164ca0 100644 --- a/application/dashlet.class.inc.php +++ b/application/dashlet.class.inc.php @@ -19,7 +19,7 @@ use Combodo\iTop\Application\UI\Base\Component\Dashlet\DashletContainer; use Combodo\iTop\Application\UI\Base\Component\Dashlet\DashletFactory; use Combodo\iTop\Application\UI\Base\Component\Html\Html; -use Combodo\iTop\Application\UI\Base\Component\Panel\PanelFactory; +use Combodo\iTop\Application\UI\Base\Component\Panel\PanelUIBlockFactory; use Combodo\iTop\Application\UI\Base\iUIBlock; use Combodo\iTop\Application\UI\Base\UIBlock; @@ -905,7 +905,7 @@ class DashletObjectList extends Dashlet $sShowMenu = $this->aProperties['menu'] ? '1' : '0'; $oFilter = $this->GetDBSearch($aExtraParams); $sClass = $oFilter->GetClass(); - $oPanel = PanelFactory::MakeForClass($sClass, Dict::S($sTitle)); + $oPanel = PanelUIBlockFactory::MakeForClass($sClass, Dict::S($sTitle)); $oBlock = new DisplayBlock($oFilter, 'list'); $aParams = array( @@ -1241,7 +1241,7 @@ abstract class DashletGroupBy extends Dashlet break; } - $oPanel = PanelFactory::MakeForClass($sClass, Dict::S($sTitle)); + $oPanel = PanelUIBlockFactory::MakeForClass($sClass, Dict::S($sTitle)); $sBlockId = 'block_'.$this->sId.($bEditMode ? '_edit' : ''); // make a unique id (edition occurring in the same DOM) @@ -2043,7 +2043,7 @@ class DashletHeaderDynamic extends Dashlet ); } - $oPanel = PanelFactory::MakeEnhancedNeutral(Dict::S(str_replace('_', ':', $sTitle)), $sIconPath); + $oPanel = PanelUIBlockFactory::MakeEnhancedNeutral(Dict::S(str_replace('_', ':', $sTitle)), $sIconPath); if (isset($aExtraParams['query_params'])) { $aQueryParams = $aExtraParams['query_params']; @@ -2055,7 +2055,7 @@ class DashletHeaderDynamic extends Dashlet } $oFilter = DBObjectSearch::FromOQL($sQuery, $aQueryParams); $sClass = $oFilter->GetClass(); - PanelFactory::SetClassColor($sClass, $oPanel); + PanelUIBlockFactory::SetClassColor($sClass, $oPanel); $oBlock = new DisplayBlock($oFilter, 'summary'); $sBlockId = 'block_'.$this->sId.($bEditMode ? '_edit' : ''); // make a unique id (edition occuring in the same DOM) $oBlock->DisplayIntoContentBlock($oPanel, $oPage, $sBlockId, array_merge($aExtraParams, $aParams)); diff --git a/core/attributedef.class.inc.php b/core/attributedef.class.inc.php index 9b7ac1f6a..1bdab47e1 100644 --- a/core/attributedef.class.inc.php +++ b/core/attributedef.class.inc.php @@ -17,7 +17,7 @@ * You should have received a copy of the GNU Affero General Public License */ -use Combodo\iTop\Application\UI\Base\Component\FieldBadge\FieldBadgeFactory; +use Combodo\iTop\Application\UI\Base\Component\FieldBadge\FieldBadgeUIBlockFactory; use Combodo\iTop\Form\Field\LabelField; use Combodo\iTop\Form\Field\TextAreaField; use Combodo\iTop\Form\Validator\NotEmptyExtKeyValidator; @@ -5349,14 +5349,13 @@ class AttributeEnum extends AttributeString public function GetAsHTML($sValue, $oHostObject = null, $bLocalize = true) { - if ($bLocalize) - { + if ($bLocalize) { $sLabel = $this->GetValueLabel($sValue); // $sDescription = $this->GetValueDescription($sValue); $oStyle = $this->GetStyle($sValue); // later, we could imagine a detailed description in the title // $sRes = "".parent::GetAsHtml($sLabel).""; - $oBadge = FieldBadgeFactory::MakeForField($sLabel, $oStyle); + $oBadge = FieldBadgeUIBlockFactory::MakeForField($sLabel, $oStyle); $oRenderer = new BlockRenderer($oBadge); $sRes = $oRenderer->RenderHtml(); } diff --git a/lib/composer/autoload_classmap.php b/lib/composer/autoload_classmap.php index 9ddbd541d..9a841e47a 100644 --- a/lib/composer/autoload_classmap.php +++ b/lib/composer/autoload_classmap.php @@ -165,6 +165,7 @@ return array( 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Button\\Button' => $baseDir . '/sources/application/UI/Base/Component/Button/Button.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Button\\ButtonUIBlockFactory' => $baseDir . '/sources/application/UI/Base/Component/Button/ButtonUIBlockFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\CollapsibleSection\\CollapsibleSection' => $baseDir . '/sources/application/UI/Base/Component/CollapsibleSection/CollapsibleSection.php', + 'Combodo\\iTop\\Application\\UI\\Base\\Component\\CollapsibleSection\\CollapsibleSectionUIBlockFactory' => $baseDir . '/sources/application/UI/Base/Component/CollapsibleSection/CollapsibleSectionUIBlockFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Dashlet\\DashletBadge' => $baseDir . '/sources/application/UI/Base/Component/Dashlet/DashletBadge.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Dashlet\\DashletContainer' => $baseDir . '/sources/application/UI/Base/Component/Dashlet/DashletContainer.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Dashlet\\DashletFactory' => $baseDir . '/sources/application/UI/Base/Component/Dashlet/DashletFactory.php', @@ -176,7 +177,7 @@ return array( 'Combodo\\iTop\\Application\\UI\\Base\\Component\\DataTable\\StaticTable\\FormTable\\FormTable' => $baseDir . '/sources/application/UI/Base/Component/DataTable/StaticTable/FormTable/FormTable.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\DataTable\\StaticTable\\StaticTable' => $baseDir . '/sources/application/UI/Base/Component/DataTable/StaticTable/StaticTable.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldBadge\\FieldBadge' => $baseDir . '/sources/application/UI/Base/Component/FieldBadge/FieldBadge.php', - 'Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldBadge\\FieldBadgeFactory' => $baseDir . '/sources/application/UI/Base/Component/FieldBadge/FieldBadgeFactory.php', + 'Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldBadge\\FieldBadgeUIBlockFactory' => $baseDir . '/sources/application/UI/Base/Component/FieldBadge/FieldBadgeUIBlockFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldSet\\FieldSet' => $baseDir . '/sources/application/UI/Base/Component/FieldSet/FieldSet.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldSet\\FieldSetUIBlockFactory' => $baseDir . '/sources/application/UI/Base/Component/FieldSet/FieldSetUIBlockFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Field\\Field' => $baseDir . '/sources/application/UI/Base/Component/Field/Field.php', @@ -198,7 +199,7 @@ return array( 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Input\\TextArea' => $baseDir . '/sources/application/UI/Base/Component/Input/TextArea.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Panel\\Panel' => $baseDir . '/sources/application/UI/Base/Component/Panel/Panel.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Panel\\PanelEnhanced' => $baseDir . '/sources/application/UI/Base/Component/Panel/PanelEnhanced.php', - 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Panel\\PanelFactory' => $baseDir . '/sources/application/UI/Base/Component/Panel/PanelFactory.php', + 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Panel\\PanelUIBlockFactory' => $baseDir . '/sources/application/UI/Base/Component/Panel/PanelUIBlockFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\PopoverMenu\\NewsroomMenu\\NewsroomMenu' => $baseDir . '/sources/application/UI/Base/Component/PopoverMenu/NewsroomMenu/NewsroomMenu.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\PopoverMenu\\NewsroomMenu\\NewsroomMenuFactory' => $baseDir . '/sources/application/UI/Base/Component/PopoverMenu/NewsroomMenu/NewsroomMenuFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\PopoverMenu\\PopoverMenu' => $baseDir . '/sources/application/UI/Base/Component/PopoverMenu/PopoverMenu.php', diff --git a/lib/composer/autoload_static.php b/lib/composer/autoload_static.php index b8e56e8e4..e705813b4 100644 --- a/lib/composer/autoload_static.php +++ b/lib/composer/autoload_static.php @@ -395,6 +395,7 @@ class ComposerStaticInit0018331147de7601e7552f7da8e3bb8b 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Button\\Button' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Button/Button.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Button\\ButtonUIBlockFactory' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Button/ButtonUIBlockFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\CollapsibleSection\\CollapsibleSection' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/CollapsibleSection/CollapsibleSection.php', + 'Combodo\\iTop\\Application\\UI\\Base\\Component\\CollapsibleSection\\CollapsibleSectionUIBlockFactory' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/CollapsibleSection/CollapsibleSectionUIBlockFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Dashlet\\DashletBadge' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Dashlet/DashletBadge.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Dashlet\\DashletContainer' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Dashlet/DashletContainer.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Dashlet\\DashletFactory' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Dashlet/DashletFactory.php', @@ -406,7 +407,7 @@ class ComposerStaticInit0018331147de7601e7552f7da8e3bb8b 'Combodo\\iTop\\Application\\UI\\Base\\Component\\DataTable\\StaticTable\\FormTable\\FormTable' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/DataTable/StaticTable/FormTable/FormTable.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\DataTable\\StaticTable\\StaticTable' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/DataTable/StaticTable/StaticTable.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldBadge\\FieldBadge' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/FieldBadge/FieldBadge.php', - 'Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldBadge\\FieldBadgeFactory' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/FieldBadge/FieldBadgeFactory.php', + 'Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldBadge\\FieldBadgeUIBlockFactory' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/FieldBadge/FieldBadgeUIBlockFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldSet\\FieldSet' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/FieldSet/FieldSet.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\FieldSet\\FieldSetUIBlockFactory' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/FieldSet/FieldSetUIBlockFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Field\\Field' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Field/Field.php', @@ -428,7 +429,7 @@ class ComposerStaticInit0018331147de7601e7552f7da8e3bb8b 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Input\\TextArea' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Input/TextArea.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Panel\\Panel' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Panel/Panel.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Panel\\PanelEnhanced' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Panel/PanelEnhanced.php', - 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Panel\\PanelFactory' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Panel/PanelFactory.php', + 'Combodo\\iTop\\Application\\UI\\Base\\Component\\Panel\\PanelUIBlockFactory' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/Panel/PanelUIBlockFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\PopoverMenu\\NewsroomMenu\\NewsroomMenu' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/PopoverMenu/NewsroomMenu/NewsroomMenu.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\PopoverMenu\\NewsroomMenu\\NewsroomMenuFactory' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/PopoverMenu/NewsroomMenu/NewsroomMenuFactory.php', 'Combodo\\iTop\\Application\\UI\\Base\\Component\\PopoverMenu\\PopoverMenu' => __DIR__ . '/../..' . '/sources/application/UI/Base/Component/PopoverMenu/PopoverMenu.php', diff --git a/sources/application/UI/Base/Component/CollapsibleSection/CollapsibleSectionUIBlockFactory.php b/sources/application/UI/Base/Component/CollapsibleSection/CollapsibleSectionUIBlockFactory.php new file mode 100644 index 000000000..cc4ac009c --- /dev/null +++ b/sources/application/UI/Base/Component/CollapsibleSection/CollapsibleSectionUIBlockFactory.php @@ -0,0 +1,22 @@ +GetClass(), "Result")->AddCSSClasses('ibo-datatable-panel'); + $oContainer = PanelUIBlockFactory::MakeForClass($oSet->GetClass(), "Result")->AddCSSClasses('ibo-datatable-panel'); $oContainer->AddToolbarBlock($oBlockMenu); $oContainer->AddMainBlock($oDataTable); } else { diff --git a/sources/application/UI/Base/Component/FieldBadge/FieldBadgeFactory.php b/sources/application/UI/Base/Component/FieldBadge/FieldBadgeUIBlockFactory.php similarity index 82% rename from sources/application/UI/Base/Component/FieldBadge/FieldBadgeFactory.php rename to sources/application/UI/Base/Component/FieldBadge/FieldBadgeUIBlockFactory.php index 7a9a10040..119ae1cb0 100644 --- a/sources/application/UI/Base/Component/FieldBadge/FieldBadgeFactory.php +++ b/sources/application/UI/Base/Component/FieldBadge/FieldBadgeUIBlockFactory.php @@ -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 diff --git a/sources/application/UI/Base/Component/Panel/PanelFactory.php b/sources/application/UI/Base/Component/Panel/PanelUIBlockFactory.php similarity index 94% rename from sources/application/UI/Base/Component/Panel/PanelFactory.php rename to sources/application/UI/Base/Component/Panel/PanelUIBlockFactory.php index 49de22a62..3cfa06051 100644 --- a/sources/application/UI/Base/Component/Panel/PanelFactory.php +++ b/sources/application/UI/Base/Component/Panel/PanelUIBlockFactory.php @@ -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 @@ -32,8 +33,11 @@ use ormStyle; * * @link /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 * diff --git a/sources/application/WebPage/iTopWebPage.php b/sources/application/WebPage/iTopWebPage.php index ea657af8b..c8765846b 100644 --- a/sources/application/WebPage/iTopWebPage.php +++ b/sources/application/WebPage/iTopWebPage.php @@ -21,7 +21,7 @@ use Combodo\iTop\Application\TwigBase\Twig\TwigHelper; use Combodo\iTop\Application\UI\Base\Component\Alert\AlertUIBlockFactory; use Combodo\iTop\Application\UI\Base\Component\Breadcrumbs\Breadcrumbs; -use Combodo\iTop\Application\UI\Base\Component\Panel\PanelFactory; +use Combodo\iTop\Application\UI\Base\Component\Panel\PanelUIBlockFactory; use Combodo\iTop\Application\UI\Base\iUIBlock; use Combodo\iTop\Application\UI\Base\Layout\iUIContentBlock; use Combodo\iTop\Application\UI\Base\Layout\NavigationMenu\NavigationMenuFactory; @@ -1006,7 +1006,7 @@ EOF public function AddTabContainer($sTabContainer, $sPrefix = '', iUIContentBlock $oParentBlock = null) { if(is_null($oParentBlock)) { - $oParentBlock = PanelFactory::MakeNeutral(''); + $oParentBlock = PanelUIBlockFactory::MakeNeutral(''); $this->AddUiBlock($oParentBlock); } diff --git a/test/VisualTest/Backoffice/RenderAllUiBlocks.php b/test/VisualTest/Backoffice/RenderAllUiBlocks.php index b9d3dc866..f3de48297 100644 --- a/test/VisualTest/Backoffice/RenderAllUiBlocks.php +++ b/test/VisualTest/Backoffice/RenderAllUiBlocks.php @@ -26,7 +26,7 @@ use Combodo\iTop\Application\UI\Base\Component\Alert\AlertUIBlockFactory; use Combodo\iTop\Application\UI\Base\Component\Button\ButtonUIBlockFactory; use Combodo\iTop\Application\UI\Base\Component\CollapsibleSection\CollapsibleSection; use Combodo\iTop\Application\UI\Base\Component\Html\Html; -use Combodo\iTop\Application\UI\Base\Component\Panel\PanelFactory; +use Combodo\iTop\Application\UI\Base\Component\Panel\PanelUIBlockFactory; use Combodo\iTop\Application\UI\Base\Layout\PageContent\PageContentFactory; use iTopWebPage; use LoginWebPage; @@ -132,35 +132,35 @@ $aSubBlocks = [ new Html('
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
'), ]; -$oPanel = PanelFactory::MakeNeutral('Neutral panel'); +$oPanel = PanelUIBlockFactory::MakeNeutral('Neutral panel'); $oPanel->SetSubBlocks($aSubBlocks); $oPageContentLayout->AddMainBlock($oPanel); -$oPanel = PanelFactory::MakeForInformation('Panel for information'); +$oPanel = PanelUIBlockFactory::MakeForInformation('Panel for information'); $oPanel->SetSubBlocks($aSubBlocks); $oPageContentLayout->AddMainBlock($oPanel); -$oPanel = PanelFactory::MakeForSuccess('Panel for success'); +$oPanel = PanelUIBlockFactory::MakeForSuccess('Panel for success'); $oPanel->SetSubBlocks($aSubBlocks); $oPageContentLayout->AddMainBlock($oPanel); -$oPanel = PanelFactory::MakeForWarning('Panel for warning'); +$oPanel = PanelUIBlockFactory::MakeForWarning('Panel for warning'); $oPanel->SetSubBlocks($aSubBlocks); $oPageContentLayout->AddMainBlock($oPanel); -$oPanel = PanelFactory::MakeForDanger('Panel for danger'); +$oPanel = PanelUIBlockFactory::MakeForDanger('Panel for danger'); $oPanel->SetSubBlocks($aSubBlocks); $oPageContentLayout->AddMainBlock($oPanel); -$oPanel = PanelFactory::MakeForFailure('Panel for failure'); +$oPanel = PanelUIBlockFactory::MakeForFailure('Panel for failure'); $oPanel->SetSubBlocks($aSubBlocks); $oPageContentLayout->AddMainBlock($oPanel); -$oPanel = PanelFactory::MakeWithBrandingPrimaryColor('Panel with branding primary color'); +$oPanel = PanelUIBlockFactory::MakeWithBrandingPrimaryColor('Panel with branding primary color'); $oPanel->SetSubBlocks($aSubBlocks); $oPageContentLayout->AddMainBlock($oPanel); -$oPanel = PanelFactory::MakeWithBrandingSecondaryColor('Panel with branding secondary color'); +$oPanel = PanelUIBlockFactory::MakeWithBrandingSecondaryColor('Panel with branding secondary color'); $oPanel->SetSubBlocks($aSubBlocks); $oPageContentLayout->AddMainBlock($oPanel);