templates/page/index.html.twig line 1

  1. {% import "macros/contact.html.twig" as contactMacro %}
  2. {% import "macros/donate.html.twig" as donateMacro %}
  3. {% import "macros/partypillar.html.twig" as partypillarMacro %}
  4. {% import "macros/helpdesk.html.twig" as helpdeskMacro %}
  5. {% extends 'base.html.twig' %}
  6. {% block title %}
  7.   {{ page.title|capitalize }}
  8. {% endblock %}
  9. {% block body %}
  10.   {% if page.title != 'contact' and page.title != 'donate' and page.title != 'Party Pillar' and page.title != 'Help Desk' %}
  11.     <section
  12.       class="banner lg:py-32 py-24 bg-neutral-900 bg-center bg-cover bg-no-repeat bg-blend-overlay"
  13.     >
  14.       <div class="mx-auto md:max-w-3xl text-center">
  15.         <h1 class="lg:text-5xl text-3xl !leading-relaxed font-semibold text-white capitalize">
  16.           {{ page.title|replace({'-': ' '}) }}
  17.         </h1>
  18.       </div>
  19.     </section>
  20.     <article
  21.       class="
  22.         content
  23.         prose
  24.         lg:prose-lg
  25.         mx-auto
  26.         py-24
  27.         lg:px-0
  28.         px-6 
  29.         {% if page.urlTitle == 'contact' %}
  30.         lg:max-w-6xl
  31.         {% endif %}
  32.         max-w-4xl
  33.         prose-neutral
  34.         prose-img:object-cover
  35.         prose-img:object-center
  36.         prose-img:mt-6
  37.         prose-a:text-brand
  38.         prose-p:md:leading-9
  39.         prose-li:md:text-base
  40.         prose-li:text-base
  41.         prose-li:leading-7
  42.         prose-li:md:leading-9
  43.         prose-p:text-base
  44.         prose-p:leading-7
  45.         prose-p:font-normal
  46.         prose-table:md:max-w-md
  47.         prose-table:border
  48.         prose-table:border-neutral-200
  49.         prose-td:p-2
  50.         prose-h4:leading-relaxed
  51.         prose-h4:mb-2
  52.       "
  53.     >
  54.       {% apply markdown_to_html %}
  55.         {{ page.body| raw }}
  56.       {% endapply %}
  57.     </article>
  58.   {% elseif page.title == 'Party Pillar' %}
  59.     {{ partypillarMacro.renderPartypillarComponent() }}
  60.   {% elseif page.title == 'Help Desk' %}
  61.     {{ helpdeskMacro.renderHelpdeskComponent() }}
  62.   {% elseif page.title == 'contact' %}
  63.     {{ contactMacro.renderContactComponent() }}
  64.   {% else %}
  65.     {{ donateMacro.renderDonatePage(uploadForm) }}
  66.   {% endif %}
  67. <script>
  68.   const banner = document.querySelector('.banner')
  69.   const firstImage = document.querySelector('.content').querySelector('img')
  70.   const defaultBanner = "{{ asset('/images/composition-5.svg') }}"
  71.   if (firstImage.src) {
  72.     banner.style.backgroundImage = `url('${firstImage?.src}')`
  73.   } else {
  74.     banner.style.backgroundImage = `url('${defaultBanner}')`
  75.   }
  76. </script>
  77. {% endblock %}