templates/front/index.html.twig line 1

Open in your IDE?
  1. {% extends 'base_front.html.twig' %}
  2. {% block body %}
  3.     <section id="letsRace" class="overflow-hidden">
  4.         <div class="bg-header js-parallax" style="background:linear-gradient(
  5.             135deg,
  6.             rgba(0, 0, 0, 0.8),
  7.             transparent, transparent
  8.     ), url({{ '/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ nextRace.backgroundImage }})no-repeat center bottom;background-size:cover;">
  9.             <div class="container-1500">
  10.                 <div class="row col-md-12 position-relative">
  11.                     <div class="col-md-5 col-lg-5 col-xl-4 col-xxl-4 max-w-500">
  12.                         <div class="next-race-block d-flex flex-column">
  13.                             {% if app.user %}
  14.                                 <h2><a href="{{ path('admin_next_race_edit', {'id': nextRace.id}) }}"><i class="fas fa-pencil-alt"></i></a></h2>
  15.                             {% endif %}
  16.                             {% if nextRace.isValid %}
  17.                             <div class="border-to-left-red title white bg-red position-relative">
  18.                                 <h2 class="ps-5 pt-1">Next Race</h2>
  19.                             </div>
  20.                             <div class="ps-4">
  21.                                 <div class="detail-next p-4">
  22.                                     <h3 class="white text-uppercase">{{ nextRace.racingName }}<br> {{ nextRace.country }}</h3>
  23.                                     <h3 class="black text-uppercase white">{{ nextRace.atDate|format_datetime(locale='fr', pattern="dd MMMM YYYY") }} - {{ nextRace.atDate|date('H:i') }}</h3>
  24.                                     <img src="{{ '/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ nextRace.image }}">
  25.                                     {% set difference = date(nextRace.atDate|date('m/d H:i')).diff(date('now'|date('m/d H:i'))) %}
  26.                                     <div class="d-flex justify-content-between pt-4">
  27.                                         <div class="col-md-3 time bg-white pt-2 pl-1 pr-1">
  28.                                             <span>{{ difference.d }}</span><br>
  29.                                             Jours
  30.                                         </div>
  31.                                         <div class="col-md-3 time bg-white pt-2 pl-1 pr-1">
  32.                                             <span>{{ difference.h }}</span><br>
  33.                                             Heures
  34.                                         </div>
  35.                                         <div class="col-md-3 time bg-white pt-2 pl-1 pr-1">
  36.                                             <span>{{ difference.i }}</span><br>
  37.                                             Minutes
  38.                                         </div>
  39.                                     </div>
  40.                                 </div>
  41.                             </div>
  42.                             {% endif %}
  43.                         </div>
  44.                     </div>
  45.                 </div>
  46.             </div>
  47.             <div class="big-title position-absolute">
  48.                 <h1 class="white">Let’s race.</h1>
  49.                 <div class="social w-25 d-flex justify-content-between m-auto">
  50.                     <a target="_blank" href="https://twitter.com/dylanpereiralu"><img src="{{ asset('img/icon-twitter.svg') }}"></a>
  51.                     <a target="_blank" href="https://www.instagram.com/dylanpereiraofficial/"><img src="{{ asset('img/icon-instagram.svg') }}"></a>
  52.                     <a target="_blank" href="https://www.facebook.com/dylanpereiramotorsportfanpage/"><img src="{{ asset('img/icon-facebook.svg') }}"></a>
  53.                 </div>
  54.             </div>
  55.         </div>
  56.     </section>
  57.     <section id="about" class="position-relative">
  58.         <div class="row w-100">
  59.             <div class="col-md-6 img-section position-relative" style="background:url({{ asset('/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ aboutDescription.imageSection) }})no-repeat center;background-size:cover">
  60.                 <div class="parallelogram toright bg-yellow"></div>
  61.                 <div class="cut-section-right position-absolute bg-white"></div>
  62.             </div>
  63.             <div class="col-md-6 col-xl-6 col-xxl-5 container-750 d-flex justify-content-end ps-5">
  64.                 <div class="w-100 mt-5 block-about">
  65.                     <div class="title-section">
  66.                         <h2 class="ps-5">About</h2>
  67.                         <div class="sub-border ps-5">
  68.                             <div class="bg-black"></div>
  69.                             <div class="border-to-right-red bg-red"></div>
  70.                         </div>
  71.                         <ul class="mt-5">
  72.                             <li><h4 class="ps-5 pt-2 pb-2 text-uppercase" id="aboutPresentation">Presentation</h4></li>
  73.                             <li class="active"><h4 class="ps-5 pt-2 pb-2 text-uppercase" id="aboutDescription">Description</h4></li>
  74.                         </ul>
  75.                         <div class="presentation-description mt-5 ps-5">
  76.                             <div class="col-md-12" id="presentation" style="display: none;">
  77.                                 {% if app.user %}
  78.                                     <a href="{{ path('admin_block_title_description_edit', {'id': aboutPresentation.id}) }}"><i class="fas fa-pencil-alt"></i></a>
  79.                                 {% endif %}
  80.                                 {% for line in aboutPresentation.linesTable %}
  81.                                     <div class="col-md-12 d-flex border-bottom {% if not loop.first%}pt-2{% endif %} pb-2">
  82.                                         <div class="col-md-6">{{ line.title }}</div>
  83.                                         <div class="col-md-6">{{ line.description }}</div>
  84.                                     </div>
  85.                                 {% endfor %}
  86.                             </div>
  87.                             <div class="col-md-12 position-relative" id="description">
  88.                                 {% if app.user %}
  89.                                     <a href="{{ path('admin_block_title_description_edit', {'id': aboutDescription.id}) }}"><i class="fas fa-pencil-alt"></i></a>
  90.                                 {% endif %}
  91.                                 <p>{{ aboutDescription.description|raw }}</p>
  92.                             </div>
  93.                         </div>
  94.                     </div>
  95.                 </div>
  96.             </div>
  97.         </div>
  98.     </section>
  99.     <section id="quote">
  100.         <img src="{{ asset('img/quote-left.png') }}" class="position-absolute">
  101.         <div class="filter-bg position-absolute"></div>
  102.         <div class="bg-quote"></div>
  103.         <div class="container-text">
  104.             <h3 class="white m-auto">Racing, competing, it’s in my blood.<br>
  105.                 It’s part of me, it’s part of my life;<br>
  106.                 I have been doing it all my life and it<br>
  107.                 stands out above everything else.
  108.             </h3>
  109.             <h3 class="white">—Ayrton Senna</h3>
  110.         </div>
  111.         <img src="{{ asset('img/quote-left.png') }}" class="position-absolute">
  112.     </section>
  113.     <section id="cup" class="bg-black">
  114.         <div id="containerMaster">
  115.             <div class="row col-md-12 container-1500 m-auto d-flex justify-content-between first-block">
  116.                 <div class="col-md-6">
  117.                     {% set race = races.0 %}
  118.                     <div class="cup-type d-flex">
  119.                         {% for raceTitle in races %}
  120.                             <div class="title-cup {% if loop.first %}active{% endif %}">
  121.                                 <a href="#cup" class="race-link" onclick="loadRace({{ raceTitle.id }})"><h4>{{ raceTitle.name }}</h4></a>
  122.                                 {% if loop.first %}
  123.                                     <div class="sub-border">
  124.                                         <div class="bg-white"></div>
  125.                                         <div class="border-to-right-red bg-red"></div>
  126.                                     </div>
  127.                                 {% endif %}
  128.                             </div>
  129.                         {% endfor %}
  130.                     </div>
  131.                     {% if app.user %}
  132.                         <h2><a href="{{ path('admin_race_edit', {'id': race.id}) }}"><i class="fas fa-pencil-alt"></i></a></h2>
  133.                     {% endif %}
  134.                     <div class="desc-cup mt-5">
  135.                         <div class="white">{{ race.description|raw }}</div>
  136.                     </div>
  137.                 </div>
  138.                 <div class="col-md-5">
  139.                     <div class="col-md-12 d-flex justify-content-end video">
  140.                         {{ race.video|raw }}
  141.                     </div>
  142.                 </div>
  143.             </div>
  144.             <div class="row container-1500 m-auto mt-5 d-flex justify-content-between">
  145.                 <div class="col-md-5">
  146.                     {% if race.years is empty and app.user %}
  147.                         <a href="{{ path('admin_race_line_table_add', {'id': race.id}) }}" class="ml-3"><i class="fas fa-plus-circle" title="Ajouter une année"></i></a>
  148.                     {% endif %}
  149.                     {% if race.years is not empty %}
  150.                         <div id="formSaison" class="pb-2">
  151.                             <div id="saisonResult" class="pb-2 pt-2 ps-4">
  152.                                 <span>Racing Season {{ race.years.first.name }}</span>
  153.                             </div>
  154.                         </div>
  155.                         <div id="containerLineTableRace" class="position-relative">
  156.                             <script>
  157.                                 let raceIdToStart = "{{ race.years.first.id }}";
  158.                             </script>
  159.                         </div>
  160.                     {% endif %}
  161.                 </div>
  162.                 {% if race.carImg %}
  163.                     <div class="col-md-5">
  164.                         <div id="formSaison" class="pb-2 ps-4">
  165.                             <div id="saisonCar" class="pb-2 pt-2 ps-4">
  166.                                 <span>The car</span>
  167.                             </div>
  168.                         </div>
  169.                         <div class="img-the-car">
  170.                             <img src="{{ asset('/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ race.carImg) }}" alt="the car">
  171.                         </div>
  172.                         <div class="technical-file">
  173.                             <div class="col-md-12 link-insta mt-5 text-center">
  174.                                 <a target="_blank" href="{{ '/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ race.technicalFile }}" class="bg-red white">Technical file</a>
  175.                             </div>
  176.                         </div>
  177.                     </div>
  178.                 {% endif %}
  179.             </div>
  180.         </div>
  181.     </section>
  182.     <section id="results" class="overflow-hidden">
  183.         <div class="row w-100 m-0">
  184.             <div class="col-md-6 col-xl-6 col-xxl-6 d-flex justify-content-end align-items-center">
  185.                 <div class="mt-5 container-750">
  186.                     <div class="title-section">
  187.                         <div class="col-md-6">
  188.                             <h2>Results {% if app.user %}<a href="{{ path('admin_year_add', {'section': 'results'}) }}"><i class="fas fa-plus-circle" title="Ajouter une année"></i></a>{% endif %} </h2>
  189.                             <div class="sub-border">
  190.                                 <div class="bg-black"></div>
  191.                                 <div class="border-to-right-red bg-red"></div>
  192.                             </div>
  193.                             <form class="col-xxl-6 mt-5 position-relative" id="formYear">
  194.                                 <select name="years" id="yearResult" class="pb-2 pt-2 ps-4">
  195.                                     {% for result in results %}
  196.                                         <option value="{{ result.id }}">Saison {{ result.subSection|date('Y') }}</option>
  197.                                     {% endfor %}
  198.                                 </select>
  199.                                 <img src="{{ asset('img/arrow-bottom.svg') }}">
  200.                             </form>
  201.                         </div>
  202.                         <div class="col-md-12 mt-5" id="containerResults">
  203.                             {% if app.user %}
  204.                                 <h3>{{ results.0.name }} <a href="{{ path('admin_year_edit', {'id': results.0.id}) }}"><i class="fas fa-pencil-alt"></i></a></h3>
  205.                             {% endif %}
  206.                             <table class="mt-4">
  207.                                 {% for line in results.0.lineTables %}
  208.                                     <tr>
  209.                                         <td>{{ line.title }}</td>
  210.                                         <td>{{ line.description|raw }}</td>
  211.                                     </tr>
  212.                                 {% endfor %}
  213.                             </table>
  214.                         </div>
  215.                     </div>
  216.                 </div>
  217.             </div>
  218.             <div class="col-md-6 col-xl-6 col-xxl-6 img-section position-relative" style="background:url({{ asset('/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ results.0.raceImg) }})no-repeat center;background-size:cover">
  219.                 <div class="parallelogram toleft bg-green"></div>
  220.                 <div class="cut-section-left position-absolute bg-white"></div>
  221.             </div>
  222.         </div>
  223.     </section>
  224.     <section id="gallery">
  225.         <div class="container-1500">
  226.             <div class="title-section">
  227.                 <div class="col-md-1 m-auto">
  228.                     <h2>Gallery</h2>
  229.                     <div class="sub-border">
  230.                         <div class="bg-black"></div>
  231.                         <div class="border-to-right-red bg-red"></div>
  232.                     </div>
  233.                 </div>
  234.                 <form class="col-xl-8 col-xxl-6 mt-5 position-relative" id="formGallery">
  235.                     <select name="gallery" id="yearGallery" class="pb-2 pt-2 ps-4">
  236.                         {% for year in yearsGallery %}
  237.                             <option value="{{ year.subSection|date('Y') }}">{{ year.subSection|date('Y') }}</option>
  238.                         {% endfor %}
  239.                     </select>
  240.                     <img src="{{ asset('img/arrow-bottom.svg') }}">
  241.                 </form>
  242.             </div>
  243.             <div class="gallery-list position-relative">
  244.                 <div class="row w-100" id="galleryList">
  245.                     <div class="col-md-12 text-center">
  246.                         {% if app.user %}
  247.                             <a href="{{ path('admin_year_add', {'section': 'gallery'}) }}" class="ml-3"><i class="fas fa-plus-circle" title="Ajouter une coupe"></i></a>
  248.                         {% endif %}
  249.                     </div>
  250.                     {% for yearImage in galleries %}
  251.                         <div class="col-md-4 p-0 containerCupGallery p-2" style="height:300px;">
  252.                             {% if app.user %}
  253.                                 <a href="{{ path('admin_year_edit', {'id': yearImage.id}) }}"><i class="fas fa-pencil-alt" title="Editer cette coupe"></i></a>
  254.                                 <a href="{{ path('admin_year_remove', {'id': yearImage.id}) }}" class="ml-3"><i class="fas fa-trash-alt" title="Supprimer cette coupe"></i></a>
  255.                             {% endif %}
  256.                             <div style="background:url({{ '/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ yearImage.images.first.url }}?text={{ loop.index }})no-repeat center;background-size:cover;height:100%;">
  257.                                 <a href="{{ '/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ yearImage.images.first.url }}?text={{ loop.index }}" data-toggle="lightbox" data-title="{{ yearImage.images.first.name }}" data-gallery="gallery{{ yearImage.id }}" class="w-100 h-100 gallery-image position-relative">
  258.                                     <div style="background:linear-gradient(to bottom, transparent 65%, black 100%);width:100%;height:100%;position:relative">
  259.                                         <div class="position-absolute d-flex justify-content-center detail-gallery">
  260.                                             <img src="{{ asset('img/icon-eye.svg') }}?text={{ loop.index }}" class="img-fluid mb-2">
  261.                                             <span>{{ yearImage.images.first.name }}</span>
  262.                                         </div>
  263.                                     </div>
  264.                                 </a>
  265.                             </div>
  266.                             <div class="d-none">
  267.                                 {% for image in yearImage.images %}
  268.                                     <a href="{{ '/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ image.url }}?text={{ loop.index }}" data-toggle="lightbox" data-gallery="gallery{{ yearImage.id }}" data-title="{{ image.name }}" class="col-sm-4">
  269.                                         <img src="background:url({{ '/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ image.url }}?text={{ loop.index }}" class="img-fluid" style="width:100%;max-width:100%">
  270.                                     </a>
  271.                                 {% endfor %}
  272.                             </div>
  273.                         </div>
  274.                     {% endfor %}
  275.                 </div>
  276.                 <div class="parallelogram toright bg-blue position-absolute"></div>
  277.             </div>
  278.         </div>
  279.     </section>
  280.     <section id="sponsors" class="bg-black">
  281.         <div class="container-1500">
  282.             <div class="title-section">
  283.                 <div class="col-md-1 m-auto">
  284.                     <h2 class="white">Sponsors</h2>
  285.                     <div class="sub-border">
  286.                         <div class="bg-grey"></div>
  287.                         <div class="border-to-right-red bg-red"></div>
  288.                     </div>
  289.                 </div>
  290.                 <div class="col-md-12 text-center">
  291.                     {% if app.user %}
  292.                         <a href="{{ path('admin_sponsor_edit', {'id': sponsor.id}) }}" style="background:none"><i class="fas fa-pencil-alt"></i></a>
  293.                     {% endif %}
  294.                 </div>
  295.             </div>
  296.             <div class="d-flex justify-content-center align-items-center flex-wrap list-sponsors">
  297.                 {% for sponsor in sponsor.images %}
  298.                     <a href="{{ sponsor.link }}" target="_blank" class="col-md-2 p-3 sponsor bg-white position-relative d-flex justify-content-center">
  299.                         <div class="bg-sponsor position-absolute" style="background:url({{ '/' ~ constant('App\\Services\\UploadFileService::UPLOAD_IMAGE_DIR') ~ sponsor.url }})no-repeat center;"></div>
  300.                     </a>
  301.                 {% endfor %}
  302.             </div>
  303.         </div>
  304.     </section>
  305.     <section id="instagram" class="d-flex align-items-center">
  306.         <div class="container-1500 w-100">
  307.             <div class="title-section">
  308.                 <div class="text-center">
  309.                     <h2 class="black">@dylanpereiraofficial</h2>
  310.                 </div>
  311.             </div>
  312.             <div class="d-flex justify-content-between align-items-center flex-wrap list-instagram">
  313.              <!-- TODO -->
  314.                 {% for image in instaImages %}
  315.                     <div class="col-md-3 insta position-relative">
  316.                         <div class="bg-insta position-absolute" style="background:url({{ image }})no-repeat center;"></div>
  317.                     </div>
  318.                 {% endfor %}
  319.             </div>
  320.             <div class="col-md-12 link-insta mt-5 text-center">
  321.                 <a href="https://www.instagram.com/dylanpereiraofficial/" target="_blank" class="bg-red white">Discover my instagram</a>
  322.             </div>
  323.         </div>
  324.     </section>
  325.     <section id="contact">
  326.         <div class="row w-100">
  327.             <div class="col-md-6 img-section position-relative" style="background:url({{ asset('img/contact-bg.png') }})no-repeat center;background-size:cover">
  328.                 <div class="parallelogram toright bg-red"></div>
  329.                 <div class="cut-section-right position-absolute bg-white"></div>
  330.             </div>
  331.             <div class="col-md-6 col-xl-6 col-xxl-5 container-750 d-flex align-items-center">
  332.                 <div class="col-md-10 block-contact">
  333.                     <div class="title-section">
  334.                         <h2 class="ps-5">Contact</h2>
  335.                         {{ include('front/inc/messages.html.twig') }}
  336.                         <div class="sub-border ps-5">
  337.                             <div class="bg-black"></div>
  338.                             <div class="border-to-right-red bg-red"></div>
  339.                         </div>
  340.                         <div class="col-md-12 ps-5">
  341.                             <div class="form-contact mt-4">
  342.                                 {{ form_start(form, {'attr': {'id': 'contactForm'}}) }}
  343.                                     {{ form_rest(form) }}
  344.                                     <input type="email" name="email-mail" style="height:0;opacity:0;">
  345.                                     <button type="submit" class="bg-red white">Submit</button>
  346.                                 {{ form_end(form) }}
  347.                                 <div id="messageContact" class="green"></div>
  348.                             </div>
  349.                         </div>
  350.                     </div>
  351.                 </div>
  352.             </div>
  353.         </div>
  354.     </section>
  355. {% endblock %}