<?php
namespace App\Entity\Pages;
use Doctrine\ORM\Mapping as ORM;
use Kunstmaan\NodeBundle\Entity\AbstractPage;
use Kunstmaan\NodeBundle\Entity\HomePageInterface;
use Kunstmaan\NodeSearchBundle\Helper\SearchTypeInterface;
use Kunstmaan\PagePartBundle\Helper\HasPageTemplateInterface;
use Symfony\Component\Form\AbstractType;
use App\Form\Pages\HomePageAdminType;
use App\Entity\Pages\InscriptionsContentPage;
#[ORM\Entity()]
#[ORM\Table(name: 'app_home_pages')]
class HomePage extends AbstractPage implements HasPageTemplateInterface, SearchTypeInterface, HomePageInterface
{
public function getDefaultAdminType(): string
{
return HomePageAdminType::class;
}
public function getPossibleChildTypes(): array
{
return [
array(
'name' => 'PartenariatPage',
'class' => 'App\Entity\Pages\PartenariatPage'
),
array(
'name' => 'AncreContentPage',
'class'=> 'App\Entity\Pages\AncreContentPage'
),
array(
'name' => 'PublicationPage',
'class'=> 'App\Entity\Pages\PublicationPage'
),
array(
'name' => 'InscriptionsContentPage',
'class'=> InscriptionsContentPage::class
),
array(
'name' => 'NewsOverviewPage',
'class'=> 'App\Entity\Pages\NewsOverviewPage'
),
array(
'name' => 'FormationsOverviewPage',
'class'=> 'App\Entity\Pages\FormationsOverviewPage'
),
array(
'name' => 'ContentPage',
'class' => 'App\Entity\Pages\ContentPage'
),
array(
'name' => 'Search Page',
'class'=> 'App\Entity\Pages\SearchPage'
),
array(
'name' => 'Kinu',
'class'=> 'App\Entity\Pages\KinuPage'
),
array(
'name' => 'Item',
'class'=> 'App\Entity\Pages\ItemOverviewPage'
),
];
}
public function getPagePartAdminConfigurations(): array
{
return ['main'];
}
public function getPageTemplates(): array
{
return ['homepage'];
}
public function getDefaultView(): string
{
return 'Pages/HomePage/view.html.twig';
}
public function getSearchType(): string
{
return 'Home';
}
}