]> juplo.de Git - website/commitdiff
Layout auf Basis der Version `1.1.0` der `maven-thymeleaf-skin` überarbeitet
authorKai Moritz <kai@juplo.de>
Mon, 6 May 2019 21:05:37 +0000 (23:05 +0200)
committerKai Moritz <kai@juplo.de>
Sat, 18 Oct 2025 21:15:32 +0000 (23:15 +0200)
* Site-Content mit Version `1.1.0` der `maven-thymeleaf-skin` neu generiert
** Es wurden für den Umbau einige Projekte exemplarisch angepasst:
*** hibernate-maven-plugin - 2.1.2-SNAPSHOT
*** http-resources - 2.0.0
*** maven-thymeleaf-skin - 1.1.0
** Dabei wurden die neu eingeführte Parameter entsprechend gesetzt, so
   dass die für den verbesserten Umbau benötigten Informationen vorhanden
   sind.
* Layout auf Basis der neuen Möglichkeiten umgebaut und verbessert
** Dabei wurden zuerst nur Projekte in die `sitemap.json` aufgenommen, für
   die der Site-Content bereits neu generiert wurde (s.o.).

dist/potemkin.html [new file with mode: 0644]
dist/potemkin.json
dist/projects.html
dist/sitemap.json
dist/templates/layout.html

diff --git a/dist/potemkin.html b/dist/potemkin.html
new file mode 100644 (file)
index 0000000..5a113d7
--- /dev/null
@@ -0,0 +1,31 @@
+<!DOCTYPE html>
+<html
+    xmlns="http://www.w3.org/1999/xhtml"
+    th:replace="~{/templates/layout.html :: layout(
+      uri='/projects.html',
+      title=~{:: title},
+      maincontent=~{:: .maincontent},
+      marginalcontent=~{:: .marginalcontent}, json='MERGE:/potemkin.json')}"
+    >
+  <head>
+    <title id="title">Projects - Potemkinsche Dörfer!</title>
+    <!--/*-->
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+    <link rel="stylesheet/less" type="text/css" href="less/base.less"/>
+    <link rel="stylesheet/less" type="text/css" href="less/screen.less" media="screen"/>
+    <link rel="stylesheet/less" type="text/css" href="less/print.less" media="print"/>
+    <script src="js/less-1.7.0.min.js"></script>
+    <!--*/-->
+  </head>
+  <body>
+   <main class="maincontent">
+     <h1>Projects - Potemkinsche Dörfer!</h1>
+     <ul>
+       <li><a href="potemkin/fix-swf/overview.html" th:href="@{/potemkin/fix-swf/overview.html}">Fix SWF</a></li>
+       <li><a href="potemkin/html-experimente.html" th:href="@{/potemkin/html-experimente.html}">HTML-Experimente</a></li>
+       <li><a href="potemkin/accelerator.html" th:href="@{/potemkin/accelerator.html}">accelerator</a></li>
+       <li><a href="potemkin/typo.html" th:href="@{/potemkin/typo.html}">Typography</a></li>
+     </ul>
+   </main>
+  </body>
+</html>
index a53ef5ffd23300116621c019ba4af4a7f65bae60..f89bba33ea911b7916928f26f5489e85f846187b 100644 (file)
     ]
   },
   "_crumbs": {
-    "/projects.html": [
-      "/projects.html"
-    ],
     "/potemkin/fix-swf/overview.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/fix-swf/overview.html",
       "/potemkin/fix-swf/overview.html"
     ],
     "/potemkin/typo.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/typo.html"
     ],
     "/potemkin/html-experimente.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html"
     ],
     "/potemkin/fix-swf/getting-started.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/fix-swf/overview.html",
       "/potemkin/fix-swf/getting-started.html"
     ],
     "/potemkin/html-experimente/formulare.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/formulare.html"
     ],
     "/potemkin/html-experimente/symbole.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/symbole.html"
     ],
     "/templates/404.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/templates/404.html"
     ],
     "/potemkin/html-experimente/gibts-ja-gar-nicht.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/gibts-ja-gar-nicht.html"
     ],
     "/templates/error.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/templates/error.html"
     ],
     "/potemkin/html-experimente/error.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/error.html"
     ],
     "/potemkin/html-experimente/fast-leer-mit-menü.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/fast-leer-mit-menü.html"
     ],
     "/potemkin/html-experimente/fast-leer-mit-menü-und-marginalinhalt.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/fast-leer-mit-menü-und-marginalinhalt.html"
     ],
     "/potemkin/html-experimente/fast-leer-kein-menü.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/fast-leer-kein-menü.html"
     ],
     "/potemkin/html-experimente/fast-leer-kein-menü-aber-marginalinhalt.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/fast-leer-kein-menü-aber-marginalinhalt.html"
     ],
     "/potemkin/html-experimente/fast-leer-einspaltig.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/fast-leer-einspaltig.html"
     ],
     "/potemkin/html-experimente/fast-leer-einspaltig-mit-marginalinhalt.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/fast-leer-einspaltig-mit-marginalinhalt.html"
     ],
     "/potemkin/html-experimente/breadcrumb.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/breadcrumb.html"
     ],
     "/potemkin/html-experimente/kein-layout.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/kein-layout.html"
     ],
     "/potemkin/html-experimente/basis-layout.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/basis-layout.html"
     ],
     "/potemkin/html-experimente/druck-layout.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/druck-layout.html"
     ],
     "/potemkin/html-experimente/tiny.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/tiny.html"
     ],
     "/potemkin/html-experimente/phone.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/phone.html"
     ],
     "/potemkin/html-experimente/tablet.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/tablet.html"
     ],
     "/potemkin/html-experimente/seitenaufteilung.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/seitenaufteilung.html"
     ],
     "/potemkin/html-experimente/seitenkopf.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/seitenkopf.html"
     ],
     "/potemkin/html-experimente/testlab.html": [
+      "/index.html",
       "/projects.html",
       "/potemkin/html-experimente.html",
       "/potemkin/html-experimente/testlab.html"
index 5a113d7232e7a51fe4a157b201199e64ad8f2c85..d80d751e7d585693fdd1a61c4fb64e14c764e393 100644 (file)
@@ -5,7 +5,7 @@
       uri='/projects.html',
       title=~{:: title},
       maincontent=~{:: .maincontent},
-      marginalcontent=~{:: .marginalcontent}, json='MERGE:/potemkin.json')}"
+      marginalcontent=~{:: .marginalcontent})}"
     >
   <head>
     <title id="title">Projects - Potemkinsche Dörfer!</title>
index a573ec9bc324ae17ad4acce78e074c52d2e3690e..e97ceff8781684d32868ef75221c6bd052abd1ba 100644 (file)
@@ -1,13 +1,11 @@
 {
-  "_sections": {
-    "blog": "/blog/",
-    "projects": "/projects.html",
-    "about": "/about.html"
-  },
   "_titles": {
     "/index.html": "Home",
     "/blog/": "Blog",
     "/projects.html": "Projects",
+    "/projects/hibernate-maven-plugin/2.1.2-SNAPSHOT/index.html": "Hibernate Maven Plugin",
+    "/projects/http-resources/2.0.0/index.html": "HTTP resources",
+    "/projects/maven-thymeleaf-skin/1.1.0/index.html": "Maven Thymeleaf Skin",
     "/about.html": "About",
     "/expertise.html": "Expertise",
     "/references.html": "References",
     "/templates/error.html": "5xx-Template"
   },
   "_childs": {
+    "/index.html": [
+      "/blog/",
+      "/projects.html",
+      "/about.html"
+    ],
     "/blog/": [],
-    "/projects.html": [],
+    "/projects.html": [
+      "/projects/hibernate-maven-plugin/2.1.2-SNAPSHOT/index.html",
+      "/projects/http-resources/2.0.0/index.html",
+      "/projects/maven-thymeleaf-skin/1.1.0/index.html"
+    ],
     "/about.html": [
       "/expertise.html",
       "/references.html",
       "/impressum.html",
       "/contact.html"
     ],
-    "/expertise.html": [],
-    "/references.html": [],
     "/impressum.html": [
       "/agb.html",
       "/haftung-inhalte.html",
     ] 
   },
   "_crumbs": {
+    "/index.html": [
+      "/index.html"
+    ],
+    "/projects.html": [
+      "/index.html",
+      "/projects.html"
+    ],
+    "/projects/hibernate-maven-plugin/2.1.2-SNAPSHOT/index.html": [
+      "/index.html",
+      "/projects.html",
+      "/projects/hibernate-maven-plugin/2.1.2-SNAPSHOT/index.html"
+    ],
+    "/projects/http-resources/2.0.0/index.html": [
+      "/index.html",
+      "/projects.html",
+      "/projects/http-resources/2.0.0/index.html"
+    ],
+    "/projects/maven-thymeleaf-skin/1.1.0/index.html": [
+      "/index.html",
+      "/projects.html",
+      "/projects/maven-thymeleaf-skin/1.1.0/index.html"
+    ],
     "/about.html": [
+      "/index.html",
       "/about.html"
     ],
     "/expertise.html": [
+      "/index.html",
       "/about.html",
       "/expertise.html"
     ],
     "/references.html": [
+      "/index.html",
       "/about.html",
       "/references.html"
     ],
     "/impressum.html": [
+      "/index.html",
       "/about.html",
       "/impressum.html"
     ],
     "/contact.html": [
+      "/index.html",
       "/about.html",
       "/contact.html"
     ],
     "/agb.html": [
+      "/index.html",
       "/about.html",
       "/impressum.html",
       "/agb.html"
     ],
     "/haftung-inhalte.html": [
+      "/index.html",
       "/about.html",
       "/impressum.html",
       "/haftung-inhalte.html"
     ],
     "/haftung-links.html": [
+      "/index.html",
       "/about.html",
       "/impressum.html",
       "/haftung-links.html"
     ],
     "/urheberrechte.html": [
+      "/index.html",
       "/about.html",
       "/impressum.html",
       "/urheberrechte.html"
     ],
     "/datenschutz.html": [
+      "/index.html",
       "/about.html",
       "/impressum.html",
       "/datenschutz.html"
     ],
     "/templates/404.html": [
+      "/index.html",
       "/templates/404.html"
     ],
     "/templates/error.html": [
+      "/index.html",
       "/templates/error.html"
     ]
-  }
+  },
+  "_canonical": {}
 }
index e6af3404d86ce90f6bffde0b6005070c974fa788..838e9234918d4b1f3127005335e63159ba4279ab 100644 (file)
@@ -5,7 +5,9 @@
     th:fragment="layout(uri,maincontent)"
     thymeproxy:variables="SET:sitemap.json"
     >
-  <head>
+  <head thymeproxy:variables="${json}">
+    <meta charset="utf-8" />
+    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
     <title th:replace="${title}">juplo - BASISTEMPLATE</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <meta name="viewport" content="width=device-width, initial-scale=1" />
     <!--[if IE 8]>
       <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../css/ie8.css" th:href="@{/css/ie8.min.css}"/>
     <![endif]-->
-    <link rel="caononical" href="layout.html" th:replace="${scripts_head}?:~{}"/>
+    <link rel="canonical" href="layout.html" th:href="${_canonical.get(uri)}?:${uri}">
+    <script th:replace="${scripts_head}?:~{}"></script>
   </head>
   <body
       th:fragment="body(uri, maincontent, marginalcontent)"
-      thymeproxy:variables="${json}"
       th:with="crumbs=${_crumbs.get(uri)}"
       id="top"
       class="menu"
@@ -67,7 +69,7 @@
       </div>
       <main class="content cf">
         <article id="content" class="main" th:include="${maincontent}">
-          <header><h1 th:include="${title}">juplo - BASISTEMPLATE</h1></header>
+          <header><h1 th:text="${_titles.get(uri)}">juplo - BASISTEMPLATE</h1></header>
           <div th:fragment="maincontent">
             <p>
               <strong>Lorem ipsum</strong> dolor
         <div class="marginal">
           <nav id="nav"
               th:include="~{::#navigation}?:_"
-              th:with="section=${crumbs != null ? crumbs[0] : null}"
+              th:with="section=${crumbs != null && crumbs.size() > 1 ? crumbs[1] : null}"
               >
             <hr class="n"/>
             <a class="hide" href="#top" title="Show Content">Jump back to the top of the page</a>
             <h1 class="nav">Navigation</h1>
             <h2 class="nav menu">Section-Menu</h2>
             <ul id="menu" class="cf">
-              <li class="m blog" th:each="entry : ${_sections}" th:class="'m ' + ${entry.key}">
-                <a href="../blog/" th:href="@{${entry.value}}" class="m" th:class="${entry.value == section} ? 'm selected' : 'm'" th:text="${_titles.get(entry.value)}">Blog</a>
+              <li th:each="entry : ${_childs.get('/index.html')}"
+                  th:with="title=${_titles.get(entry)}"
+                  class="m blog"
+                  th:class="'m ' + ${title}">
+                <a href="../blog/"
+                   th:href="@{${entry}}"
+                   class="m"
+                   th:class="${section == entry} ? 'm selected' : 'm'"
+                   th:text="${_titles.get(entry)}">Blog</a>
               </li>
               <!--/*-->
               <li class="m projects"><a href="../projects.html" class="m selected">Projects</a></li>
             </h2>
             <ul th:include="${submenu}?:_"
                 th:with="
-                  len=${crumbs.size()},
-                  submenu=${_childs.get(section)},
-                  parent=${crumbs[0]},
-                  pos=1"
+                  len=${crumbs == null} ? 0 : ${crumbs.size()},
+                  parent=${section},
+                  submenu=${_childs.get(parent)},
+                  pos=2"
                 id="submenu"
                 class="s"
                 th:class="'s' + (${len == 1 or (len == 2 and _childs.get(uri) == null)} ? ' selected' : '')"
                   th:with="
                       child=${pos == len},
                       selected=${!child and crumbs.get(pos) == entry},
+                      leaf=${pos >= (len - 1) and not selected},
                       sibling=${pos + 1 == len and (_childs.get(uri) == null or uri == parent)},
                       childs=${entry == parent ? null : _childs.get(entry)}
                       "
                     th:if="${entry != parent}"
                     th:href="@{${entry}}"
                     class="s selected"
-                    th:class="${selected} ? 's selected' : 's'"
+                    th:class="(${selected} ? 's selected' : 's') + ' len_' + ${len} + ' pos_' + ${pos} + (${leaf}?' leaf':'')"
                     th:text="${_titles.get(entry)}"
                     >fix-swf</a>
                 <ul th:if="${selected and childs != null}"
                     class="s active"
-                    th:class="'s' + (${selected &amp;&amp; pos == crumbs.size()-1} ? ' active' : '') + (${entry == uri or (len &gt; 1 and entry == crumbs.get(len-2) and _childs.get(uri) == null)} ? ' selected' : '')"
+                    th:class="'s' + (${entry == uri or (len &gt; 1 and entry == crumbs.get(len-2) and _childs.get(uri) == null)} ? ' selected' : '')"
                     >
                   <li th:replace="this :: submenu(submenu=${childs}, parent=${entry}, pos=${pos + 1})"
                       class="s"
               <li class="s sub off"><a href="#" class="s">accelerator</a></li>
               <li class="s off"><a href="../potemkin/typo.html" th:href="@{/potemkin/typo.html}" class="s">Typography</a></li>
               <!--*/-->
+              <li th:replace="this :: submenu(submenu=${childs}, parent=${entry}, pos=${pos + 1})" class="s off"><a href="../potemkin/typo.html" th:href="@{/potemkin/typo.html}" class="s">Typography</a></li>
             </ul>
             <hr class="n"/>
           </nav>