src/Controller/PagesController.php line 40

  1. <?php
  2. namespace App\Controller;
  3. use App\Bundles\UptimeRobot\Api;
  4. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  5. use Symfony\Component\HttpFoundation\Request;
  6. use Symfony\Component\HttpFoundation\Response;
  7. use Symfony\Component\Routing\Annotation\Route;
  8. class PagesController extends AbstractController
  9. {
  10.     #[Route('/'name'app_homepage')]
  11.     public function index(): Response
  12.     {
  13.         $data = [
  14.             'pageTitle' => 'Web Hosting in Wales, UK | Little Welsh Hosting Company',
  15.             'pageDescription' => "Wales' newest Web Hosting provider. Top UK-based support, unlimited bandwidth and cPanel control panel. PCI Compliant hosting, VPS & Dedicated hosting.",
  16.         ];
  17.         return $this->render('pages/homepage.html.twig', [
  18.             'data' => $data
  19.         ]);
  20.     }
  21.     #[Route('/cy/'name'app_welsh')]
  22.     public function welsh(): Response
  23.     {
  24.         $data = [
  25.             'pageTitle' => 'Croeso i Gymraeg | Little Welsh Hosting Company',
  26.             'pageDescription' => '',
  27.         ];
  28.         return $this->render('pages/welsh.html.twig', [
  29.             'data' => $data
  30.         ]);
  31.     }
  32.     #[Route('/privacy-policy'name'app_privacy')]
  33.     public function privacy(): Response
  34.     {
  35.         $data = [
  36.             'pageTitle' => 'Privacy Policy | Little Welsh Hosting Company',
  37.             'pageDescription' => '',
  38.         ];
  39.         return $this->render('pages/privacy.html.twig', [
  40.             'data' => $data,
  41.         ]);
  42.     }
  43.     #[Route('/terms-conditions'name'app_terms')]
  44.     public function terms(): Response
  45.     {
  46.         $data = [
  47.             'pageTitle' => 'Terms & Conditions | Little Welsh Hosting Company',
  48.             'pageDescription' => '',
  49.         ];
  50.         return $this->render('pages/terms.html.twig', [
  51.             'data' => $data,
  52.         ]);
  53.     }
  54.     /**
  55.      * @throws \Exception
  56.      */
  57.     #[Route('/stats'name'app_stats')]
  58.     public function stats(Request $request)
  59.     {
  60.         $data = [
  61.             'pageTitle' => 'Our Statistics | Little Welsh Hosting Company',
  62.             'pageDescription' => '',
  63.         ];
  64.         $config = [
  65.             'apiKey' => $request->server->get('UPTIME_ROBOT_APIKEY'),
  66.             'url' => 'https://api.uptimerobot.com/v2'
  67.         ];
  68.         $api = new API($config);
  69.         $args = [];
  70.         $results $api->request('/getMonitors'$args);
  71.         return $this->render('pages/stats.html.twig', [
  72.             'data' => $data,
  73.             'uptime' => $results
  74.         ]);
  75.     }
  76.     #[Route('/green'name'app_green')]
  77.     public function green()
  78.     {
  79.         $data = [
  80.             'pageTitle' => 'Our Green Web Hosting Pledge | Little Welsh Hosting Company',
  81.             'pageDescription' => '',
  82.         ];
  83.         return $this->render('pages/green.html.twig', [
  84.             'data' => $data,
  85.         ]);
  86.     }
  87. }