/** * @param object $object * @param string|null $action * * @return array */ public function getActionParams($object, $action = null) { if (!is_object($object)) { return []; } return $this->entityRoutingHelper->getRouteParameters($this->getClassName($object, true), $this->entityIdAccessor->getIdentifier($object), $action); }
public function testGetIdentifier() { $doctrineHelper = $this->getMockBuilder('Oro\\Bundle\\EntityBundle\\ORM\\DoctrineHelper')->disableOriginalConstructor()->getMock(); $accessor = new EntityIdAccessor($doctrineHelper); $entity = new TestEntity(); $entityId = 123; $doctrineHelper->expects($this->once())->method('getSingleEntityIdentifier')->with($this->identicalTo($entity))->will($this->returnValue($entityId)); $this->assertEquals($entityId, $accessor->getIdentifier($entity)); }
/** * {@inheritdoc} */ public function getWidgets($object) { $result = []; $entityClass = ClassUtils::getClass($object); $entityId = $this->entityIdAccessor->getIdentifier($object); $items = $this->activityManager->getActivityAssociations($entityClass); foreach ($items as $item) { if (empty($item['acl']) || $this->securityFacade->isGranted($item['acl'])) { $url = $this->entityRoutingHelper->generateUrl($item['route'], $entityClass, $entityId); $alias = sprintf('%s_%s_%s', strtolower(ExtendHelper::getShortClassName($item['className'])), dechex(crc32($item['className'])), $item['associationName']); $widget = ['widgetType' => 'block', 'alias' => $alias, 'label' => $this->translator->trans($item['label']), 'url' => $url]; if (isset($item['priority'])) { $widget['priority'] = $item['priority']; } $result[] = $widget; } } return $result; }