/test/VisualTest/Backoffice/RenderAllUiBlocks.php#title-panels to see live examples */ class BasketUIBlockFactory extends AbstractUIBlockFactory { /** @inheritDoc */ public const TWIG_TAG_NAME = 'UIBasket'; /** @inheritDoc */ public const UI_BLOCK_CLASS_NAME = Basket::class; /** * Make a basis Panel component * * @api * * @return \Combodo\iTop\Application\UI\Base\Component\Basket */ public static function MakeStandard($oObject, string $sFilter, string $sClass, array $aList = [], string $sBackUrl = '', $sPostedFieldsForBackUrl = "") { if (utils::IsNotNullOrEmptyString($sFilter) && count($aList) === 0) { $oBasketFilter = DBObjectSearch::FromOQL($sFilter); $oSet = new DBObjectSet($oBasketFilter); $aList = $oSet->GetColumnAsArray('id', false); if (utils::IsNullOrEmptyString($sClass)) { $sClass = $oBasketFilter->GetClass(); } } if (utils::IsNullOrEmptyString($sClass)) { $oBasketFilter = DBObjectSearch::FromOQL($sFilter); $sClass = $oBasketFilter->GetClass(); } if (count($aList) === 0) { return null; } $iIdx = array_search($oObject->GetKey(), $aList); $oNavigationBlock = new Basket($sClass, $iIdx, $aList, $sFilter, $sBackUrl, $sPostedFieldsForBackUrl); return $oNavigationBlock; } }