From a938fcb333bef7355413e821a67ab6a637aee50b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jaime=20Pe=CC=81rez=20Crespo?= <jaime.perez@uninett.no>
Date: Wed, 31 Jul 2019 16:07:02 +0200
Subject: [PATCH] Give up on indenting the resulting HTML.

It doesn't make much sense anyway. Makes the original templates harder to format, and browser developer tools can provide hierarchical indentation anyway. This allows us to save quite a few bytes per page, write cleaner templates, and forget about how it would look like in the resulting HTML.
---
 templates/_footer.twig |  22 +++---
 templates/_header.twig | 158 ++++++++++++++++++++---------------------
 templates/base.twig    |  27 +++----
 3 files changed, 98 insertions(+), 109 deletions(-)

diff --git a/templates/_footer.twig b/templates/_footer.twig
index a72a31c76..5cfb974b9 100644
--- a/templates/_footer.twig
+++ b/templates/_footer.twig
@@ -1,13 +1,11 @@
-      <div id="footer">
-        <div class="wrap">
-          <div class="center copyrights">
-            &copy; 2007-{{ year }}
-            <a href="https://simplesamlphp.org/">SimpleSAMLphp</a>
-          </div>
-          <div class="logo-footer-right show-for-large">
-            <div class="logo-footer">
-              <img class="pure-img" src="/{{ baseurlpath }}resources/icons/ssplogo-fish-small.png" alt="Small fish logo">
-            </div>
-          </div>
-        </div>
+<div id="footer">
+  <div class="wrap">
+    <div class="center copyrights">&copy; 2007-{{ year }} <a href="https://simplesamlphp.org/">SimpleSAMLphp</a>
+    </div>
+    <div class="logo-footer-right show-for-large">
+      <div class="logo-footer">
+        <img class="pure-img" src="/{{ baseurlpath }}resources/icons/ssplogo-fish-small.png" alt="Small fish logo">
       </div>
+    </div>
+  </div>
+</div>
diff --git a/templates/_header.twig b/templates/_header.twig
index bc52df15e..e23d38547 100644
--- a/templates/_header.twig
+++ b/templates/_header.twig
@@ -1,81 +1,79 @@
-        <div id="header">
-            <div class="wrap">
-                <div class="left">
-                    <div class="v-center logo-header">
-                        <div id="logo">
-                            {%- if header == 'SimpleSAMLphp' %}
-
-                            <span class="simple">Simple</span>{# -#}
-                            <span class="saml">SAML</span>{# -#}
-                            <span class="simple">php</span>
-                            {%- else %}
-
-                            {{ header }}
-                            {%- endif %}
-
-                            <img class="pure-img hidden" src="" alt="LOGO">
-                        </div>
-                    </div>
-                </div>
-                {% if not hideLanguageBar -%}
-                <div class="right">
-                    <a href="" id="menuLink" class="menu-link hide-for-large">
-                        <span class="fa fa-globe fa-2x" aria-hidden="true"></span>
-                    </a>
-                </div>
-                {% endif %}
-                {% if not hideLanguageBar -%}
-                    <div id="languagebar" class="hide-for-large">
-                        <div id="menu">
-                            <div class="pure-menu">
-                                <ul class="pure-menu-list">
-                                {% for key, lang in languageBar -%}
-                                    {% if key == currentLanguage -%}
-                                    <li><a class="pure-menu-heading" href="#">{{ lang.name }}</a><li>
-                                    {% else -%}
-                                    {% if lang.url -%}
-                                    <li class="pure-menu-item"><a href="{{ lang.url }}{%- spaceless %}
-                                        {% if queryParams -%}&{% endif -%}
-                                        {% for name, value in queryParams -%}
-                                            {%- if not loop.first %}&{% endif -%}
-                                            {%- if value %}{{ name }}={{ value }}{% else %}{{ name }}{%- endif %}
-                                        {%- endfor %}"{% endspaceless %} class="pure-menu-link">{{ lang.name }}</a></li>
-                                    {% endif -%}
-                                {% endif -%}
-                            {% endfor -%}
-                                </ul>
-                            </div>
-                        </div>
-                    </div>
-                {%- endif -%}
-                <div class="right show-for-large">
-                    <div class="v-center language-bar">
-                        <form id="language-form" class="pure-form" method="get">
-                            {% if not hideLanguageBar -%}
-                            <div id="languagebar">
-                            {% for name, value in queryParams -%}
-                                {% if value -%}
-                                <input type="hidden" name="{{ name }}" value="{{ value }}" />
-                                {%- else -%}
-                                <input type="hidden" name="{{ name }}" />
-                                {%- endif -%}
-                            {%- endfor %}
-
-                                <select  class="pure-input-1-4 language-menu selectize" name="language"
-                                         id="language-selector">
-                                    {% for key, lang in languageBar -%}
-                                    {% if key == currentLanguage -%}
-                                    <option value="{{ key }}" selected="selected">&#xf0ac;  {{ lang.name }}</option>
-                                    {% else -%}
-                                    <option value="{{ key }}">{{ lang.name }}</option>
-                                    {% endif -%}
-                                {% endfor -%}
-                                </select>
-                            </div>
-                        {% endif -%}
-                        </form>
-                    </div> <!--language-bar-->
-                </div><!--show-for-large-->
-            </div> <!-- wrap -->
-        </div> <!-- header -->
+<div id="header">
+  <div class="wrap">
+    <div class="left">
+      <div class="v-center logo-header">
+        <div id="logo">
+        {% if header == 'SimpleSAMLphp' %}
+          <span class="simple">Simple</span>{# -#}
+          <span class="saml">SAML</span>{# -#}
+          <span class="simple">php</span>
+        {% else %}
+          {{ header }}
+        {% endif %}
+          <img class="pure-img hidden" src="" alt="{% trans %}Logo{% endtrans %}">
+        </div>
+      </div>
+    </div>
+    {% if not hideLanguageBar %}
+    <div class="right">
+      <a href="" id="menuLink" class="menu-link hide-for-large">
+        <span class="fa fa-globe fa-2x" aria-hidden="true"></span>
+      </a>
+    </div>
+    <div id="languagebar" class="hide-for-large">
+      <div id="menu">
+        <div class="pure-menu">
+          <ul class="pure-menu-list">
+          {% for key, lang in languageBar %}
+            {% if key == currentLanguage %}
+            <li><a class="pure-menu-heading" href="#">{{ lang.name }}</a><li>
+            {% else %}
+            {% if lang.url %}
+            <li class="pure-menu-item"><a href="{{ lang.url }}
+              {%- if queryParams %}&{% endif %}
+                  {%- for name, value in queryParams %}
+                    {%- if not loop.first %}&{% endif %}
+                    {%- if value %}{{ name }}={{ value }}{% else %}{{ name }}{% endif %}
+                  {%- endfor %}" class="pure-menu-link">{{ lang.name }}</a></li>
+              {% endif %}
+            {% endif %}
+          {% endfor %}
+          </ul>
+        </div>
+      </div>
+    </div>
+    {% endif %}
+    <div class="right show-for-large">
+      <div class="v-center language-bar">
+        <form id="language-form" class="pure-form" method="get">
+          {% if not hideLanguageBar %}
+          <div id="languagebar">
+            {% for name, value in queryParams %}
+              {% if value %}
+            <input type="hidden" name="{{ name }}" value="{{ value }}" />
+              {% else %}
+            <input type="hidden" name="{{ name }}" />
+              {% endif %}
+            {% endfor %}
+            <select  class="pure-input-1-4 language-menu selectize" name="language" id="language-selector">
+            {% for key, lang in languageBar %}
+              {% if key == currentLanguage %}
+              <option value="{{ key }}" selected="selected">&#xf0ac;  {{ lang.name }}</option>
+              {% else %}
+              <option value="{{ key }}">{{ lang.name }}</option>
+              {% endif %}
+            {% endfor %}
+            </select>
+            <noscript>
+              <button type="submit" class="pure-button">
+                <i class="fa fa-arrow-right"></i>
+              </button>
+            </noscript>
+          </div>
+          {% endif %}
+        </form>
+      </div>{# language bar #}
+    </div>{# show-for-large #}
+  </div>{# wrap #}
+</div>{# header #}
 
diff --git a/templates/base.twig b/templates/base.twig
index 5312a9792..ea464b7ca 100644
--- a/templates/base.twig
+++ b/templates/base.twig
@@ -1,3 +1,4 @@
+{% spaceless %}
 <!DOCTYPE html>
 <html lang="{{ currentLanguage }}" xml:lang="{{ currentLanguage }}">
   <head>
@@ -7,35 +8,27 @@
     <link rel="stylesheet" href="{{ asset("css/stylesheet.css") }}">
     <link rel="icon" href="/{{ baseurlpath }}resources/icons/favicon.ico">
     {% if isRTL %}
-
     <link rel="stylesheet" href="{{ asset("assets/css/src/default-rtl.css") }}">
     {% endif %}
-
     <meta name="robots" content="noindex, nofollow">
-    <link rel="preload" href="{{ asset('js/bundle.js') }}" as="script" />
-    {%- block preload %}{% endblock %}
-
+    <link rel="preload" href="{{ asset('js/bundle.js') }}" as="script">
+    {% block preload %}{% endblock %}
   </head>
   <body id="{{ templateId }}">
     <div id="layout">
-    {%- block header %}{% include "_header.twig" %}{% endblock %}
-
+    {% block header %}{% include "_header.twig" %}{% endblock %}
       <div id="content">
         <div class="wrap">
-          {%- block contentwrapper %}
-            {%- block content %}{% endblock %}
-          {%- endblock contentwrapper %}
-
+          {% block contentwrapper %}{% block content %}{% endblock %}{% endblock contentwrapper %}
         </div>
-      </div><!-- content -->
+      </div>{# content #}
       <div id="push"></div>
-    </div><!-- layout -->
+    </div>{# layout #}
     <div id="foot">
-      {%- block footer %}{% include "_footer.twig" %}{% endblock %}
-
+      {% block footer %}{% include "_footer.twig" %}{% endblock %}
     </div>
     <script src="{{ asset('js/bundle.js') }}"></script>
-    {%- block postload %}{% endblock %}
-
+    {% block postload %}{% endblock %}
   </body>
 </html>
+{% endspaceless %}
-- 
GitLab