<?php
namespace App\Controller;
use App\Service\DataTableService;
use App\Service\RESTApiService;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class HomeController extends AbstractController
{
/**
* @Route("/", name="home")
*/
public function home(): Response
{
if(null != $this->getUser())
return $this->redirectToRoute('enseigne_list');
return $this->render('home/home.html.twig');
}
/**
* @Route("/admin/home", name="admin_home")
*/
public function index(): Response
{
return $this->render('home/index.html.twig', [
'controller_name' => 'HomeController',
]);
}
/**
* @Route("/admin/table", name="admin_table")
*/
public function table(Request $request, DataTableService $dtService): Response {
$tableEntity = $request->get('tableEntity');//"\App\Table\Instance";
$tableName = $request->get('tableName');
$columns = $dtService->getDisplayData(["tableEntity" => $tableEntity, "tableName" => $tableName]);dump($columns);
return $this->render('home/table.html.twig', ["tableEntity" => $tableEntity, "tableName" => $tableName, "columns" => $columns]);
}
/**
* @Route("/admin/tabledetail", name="admin_table_detail")
*/
public function tableDetail(Request $request, DataTableService $dtService): Response {
$tableEntity = $request->get('tableEntity');//"\App\Table\Instance";
$tableName = $request->get('tableName');
$data = $dtService->getResult(["tableEntity" => $tableEntity, "tableName" => $tableName, "request" => $request]);
return new JsonResponse($data);
}
/**
* @Route("/admin/generateApiKey", name="admin_generate_api_key")
*/
public function generateApiKey(RESTApiService $rapiservice): Response {
return new Response($rapiservice->generateRandomApiToken());
}
}