templates/project/single.html.twig line 1

Open in your IDE?
  1. {% extends 'app/layout.html.twig' %}
  2. {% block content %}
  3.     {% if editmode %}
  4.         Selecteer hieronder een project.
  5.         {{ pimcore_relation("project", {
  6.             classes: ["Sector"],
  7.             reload: true,
  8.         }) }}
  9.     {% endif %}
  10.     {% include "app/partials/navigation/_breadcrumbs.html.twig" %}
  11.     {% set project = pimcore_relation("project").getElement() ?? null %}
  12.     {{ pimcore_area('hero', {
  13.         type: 'hero-project-brick',
  14.         params: {
  15.             'hero-project-brick' : {
  16.                 headLineEnabled: true,
  17.                 titleDefault: (project.title ?? null) ?: null,
  18.                 descriptionDefault: (project.meta_description ?? null) ?: null,
  19.                 defaultHeroBackgroundImage: (project.visuals|first.getThumbnail('header-large-gradient')) ?? null,
  20.                 categories: project.groups ?? null,
  21.                 sectors: project.sectors ?? null
  22.             }
  23.         }
  24.     }) }}
  25.     {% if project is defined %}
  26.         <div class="container pb-10 container-s">
  27.             <div class="gap-8 md:gap-24">
  28.                 <div class="project-content">
  29.                     {{ (project.webdesq_content ?? null) | raw }}
  30.                     {% if project.content_video is defined and project.content_video %}
  31.                         <div class="my-10">
  32.                             {% include 'areas/video-brick/partials/_video.html.twig' with {
  33.                                     'video': project.content_video,
  34.                                 }
  35.                             %}
  36.                         </div>
  37.                     {% endif %}
  38.                     {{ pimcore_block('case-usp') }}
  39.                     <ul class="mt-8 md:mt-8 md:my-8 text-md">
  40.                     {% for usp in pimcore_block('case-ups').iterator %}
  41.                         <li class="flex mb-3 text-blue">
  42.                             <svg class="w-[24px] h-[18px] mr-3 shrink-0 mt-1.5 " xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 18">
  43.                                 <path fill="#0072BB" fill-rule="evenodd" d="M21.576 0 24 2.424l-6.562 6.562-7.655 7.655a1.71 1.71 0 0 1-2.422 0h-.002L0 9.28l2.425-2.424 6.147 6.148L21.576 0Z"></path>
  44.                             </svg>
  45.                             <span>{{ pimcore_input('usp') }}</span>
  46.                         </li>
  47.                     {% endfor %}
  48.                     </ul>
  49.                 </div>
  50.                 <div class="mt-4">
  51.                     {% if editmode or not pimcore_input('download-title').isEmpty() %}
  52.                         <b>{{ pimcore_input('download-title') }}</b>
  53.                     {% endif %}
  54.                     <div class="flex-row">
  55.                         {% if editmode %}
  56.                             {{ pimcore_link('download-case') }}
  57.                         {% elseif pimcore_link('download-case').getHref() | default() %}
  58.                             <a href="{{ pimcore_link('download-case').getHref() }}" class="relative group button !pl-12 button__primary mt-6">
  59.                                 <svg class="absolute left-5 top-4" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16px" height="16px" viewBox="0 0 16 16" version="1.1">
  60.                                     <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
  61.                                         <g transform="translate(-554.000000, -1195.000000)" class="transition fill-blue group-hover:fill-white">
  62.                                             <g transform="translate(0.000000, 860.000000)">
  63.                                                 <g transform="translate(536.000000, 20.000000)">
  64.                                                     <g transform="translate(0.000000, 244.000000)">
  65.                                                         <g transform="translate(0.000000, 52.000000)">
  66.                                                             <g transform="translate(18.000000, 19.000000)">
  67.                                                                 <path d="M16,12 L16,15.2 C16,15.6418278 15.6418278,16 15.2,16 L0.8,16 C0.3581722,16 0,15.6418278 0,15.2 L0,12 L1.6,12 L1.6,14.4 L14.4,14.4 L14.4,12 L16,12 Z M8,12 C8.21221371,12.0002458 8.41577082,11.9158862 8.5656,11.7656 L11.7656,8.5656 L10.6344,7.4344 L8.8,9.26872 L8.8,0 L7.2,0 L7.2,9.26872 L5.3656,7.4344 L4.2344,8.5656 L7.4344,11.7656 C7.58422918,11.9158862 7.78778629,12.0002458 8,12 Z" id="Shape"/>
  68.                                                             </g>
  69.                                                         </g>
  70.                                                     </g>
  71.                                                 </g>
  72.                                             </g>
  73.                                         </g>
  74.                                     </g>
  75.                                 </svg>
  76.                                 {{ pimcore_link('download-case').getText() }}
  77.                             </a>
  78.                         {% endif %}
  79.                         {% if editmode %}
  80.                             {{ pimcore_link('contact-for-information') }}
  81.                         {% elseif pimcore_link('contact-for-information').getHref() | default() %}
  82.                             <a href="{{ pimcore_link('contact-for-information').getHref() }}" class="button button__secondary group {% if pimcore_link('download-case').isEmpty() %} !px-0 {% endif %}">
  83.                                 {{ pimcore_link('contact-for-information').getText() }}
  84.                                 <span
  85.                                     class="flex items-center justify-center w-6 h-6 ml-3 transition-all bg-white rounded-full shadow-md text-blue group-hover:bg-blue group-hover:text-white"><svg
  86.                                         class="h-3.5 w-3.5" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path
  87.                                             fill="currentColor" fill-rule="currentColor"
  88.                                             d="m6.406 15.656 6.963-6.731c.249-.24.389-.575.389-.925 0-.35-.14-.685-.389-.925L6.406.343A1.206 1.206 0 0 0 4.657.41l-.09.113a1.297 1.297 0 0 0 .154 1.67L10.731 8l-6.008 5.806a1.295 1.295 0 0 0-.065 1.783c.463.52 1.248.55 1.748.066Z"></path></svg></span>
  89.                             </a>
  90.                         {% endif %}
  91.                     </div>
  92.                 </div>
  93.             </div>
  94.         </div>
  95.         {% if project.visuals | default([]) %}
  96.             {% include "project/partials/media-brick.html.twig" with {'media': project.visuals} %}
  97.         {% endif %}
  98.         {% if editmode or project.getProject_facts() | length > 0 %}
  99.         {{ pimcore_area('project-facts', {
  100.             type: 'project-usp-grid-brick',
  101.             params: {
  102.                 'project-usp-grid-brick': {
  103.                     items: project.getProject_facts(),
  104.                     backgroundColor: 'bg-blue-200'
  105.                 }
  106.             }
  107.         }) }}
  108.         {% endif %}
  109.         {% include "project/partials/contact.html.twig" %}
  110.         {{ pimcore_area('testimonials', {
  111.             type : 'testimonial-brick',
  112.         }) }}
  113.         {% if editmode or project.getClient_facts() | length > 0 %}
  114.         {{ pimcore_area('client-facts', {
  115.             type: 'project-usp-grid-brick',
  116.             params: {
  117.                 'project-usp-grid-brick': {
  118.                     items: project.getClient_facts(),
  119.                     backgroundColor: 'bg-white'
  120.                 }
  121.             }
  122.         }) }}
  123.         {% endif %}
  124.         {{ pimcore_area('added-value', {
  125.             type: 'content-brick',
  126.             params: {
  127.                 'content-brick': {
  128.                     layout: 'text-image'
  129.                 }
  130.             }
  131.         }) }}
  132.         {% if editmode or project.groups | default([]) %}
  133.         {{ pimcore_area('applied-products', {
  134.             type : 'product-category-cards-brick',
  135.             params: {
  136.                 'product-category-cards-brick': {
  137.                     productCategories: project.groups ?? null,
  138.                     defaultTitle: 'Toegepaste producten'|trans,
  139.                     brickBackgroundColor: 'bg-blue-200'
  140.                 }
  141.             }
  142.         }) }}
  143.         {% endif %}
  144.         {% if editmode or project.related_projects | default([]) %}
  145.         {{ pimcore_area('related-projects', {
  146.             type: 'projects-card-slider-brick',
  147.             params: {
  148.                 'projects-card-slider-brick': {
  149.                     defaultTitle: 'Gerelateerde projecten en onderwerpen' | trans,
  150.                     projects: project.related_projects ?? [],
  151.                     brickBackgroundColor: 'bg-gray-200',
  152.                     labelOverride: 'Project' | trans
  153.                 }
  154.             }
  155.         }) }}
  156.         {% endif %}
  157.         {{ pimcore_area('project-faq', {
  158.             type: 'faq-brick',
  159.             params: {
  160.                 'faq-brick': {
  161.                     showContact: 'false',
  162.                     containerSize: 'md:max-w-[1100px] container',
  163.                     containerClass: 'mx-auto'
  164.                 }
  165.             }
  166.         }) }}
  167.     {% endif %}
  168.     {{ pimcore_area('contact-side-widget', {
  169.         type: 'contact-side-widget-brick'
  170.     }) }}
  171. {% endblock %}