News can now be non-public
This commit is contained in:
@@ -3,20 +3,28 @@
|
||||
namespace KekRozsak\FrontBundle\Twig;
|
||||
|
||||
use Symfony\Bridge\Doctrine\RegistryInterface;
|
||||
use Symfony\Component\Security\Core\SecurityContextInterface;
|
||||
use Symfony\Component\Security\Core\Authentication\Token\AnonymousToken;
|
||||
|
||||
class NewsExtension extends \Twig_Extension
|
||||
{
|
||||
protected $doctrine;
|
||||
protected $_doctrine;
|
||||
protected $_securityContext;
|
||||
|
||||
public function __construct(RegistryInterface $doctrine)
|
||||
public function __construct(RegistryInterface $doctrine, SecurityContextInterface $securityContext)
|
||||
{
|
||||
$this->doctrine = $doctrine;
|
||||
$this->_doctrine = $doctrine;
|
||||
$this->_securityContext = $securityContext;
|
||||
}
|
||||
|
||||
public function getGlobals()
|
||||
{
|
||||
$newsRepo = $this->doctrine->getRepository('KekRozsakFrontBundle:News');
|
||||
$news = $newsRepo->findBy(array(), array('createdAt' => 'DESC'), 4);
|
||||
$newsRepo = $this->_doctrine->getRepository('KekRozsakFrontBundle:News');
|
||||
$searchCriteria = array();
|
||||
if (!$this->_securityContext->getToken() instanceof Symfony\Component\Security\Core\Authentication\Token\AnonymousToken)
|
||||
$searchCriteria['public'] = true;
|
||||
|
||||
$news = $newsRepo->findBy($searchCriteria, array('createdAt' => 'DESC'), 4);
|
||||
|
||||
return array(
|
||||
'recentNews' => $news,
|
||||
|
Reference in New Issue
Block a user