/** * Returns true if passed user is currently authenticated * * @param UserInterface $user * @return bool */ protected function isCurrentUser(UserInterface $user) { $token = $this->tokenStorage->getToken(); $currentUser = $token ? $token->getUser() : null; if ($user->getId() && is_object($currentUser)) { return $currentUser->getId() == $user->getId(); } return false; }
/** * {@inheritdoc} */ public function findDatagridViewBySearch(UserInterface $user, $alias, $term = '', array $options = []) { $options += ['limit' => 20, 'page' => 1]; $offset = (int) $options['limit'] * ((int) $options['page'] - 1); $qb = $this->createQueryBuilder('v')->where('v.owner = :user_id OR v.type = :type')->setParameter('user_id', $user->getId())->setParameter('type', DatagridView::TYPE_PUBLIC)->andWhere('v.datagridAlias = :alias')->setParameter('alias', $alias)->andWhere('v.label LIKE :term')->setParameter('term', sprintf('%%%s%%', $term))->setMaxResults((int) $options['limit'])->setFirstResult($offset); return $qb->getQuery()->execute(); }
function it_normalizes_a_datagrid_view(DatagridView $view, UserInterface $user) { $user->getId()->willReturn(666); $view->getId()->willReturn(42); $view->getOwner()->willReturn($user); $view->getLabel()->willReturn('Cameras'); $view->getType()->willReturn('public'); $view->getDatagridAlias()->willReturn('product-grid'); $view->getColumns()->willReturn(['sku', 'name', 'brand']); $view->getFilters()->willReturn('i=1&p=10&s%5Bupdated%5D=1&f%5Bfamily%5D%5Bvalue%5D%5B%5D=mugs'); $view->getOrder()->willReturn('sku,name,brand'); $this->normalize($view, 'json')->shouldReturn(['id' => 42, 'owner_id' => 666, 'label' => 'Cameras', 'type' => 'public', 'datagrid_alias' => 'product-grid', 'columns' => ['sku', 'name', 'brand'], 'filters' => 'i=1&p=10&s%5Bupdated%5D=1&f%5Bfamily%5D%5Bvalue%5D%5B%5D=mugs']); }
/** * Validate permissions on pinbar * * @param UserInterface $user * @return bool */ protected function validatePermissions(UserInterface $user) { return $user->getId() == ($this->getUser() ? $this->getUser()->getId() : 0); }
/** * {@inheritdoc} */ public function findDatagridViewByUserAndAlias(UserInterface $user, $alias) { return $this->createQueryBuilder('v')->where('v.owner = :user_id')->andWhere('v.datagridAlias = :alias')->setParameters(['user_id' => $user->getId(), 'alias' => $alias]); }