<?php
namespace App\Entity\Pages;
use App\Form\Pages\NewsOverviewPageAdminType;
use Doctrine\ORM\Mapping as ORM;
use Kunstmaan\NodeSearchBundle\Helper\SearchTypeInterface;
use Kunstmaan\PagePartBundle\Helper\HasPageTemplateInterface;
use Kunstmaan\NodeBundle\Controller\SlugActionInterface;
use Kunstmaan\ArticleBundle\Entity\AbstractArticleOverviewPage;
use Kunstmaan\NodeBundle\Helper\RenderContext;
use Kunstmaan\PagePartBundle\PagePartAdmin\AbstractPagePartAdminConfigurator;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Form\AbstractType;
use App\Repository\NewsOverviewPageRepository;
#[ORM\Entity(repositoryClass: NewsOverviewPageRepository::class)]
#[ORM\Table(name: 'app_news_overview_pages')]
class NewsOverviewPage extends AbstractArticleOverviewPage implements HasPageTemplateInterface, SearchTypeInterface
{
/**
* @return AbstractPagePartAdminConfigurator[]
*/
public function getPagePartAdminConfigurations()
{
return array('newsmain');
}
public function getPageTemplates()
{
return array('newsoverviewpage');
}
/**
* @param \Doctrine\ORM\EntityManagerInterface $em
*
* @return \Doctrine\Common\Persistence\ObjectRepository
*/
public function getArticleRepository($em)
{
return $em->getRepository(NewsPage::class);
}
/**
* @return string
*/
public function getDefaultView()
{
return 'Pages/NewsOverviewPage/view.html.twig';
}
/**
* {@inheritdoc}
*/
public function getSearchType()
{
return 'News';
}
/**
* Returns the default backend form type for this page
*
* @return string
*/
public function getDefaultAdminType()
{
return NewsOverviewPageAdminType::class;
}
/**
* @return string
*
*/
public function getControllerAction()
{
return 'NewsArticle:service';
}
}