Ejemplo n.º 1
0
 public function testGetGridReturnsNullWhenDontHavePermissions()
 {
     $gridName = 'test-grid';
     $acl = 'test-acl';
     $configuration = $this->getMockBuilder('Oro\\Bundle\\DataGridBundle\\Datagrid\\Common\\DatagridConfiguration')->disableOriginalConstructor()->getMock();
     $configuration->expects($this->once())->method('getAclResource')->will($this->returnValue($acl));
     $this->manager->expects($this->once())->method('getConfigurationForGrid')->with($gridName)->will($this->returnValue($configuration));
     $this->securityFacade->expects($this->once())->method('isGranted')->with($acl)->will($this->returnValue(false));
     $this->assertNull($this->twigExtension->getGrid($gridName));
 }
Ejemplo n.º 2
0
 /**
  * @param string $gridName
  *
  * @return bool
  */
 protected function isAclGrantedForGridName($gridName)
 {
     $gridConfig = $this->manager->getConfigurationForGrid($gridName);
     if ($gridConfig) {
         $aclResource = $gridConfig->getAclResource();
         if ($aclResource && !$this->securityFacade->isGranted($aclResource)) {
             return false;
         } else {
             return true;
         }
     }
     return false;
 }
Ejemplo n.º 3
0
 /**
  * @param string $gridName
  *
  * @return bool
  */
 protected function isAclGrantedForGridName($gridName)
 {
     $gridConfig = $this->manager->getConfigurationForGrid($gridName);
     if ($gridConfig) {
         $acl = $gridConfig->offsetGetByPath(Builder::DATASOURCE_ACL_PATH);
         $aclSKip = $gridConfig->offsetGetByPath(Builder::DATASOURCE_SKIP_ACL_CHECK, false);
         if (!$aclSKip && $acl && !$this->securityFacade->isGranted($acl)) {
             return false;
         } else {
             return true;
         }
     }
     return false;
 }
 /**
  * Get mass action from mass action and datagrid names
  *
  * @param string $actionName
  * @param string $datagridName
  *
  * @return \Oro\Bundle\DataGridBundle\Extension\MassAction\Actions\MassActionInterface
  *
  * TODO: Need some clean up and optimization
  */
 public function getMassActionByNames($actionName, $datagridName)
 {
     $datagrid = $this->manager->getDatagrid($datagridName);
     return $this->getMassActionByName($actionName, $datagrid);
 }