src/Controller/AdminController.php line 27

  1. <?php
  2. namespace App\Controller;
  3. use App\Services\AdminService;
  4. use App\Services\StateService;
  5. use Psr\EventDispatcher\EventDispatcherInterface;
  6. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  7. use Symfony\Component\EventDispatcher\GenericEvent;
  8. use Symfony\Component\HttpFoundation\JsonResponse;
  9. use Symfony\Component\HttpFoundation\Request;
  10. use Symfony\Component\HttpFoundation\Response;
  11. use Symfony\Component\Routing\Annotation\Route;
  12. class AdminController extends AbstractController
  13. {
  14.     private $adminService;
  15.     public function __construct(AdminService $adminService)
  16.     {
  17.         $this->adminService $adminService;
  18.     }
  19.     #[Route(path'/'name'app_admin_index')]
  20.     public function index(Request $request): Response
  21.     {
  22.         $socialMediaCounts $this->adminService->countSocialMedia();
  23.         $startDate $request->query->get('start_date');
  24.         $endDate $request->query->get('end_date');     
  25.         $logData $this->adminService->getLogData($startDate$endDate);
  26.         return $this->render('admin/main.html.twig', [
  27.             'socialMediaCounts' => $socialMediaCounts,
  28.             'logData' => $logData,
  29.         ]);
  30.     }
  31.     #[Route('/export-log-data'name'app_export_log_data'methods: ['POST'])]
  32.     public function exportLogData(Request $requestStateService $stateService): Response
  33.     {
  34.         $startDate $request->request->get('start_date');
  35.         $endDate $request->request->get('end_date');
  36.         $stateService->sendStatData($startDate$endDate);
  37.         return new JsonResponse(['status' => 'success']);
  38.     }
  39.     
  40.     #[Route('/avatar/'name'avatar_url_generator'methods: ['GET'])]
  41.     public function generateAvatarUrl(Request $request)
  42.     {
  43.         return  null;
  44.     }
  45. }