<?php
namespace App\Controller\Admin;
use App\Entity\Category;
use App\Entity\ClinicalQuestion\ClinicalQuestion;
use App\Entity\Consultation\BreedTag;
use App\Entity\Consultation\Report;
use App\Entity\Consultation\ReportCategory;
use App\Entity\DiseaseTag;
use App\Entity\Literature\Journal;
use App\Entity\Literature\Literature;
use App\Entity\Literature\MailMagazineCategory;
use App\Entity\Literature\MailMagazineCommentaryTag;
use App\Entity\Literature\ResearchDesignDisplayTag;
use App\Entity\Literature\ResearchDesignTag;
use App\Entity\MemberTag;
use App\Entity\SpeciesDisplayTag;
use App\Entity\SpeciesTag;
use App\Entity\TumorTag;
use App\Entity\User;
use EasyCorp\Bundle\EasyAdminBundle\Config\Crud;
use EasyCorp\Bundle\EasyAdminBundle\Config\Dashboard;
use EasyCorp\Bundle\EasyAdminBundle\Config\MenuItem;
use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractDashboardController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class DashboardController extends AbstractDashboardController
{
/**
* @Route("/admin", name="admin")
*/
public function index(): Response
{
return $this->render('admin/index.html.twig', [
]);
}
public function configureDashboard(): Dashboard
{
return Dashboard::new()
->setTitle('NVC データベース 管理画面')
->setTranslationDomain('admin')
->renderContentMaximized()
;
}
public function configureCrud(): Crud
{
return parent::configureCrud()
// ->setDateFormat('Y-M-d')
->setTimeFormat('H:i:s')
// ->addFormTheme('@Dropzone/form_theme.html.twig')
// ->addFormTheme('@XeartsCkeditor5/form_theme.html.twig')
;
}
public function configureMenuItems(): iterable
{
yield MenuItem::linktoDashboard('Dashboard', 'fa fa-home');
yield MenuItem::linkToCrud('Literature', 'fa fa-book', Literature::class);
yield MenuItem::linkToCrud('Journal', 'fa fa-newspaper', Journal::class);
yield MenuItem::linkToCrud('Report', 'fa fa-file-medical', Report::class);
yield MenuItem::linkToCrud('ClinicalQuestion', 'fa fa-question-circle', ClinicalQuestion::class);
yield MenuItem::linkToCrud('User', 'fa fa-users', User::class)
->setPermission('ROLE_SUPER_ADMIN')
;
yield MenuItem::subMenu('Tags', 'fa fa-tags')
->setSubItems([
MenuItem::linkToCrud('Category', 'fa fa-tag', Category::class),
MenuItem::linkToCrud('SpeciesDisplayTag', 'fa fa-tag', SpeciesDisplayTag::class),
MenuItem::linkToCrud('SpeciesTag', 'fa fa-tag', SpeciesTag::class),
MenuItem::linkToCrud('DiseaseTag', 'fa fa-tag', DiseaseTag::class),
MenuItem::linkToCrud('TumorTag', 'fa fa-tag', TumorTag::class),
MenuItem::linkToCrud('ResearchDesignDisplayTag', 'fa fa-tag', ResearchDesignDisplayTag::class),
MenuItem::linkToCrud('ResearchDesignTag', 'fa fa-tag', ResearchDesignTag::class),
MenuItem::linkToCrud('MemberTag', 'fa fa-tag', MemberTag::class),
MenuItem::linkToCrud('メルマガ分類', 'fa fa-tag', MailMagazineCategory::class),
MenuItem::linkToCrud('メルマガコメンタリー', 'fa fa-tag', MailMagazineCommentaryTag::class),
MenuItem::linkToCrud('ReportCategory', 'fa fa-tag', ReportCategory::class),
MenuItem::linkToCrud('品種', 'fa fa-tag', BreedTag::class),
])
;
}
}