layout-dialect ausgebaut: Thymeleaf 3.x erlaubt ähnliches mit Bordmitteln
authorKai Moritz <kai@juplo.de>
Sat, 4 May 2019 22:46:15 +0000 (00:46 +0200)
committerKai Moritz <kai@juplo.de>
Sun, 5 May 2019 19:48:03 +0000 (21:48 +0200)
46 files changed:
dist/about.html
dist/agb.html
dist/blog.html
dist/blog/article.html
dist/blog/comments.html
dist/contact.html
dist/datenschutz.html
dist/expertise.html
dist/haftung-inhalte.html
dist/haftung-links.html
dist/impressum.html
dist/index.html
dist/potemkin.html
dist/potemkin/accelerator.html
dist/potemkin/fix-swf/getting-started.html
dist/potemkin/fix-swf/overview.html
dist/potemkin/html-experimente.html
dist/potemkin/html-experimente/basis-layout.html
dist/potemkin/html-experimente/breadcrumb.html
dist/potemkin/html-experimente/druck-layout.html
dist/potemkin/html-experimente/error.html
dist/potemkin/html-experimente/fast-leer-einspaltig-mit-marginalinhalt.html
dist/potemkin/html-experimente/fast-leer-einspaltig.html
dist/potemkin/html-experimente/fast-leer-kein-menü-aber-marginalinhalt.html
dist/potemkin/html-experimente/fast-leer-kein-menü.html
dist/potemkin/html-experimente/fast-leer-mit-menü-und-marginalinhalt.html
dist/potemkin/html-experimente/fast-leer-mit-menü.html
dist/potemkin/html-experimente/formulare.html
dist/potemkin/html-experimente/kein-layout.html
dist/potemkin/html-experimente/phone.html
dist/potemkin/html-experimente/seitenaufteilung.html
dist/potemkin/html-experimente/seitenkopf.html
dist/potemkin/html-experimente/symbole.html
dist/potemkin/html-experimente/tablet.html
dist/potemkin/html-experimente/testlab.html
dist/potemkin/html-experimente/tiny.html
dist/potemkin/typo.html
dist/references.html
dist/templates/404.html
dist/templates/error.html
dist/templates/example/layout.html
dist/templates/example/page.html
dist/templates/fragments.html
dist/templates/layout.html
dist/templates/testlab.html
dist/urheberrechte.html

index f1cc11c..2a22185 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/about.html'"
+    th:replace="~{templates/layout :: layout(uri='/about.html')}"
     >
   <head>
-    <title>About</title>
+    <title id="title">About</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
@@ -15,7 +13,7 @@
     <!--*/-->
   </head>
   <body>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>About</h1></header>
       <p>
         <span class="logo">juplo</span> is the place, where I collect and share
@@ -60,7 +58,7 @@
         <a href="references.html" th:href="@{/references.html}">what I have already done for others</a>.
       </p>
     </article>
-    <aside layout:fragment="marginalcontent" class="m">
+    <aside class="marginalcontent">
       <h2>Funded by the Europian Union</h2>
       <p>
         As partner of the company
index 934c6a3..a247413 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/agb.html'"
+    th:replace="~{templates/layout :: layout(uri='/agb.html')}"
     >
   <head>
-    <title>Allgemeine Geschäftsbedingungen (AGB)</title>
+    <title id="title">Allgemeine Geschäftsbedingungen (AGB)</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
@@ -15,7 +13,7 @@
     <!--*/-->
   </head>
   <body>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>Allgemeine Geschäftsbedingungen (AGB)</h1></header>
       <p><em>Stand: 01.02.2014</em></p>
       <h2>Angebote &amp; Abrechnung</h2>
         dem wirtschaftlichen Zweck des Vertrages Rechnung tragen.
       </p>
     </article>
-    <aside layout:fragment="marginalcontent" th:include="templates/fragments :: about"></aside>
+    <aside class="marginalcontent" th:replace="templates/fragments :: about"></aside>
   </body>
 </html>
index 529032c..d15ec74 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/blog.html'"
+    th:replace="~{templates/layout :: layout(uri='/blog.html', json='MERGE:/blog.json')}"
     >
   <head>
-    <title>Blog</title>
+    <title id="title">Blog</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
@@ -14,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:/blog.json">
-    <main class="main" layout:fragment="maincontent">
+  <body>
+    <main class="maincontent">
       <article id="post-140" class="post-140 post type-post status-publish format-standard hentry category-jetty category-less category-maven category-wro4j">
         <header class="entry-header">
           <h2 class="entry-title"><a href="http://juplo.de/combining-jetty-maven-plugin-and-wro4j-maven-plugin-for-dynamic-reloading-of-less-resources/" title="Permalink to Combining jetty-maven-plugin and wro4j-maven-plugin for Dynamic Reloading of LESS-Resources" rel="bookmark">Combining jetty-maven-plugin and wro4j-maven-plugin for Dynamic Reloading of LESS-Resources</a></h2>
         </footer><!-- .entry-meta -->
       </article><!-- #post-34 -->
     </main>
-    <div layout:fragment="marginalcontent">
+    <div class="marginalcontent">
       <div id="secondary" class="widget-area" role="complementary">
         <aside id="archives" class="widget">
           <h1 class="widget-title">Archives</h1>
       <div id="tertiary" class="widget-area" role="supplementary">
       </div><!-- #tertiary .widget-area -->
     </div>
-    <ul layout:fragment="footer">
-    </ul>
   </body>
 </html>
index 82031ac..8965379 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/blog/article.html'"
+    th:replace="~{templates/layout :: layout(uri='/blog/article.html', json='MERGE:/blog.json')}"
     >
   <head>
-    <title>juplo - blog - Combining jetty-maven-plugin and wro4j-maven-plugin for Dynamic Reloading of LESS-Resources</title>
+    <title id="title">juplo - blog - Combining jetty-maven-plugin and wro4j-maven-plugin for Dynamic Reloading of LESS-Resources</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../css/base.css"/>
@@ -14,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:/blog.json">
-    <article class="main" layout:fragment="maincontent">
+  <body>
+    <article class="maincontent">
       <article id="post-140" class="post-140 post type-post status-publish format-standard hentry category-jetty category-less category-maven category-wro4j">
         <div class="entry-header">
           <h1 class="entry-title">Combining jetty-maven-plugin and wro4j-maven-plugin for Dynamic Reloading of LESS-Resources</h1>
         </form>
       </div>
     </article>
-    <aside layout:fragment="marginalcontent">
+    <aside class="marginalcontent">
       <div id="secondary" class="widget-area" role="complementary">
         <aside id="archives" class="widget">
           <h1 class="widget-title">Archives</h1>
index 470e1e0..b651d71 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/blog/comments.html'"
+    th:replace="~{templates/layout :: layout(uri='/blog/comments.html', json='MERGE:/blog.json')}"
     >
   <head>
-    <title>juplo - blog - hibernate4-maven-plugin</title>
+    <title id="title">juplo - blog - hibernate4-maven-plugin</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../css/base.css"/>
@@ -14,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:/blog.json">
-    <article class="main" layout:fragment="maincontent">
+  <body>
+    <article class="maincontent">
       <article id="post-34" class="post-34 post type-post status-publish format-standard hentry category-hibernate category-java category-maven">
         <div class="entry-header">
           <h1 class="entry-title">hibernate4-maven-plugin</h1>
         </form>
       </div>
     </article>
-    <aside layout:fragment="marginalcontent">
+    <aside class="marginalcontent">
       <div id="secondary" class="widget-area" role="complementary">
         <aside id="archives" class="widget">
           <h1 class="widget-title">Archives</h1>
index c87a89e..a1e2689 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/contact.html'"
+    th:replace="~{templates/layout :: layout(uri='/contact.html')}"
     >
   <head>
-    <title>Contact</title>
+    <title id="title">Contact</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
@@ -15,7 +13,7 @@
     <!--*/-->
   </head>
   <body>
-    <div id="content" class="main pack cf" layout:fragment="maincontent">
+    <div class="maincontent">
       <div class="pack">
         <div class="p left">
           <img class="p" src="img/kai-moritz.jpg" th:src="@{/img/kai-moritz.jpg}" alt="Portrait"/>
index 37e46c0..601f9ee 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/datenschutz.html'"
+    th:replace="~{templates/layout :: layout(uri='/datenschutz.html')}"
     >
   <head>
-    <title>Datenschutz</title>
+    <title id="title">Datenschutz</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
@@ -15,7 +13,7 @@
     <!--*/-->
   </head>
   <body>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>Datenschutz</h1></header>
       <section id="allgemein">
         <h2>Allgemeine Hinweise zum Datenschutz</h2>
         <p>Cookies werden auf dem Rechner des Nutzers gespeichert und von diesem an unserer Seite übermittelt. Daher haben Sie als Nutzer auch die volle Kontrolle über die Verwendung von Cookies. Durch eine Änderung der Einstellungen in Ihrem Internetbrowser können Sie die Übertragung von Cookies deaktivieren oder einschränken. Bereits gespeicherte Cookies können jederzeit gelöscht werden. Dies kann auch automatisiert erfolgen. Werden Cookies für unsere Website deaktiviert, können möglicherweise nicht mehr alle Funktionen der Website vollumfänglich genutzt werden.</p>
       </section>
     </article>
-    <aside layout:fragment="marginalcontent" th:include="templates/fragments :: about"></aside>
+    <aside class="marginalcontent" th:replace="templates/fragments :: about"></aside>
+    <ul id="links">
+      <li class="f" id="copyright">© <strong>mo</strong> 2013</li>
+        <li class="f"><a class="f" href="../impressum.html" th:href="@{/impressum.html}">Impressum</a></li>
+        <li class="f"><strong class="f">Datenschutz</strong></li>
+    </ul>
   </body>
 </html>
index 36db866..b7724bc 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/expertise.html'"
+    th:replace="~{templates/layout :: layout(uri='/expertise.html')}"
     >
   <head>
-    <title>Expertise</title>
+    <title id="title">Expertise</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
@@ -15,6 +13,8 @@
     <!--*/-->
   </head>
   <body>
-    <div layout:fragment="maincontent" layout:replace="templates/fragments :: wip ('Expertise')"></div>
+    <main class="maincontent">
+      <div th:replace="templates/fragments :: wip ('Expertise')"></div>
+    </main>
   </body>
 </html>
index 266faad..39a41e6 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/haftung-inhalte.html'"
+    th:replace="~{templates/layout :: layout(uri='/haftung-inhalte.html')}"
     >
   <head>
-    <title>Haftung für Inhalte</title>
+    <title id="title">Haftung für Inhalte</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
     <!--*/-->
   </head>
   <body>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>Haftung für Inhalte</h1></header>
       <p>Sämtliche Inhalte unserer Internetseiten sind mit größtmöglicher Sorgfalt erstellt worden. Dennoch ist es uns nicht möglich, eine Gewähr dafür zu übernehmen, dass diese Inhalte richtig, vollständig und aktuell sind. Wir sind gemäß § 7 Abs. 1 TMG für die eigenen Inhalte auf unseren Internetseiten verantwortlich. Gemäß den §§ 8, 9 und 10 TMG besteht für uns allerdings keine Verpflichtung, dass wir Informationen von Dritten, die übermittelt oder gespeichert wurden, überwachen oder Umstände ausforschen müssten, die Hinweise auf nicht rechtmäßige Tätigkeiten ergeben. Davon nicht berührt, ist unsere Verpflichtung zur Sperrung oder Entfernung von Informationen, welche uns von den allgemeinen Gesetzen auferlegt wird. Wir haften allerdings insoweit erst in dem Moment, in dem wir von einer konkreten Verletzung von Rechten Kenntnis erlangen. Wenn wir von einer solchen Verletzung von Rechten Kenntnis erlangen, wird eine unverzügliche Entfernung der entsprechenden Inhalte erfolgen.</p>
       <p><em>Quelle: Flegl Rechtsanwälte GmbH</em></p>
     </article>
-    <aside layout:fragment="marginalcontent" th:include="templates/fragments :: about"></aside>
+    <aside class="marginalcontent" th:replace="templates/fragments :: about"></aside>
   </body>
 </html>
index 53e0456..48f2016 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/haftung-links.html'"
+    th:replace="~{templates/layout :: layout(uri='/haftung-links.html')}"
     >
   <head>
-    <title>Haftung für Links</title>
+    <title id="title">Haftung für Links</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
     <!--*/-->
   </head>
   <body>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>Haftung für Links</h1></header>
       <p>Unsere Internetseiten enthalten Links, die zu externen Internetseiten von Dritten führen. Auf die Inhalte dieser externen Seiten haben wir keine Einflussmöglichkeiten. Es ist uns daher nicht möglich, eine Gewähr für diese Inhalte zu übernehmen. Die Verantwortung dafür hat immer der jeweilige Anbieter/Betreiber der entsprechenden Internetseiten. Wir überprüfen die von uns verlinkten Internetseiten zum Zeitpunkt der Verlinkung auf einen möglichen Rechtsverstoß. Die Verlinkung kommt nur dann zustande, wenn ein rechtswidriger Inhalt zu diesem Zeitpunkt nicht erkennbar ist. Es kann uns jedoch, ohne einen konkreten Anhaltspunkt, nicht zugemutet werden, ständig die verlinkten Internetseiten inhaltlich zu kontrollieren. Wenn wir jedoch von einer Rechtsverletzung Kenntnis erlangen, werden wir den entsprechenden Link unverzüglich entfernen.</p>
       <p><em>Quelle: Flegl Rechtsanwälte GmbH</em></p>
     </article>
-    <aside layout:fragment="marginalcontent" th:include="templates/fragments :: about"></aside>
+    <aside class="marginalcontent" th:replace="templates/fragments :: about"></aside>
   </body>
 </html>
index f5076c4..fd19e83 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/impressum.html'"
+    th:replace="~{templates/layout :: layout(uri='/impressum.html')}"
     >
   <head>
-    <title>Impressum</title>
+    <title id="title">Impressum</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
@@ -15,7 +13,7 @@
     <!--*/-->
   </head>
   <body>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>Impressum</h1></header>
       <p><em>Angaben gemäß § 5 TMG:</em></p>
       <p>
         <a href="contact.html" th:href="@{/contact.html}" title="Show all contact-informations">contact-page</a>.
       </p>
     </article>
-    <aside layout:fragment="marginalcontent" th:include="templates/fragments :: about"></aside>
-    <ul layout:fragment="footer">
+    <aside class="marginalcontent" th:replace="templates/fragments :: about"></aside>
+    <ul id="links">
       <li class="f" id="copyright">© <strong>mo</strong> 2013</li>
       <li class="f"><strong class="f">Impressum</strong></li>
-      <li class="f about"><a class="f" href="about.html" th:href="@{/about.html}">About</a></li>
+      <li class="f"><a class="f" href="../datenschutz.html" th:href="@{/datenschutz.html}">Datenschutz</a></li>
     </ul>
   </body>
 </html>
index 0cb999a..5d84a9d 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="contentclass='nomenu', uri='/index.html'"
+    th:replace="~{templates/layout :: layout(uri='/index.html', contentclass='nomenu')}"
     >
   <head>
-    <title>Home</title>
+    <title id="title">Home</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
     <!--*/-->
   </head>
   <body>
-    <ol layout:fragment="breadcrumb">
+    <ol id="crumbs">
       <li class="b"><strong class="b">Home</strong></li>
     </ol>
-    <h1 layout:fragment="header"><strong class="l"><img class="l" src="/img/logo.svg" alt="juplo"/></strong></h1>
-    <nav layout:fragment="navigation">
+    <h1 id="logo"><strong class="l"><img class="l" src="/img/logo.svg" alt="juplo"/></strong></h1>
+    <nav id="navigation">
       <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>
@@ -30,7 +28,7 @@
         <li class="m about"><a href="about.html" th:href="@{/about.html}" class="m">About</a></li>
       </ul>
     </nav>
-    <main class="main" layout:fragment="maincontent">
+    <main class="maincontent">
       <div class="pack bg cf">
         <div class="p right">
           <h2>Work In Progress&#8230;</h2>
@@ -55,7 +53,7 @@
         <p><a href="/hibernate-maven-plugin/index.html" title="Visit the plugin-documentation">Learn more...</a></p>
       </div>
     </main>
-    <aside class="main" layout:fragment="marginalcontent">
+    <aside class="marginalcontent">
       <div class="widget widget_recent_entries">
         <h2 class="widgettitle">Recent Posts</h2>
         <ul>
index 019a888..b2c3d8b 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Projects', uri='/potemkin.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin.html', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>Projects - Potemkinsche Dörfer!</title>
+    <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"/>
@@ -15,7 +13,9 @@
     <script src="js/less-1.7.0.min.js"></script>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-   <h1>Projects - Potemkinsche Dörfer!</h1>
+  <body>
+   <main class="maincontent">
+     <h1>Projects - Potemkinsche Dörfer!</h1>
+   </main>
   </body>
 </html>
index 9dbe8ea..deab99b 100644 (file)
@@ -1,51 +1,51 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='accelerator - Overview', uri='/potemkin/accelerator.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/accelerator.html', json='MERGE:potemkin.json,MERGE:{&quot;pages&quot;:{
+    &quot;/potemkin.html&quot;: {
+      &quot;name&quot;: &quot;Projects&quot;,
+      &quot;childs&quot;: {
+        &quot;/potemkin.html&quot;: &quot;Overview&quot;,
+        &quot;/potemkin/typo.html&quot;: &quot;Typography&quot;,
+        &quot;/potemkin/html-experimente.html&quot;: &quot;HTML-Experimente&quot;,
+        &quot;/potemkin/accelerator.html&quot;: &quot;accelerator!&quot;,
+        &quot;/potemkin/fix-swf/overview.html&quot;: &quot;Fix SWF&quot;
+      },
+      &quot;crumbs&quot;: [
+        { &quot;uri&quot;: &quot;/potemkin.html&quot;, &quot;name&quot;: &quot;Projects&quot; }
+      ]
+    },
+    &quot;/potemkin/accelerator.html&quot;: {
+      &quot;name&quot;: &quot;Overview&quot;,
+      &quot;childs&quot;: {
+        &quot;/potemkin/accelerator.html&quot;: &quot;Overview&quot;,
+        &quot;/potemkin/accelerator.html#read-on&quot;: &quot;Read on&quot;,
+        &quot;/potemkin/accelerator.html#read-on-and-on&quot;: &quot;Read on and on&quot;,
+        &quot;/potemkin/accelerator.html#read-on-and-on-and-on&quot;: &quot;Read on and on and on&quot;
+      },
+      &quot;crumbs&quot;: [
+        { &quot;uri&quot;: &quot;/potemkin.html&quot;, &quot;name&quot;: &quot;Projects&quot; },
+        { &quot;uri&quot;: &quot;/potemkin/accelerator.html&quot;, &quot;name&quot;: &quot;accelerator&quot; },
+        { &quot;uri&quot;: &quot;/potemkin/accelerator.html&quot;, &quot;name&quot;: &quot;Overview&quot; }
+      ]
+    },
+    &quot;/potemkin/accelerator.html#read-on&quot;: { &quot;name&quot;: &quot;Read on&quot; },
+    &quot;/potemkin/accelerator.html#read-on-and-on&quot;: { &quot;name&quot;: &quot;Read on and on&quot; },
+    &quot;/potemkin/accelerator.html#read-on-and-on-and-on&quot;: { &quot;name&quot;: &quot;Read on and on and on&quot; }
+    }}')}"
     >
   <head>
+    <title id="title">accelerator - Overview</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Fix SWF - Overview</title>
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
     <link rel="stylesheet" type="text/css" href="../../css/screen.css" media="screen"/>
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables='MERGE:potemkin.json,MERGE:{"pages":{
-    "/potemkin.html": {
-      "name": "Projects",
-      "childs": {
-        "/potemkin.html": "Overview",
-        "/potemkin/typo.html": "Typography",
-        "/potemkin/html-experimente.html": "HTML-Experimente",
-        "/potemkin/accelerator.html": "accelerator!",
-        "/potemkin/fix-swf/overview.html": "Fix SWF"
-      },
-      "crumbs": [
-        { "uri": "/potemkin.html", "name": "Projects" }
-      ]
-    },
-    "/potemkin/accelerator.html": {
-      "name": "Overview",
-      "childs": {
-        "/potemkin/accelerator.html": "Overview",
-        "/potemkin/accelerator/read-on.html": "Read on",
-        "/potemkin/accelerator/read-on-and-on.html": "Read on and on",
-        "/potemkin/accelerator/read-on-and-on-and-on.html": "Read on and on and on"
-      },
-      "crumbs": [
-        { "uri": "/potemkin.html", "name": "Projects" },
-        { "uri": "/potemkin/accelerator.html", "name": "accelerator" },
-        { "uri": "/potemkin/accelerator.html", "name": "Overview" }
-      ]
-    },
-    "/potemkin/accelerator/read-on.html": { "name": "Read on" },
-    "/potemkin/accelerator/read-on-and-on.html": { "name": "Read on and on" },
-    "/potemkin/accelerator/read-on-and-on-and-on.html": { "name": "Read on and on and on" }
-}}'>
-    <h1>Overview - DUMMY</h1>
+  <body>
+    <main class="maincontent">
+      <h1>Accelerator - DUMMY</h1>
+    </main>
   </body>
 </html>
index 7d90bfc..77278b5 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Fix SWF - Getting Started', uri='/potemkin/fix-swf/getting-started.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/fix-swf/getting-started.html', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>Fix SWF - Getting Started</title>
+    <title id="title">Fix SWF - Getting Started</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
@@ -14,7 +12,9 @@
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <h1>Getting Started - DUMMY</h1>
+  <body>
+    <main class="maincontent">
+      <h1>Getting Started - DUMMY</h1>
+    </main>
   </body>
 </html>
index 10cefa7..b5156c0 100644 (file)
@@ -1,20 +1,20 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Fix SWF - Overview', uri='/potemkin/fix-swf/overview.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/fix-swf/overview.html', json='MERGE:/potemkin.json')}"
     >
   <head>
+    <title id="title">Fix SWF - Overview</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Fix SWF - Overview</title>
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
     <link rel="stylesheet" type="text/css" href="../../css/screen.css" media="screen"/>
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
   <body thymeproxy:variables="MERGE:potemkin.json">
-    <h1>Overview - DUMMY</h1>
+    <main class="maincontent">
+      <h1>Overviw - DUMMY</h1>
+    </main>
   </body>
 </html>
index 60ec5e7..b4b5c16 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/potemkin/html-experimente.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/html-experimente.html', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>HTML-Experimente</title>
+    <title id="title">HTML-Experimente</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../css/base.css"/>
@@ -15,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <article class="main" layout:fragment="maincontent">
+  <body>
+    <article class="maincontent">
       <header><h1>HTML-Elemente / spezielle Seiten</h1></header>
       <ul>
         <li><a href="html-experimente/formulare.html" th:href="@{/potemkin/html-experimente/formulare.html}">Formulare</a></li>
index ece0715..3fab21b 100644 (file)
@@ -1,18 +1,16 @@
 <!DOCTYPE html>
-<html
-    xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Nur das Basis-Layout', uri='/potemkin/html-experimente/basis-layout.html'"
-    >
-  <head layout:fragment="head">
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
     <title>HTML-Experimente - Basis-Layout</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" th:remove="all"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/base.css" th:href="@{/css/base.min.css}"/>
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+  <body th:replace="~{templates/layout :: body(uri='/potemkin/html-experimente/basis-layout.html', json='MERGE:/potemkin.json')}">
+    <main class="maincontent">
+      <header><h1>Nur das Basis-Layout</h1></header>
+      <strong th:replace="templates/layout :: maincontent">MAIN-CONTENT</strong>
+    </main>
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index 1c6c109..c36fc6c 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Seite mit sehr langem Breadcrumb', uri='/potemkin/html-experimente/breadcrumb.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/html-experimente/breadcrumb.html', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>HTML-Experimente - Langer Breadcrumb</title>
+    <title id="title">HTML-Experimente - Langer Breadcrumb</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <ol layout:fragment="breadcrumb">
+  <body>
+    <ol id="crumbs">
       <li class="b"><a class="b" href="../index.html" th:href="@{/index.html}">Home</a></li>
       <li class="b"><a class="b" href="../potemkin.html" th:href="@{/projects.html}">Projects</a></li>
       <li class="b"><a class="b" href="html-experimente.html" th:href="@{/potemkin/html-experimente.html}">HTML-Experimente</a></li>
       <li class="b"><strong class="b">Dies ist ein Seite mit einem unendlich langen Breadcrumb-Eintrag der bestimmt nicht in den vorgesehenen Platz passt</strong></li>
     </ol>
+    <article class="maincontent">
+      <header><h1>Seite mit sehr langem Breadcrumb</h1></header>
+      <p>Eine Seite mit einem extrem langen Breadcrumb...</p>
+    </article>
   </body>
 </html>
index ff4c162..184fe03 100644 (file)
@@ -1,19 +1,17 @@
 <!DOCTYPE html>
-<html
-    xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Die für den Ausdruck angepasste Ansicht', uri='/potemkin/html-experimente/druck-layout.html'"
-    >
-  <head layout:fragment="head">
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
     <title>HTML-Experimente - Druck-Layout</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" th:remove="all"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/base.css" th:href="@{/css/base.css}"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/print.css" th:href="@{/css/print.css}"/>
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+  <body th:replace="~{templates/layout :: body(uri='/potemkin/html-experimente/druck-layout.html', json='MERGE:/potemkin.json')}">
+    <main class="maincontent">
+      <header><h1>Die für den Ausdruck angepasste Ansicht</h1></header>
+      <strong th:replace="templates/layout :: maincontent">MAIN-CONTENT</strong>
+    </main>
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index c4af1a3..faba7f6 100644 (file)
@@ -1,16 +1,18 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
+    th:replace="~{templates/layout :: layout(uri='unknown', json='MERGE:/potemkin.json')}"
     xmlns:layout="http://www.thymeleaf.org"
     layout:decorator="templates/layout"
     >
   <head>
-    <title>This Page Will Raise An Error</title>
+    <title id="title">This Page Will Raise An Error</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" th:remove="all"/>
     <link rel="stylesheet" type="text/css" href="../css/base.css"/>
     <link rel="stylesheet" type="text/css" href="../css/screen.css" media="screen"/>
     <link rel="stylesheet" type="text/css" href="../css/print.css" media="print"/>
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
+  <body>
+    <p>This page will raise an error, because the <strong><code>uri</code></strong> is set to an unknown value...</p>
   </body>
 </html>
index c73bb13..8555ff2 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="contentclass='onecolumn', uri='/potemkin/html-experimente/fast-leer-einspaltig-mit-marginalinhalt.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/html-experimente/fast-leer-einspaltig-mit-marginalinhalt.html', contentclass='onecolumn', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>HTML-Experimente - Fast leere einspaltige Seite mit Marginalinhalt</title>
+    <title id="title">HTML-Experimente - Fast leere einspaltige Seite mit Marginalinhalt</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
@@ -15,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <nav layout:fragment="navigation">
+  <body>
+    <nav id="navigation">
       <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>
         <li class="m about"><a href="../about.html" th:href="@{/about.html}" class="m">About</a></li>
       </ul>
     </nav>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>Fast leere einspaltige Seite mit Marginalinhalt</h1></header>
       <p><strong>KAPUTT:</strong> siehe Erklärung im Commit</p>
     </article>
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index 4728163..59ba62d 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="contentclass='onecolumn', uri='/potemkin/html-experimente/fast-leer-einspaltig.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/html-experimente/fast-leer-einspaltig.html', contentclass='onecolumn', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>HTML-Experimente - Fast leere einspaltige Seite</title>
+    <title id="title">HTML-Experimente - Fast leere einspaltige Seite</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
@@ -15,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <nav layout:fragment="navigation">
+  <body>
+    <nav id="navigation">
       <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>
@@ -27,7 +24,7 @@
         <li class="m about"><a href="../about.html" th:href="@{/about.html}" class="m">About</a></li>
       </ul>
     </nav>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>Fast leere einspaltige Seite</h1></header>
       <p><strong>KAPUTT:</strong> siehe Erklärung im Commit</p>
     </article>
index f8521a1..4e4540f 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="contentclass='nomenu', uri='/potemkin/html-experimente/fast-leer-kein-menü-aber-marginalinhalt.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/html-experimente/fast-leer-kein-menü-aber-marginalinhalt.html', contentclass='nomenu', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>HTML-Experimente - Fast leere Seite ohne Menü aber mit Marginalspalte</title>
+    <title id="title">HTML-Experimente - Fast leere Seite ohne Menü aber mit Marginalspalte</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
@@ -15,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <nav layout:fragment="navigation">
+  <body>
+    <nav id="navigation">
       <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>
         <li class="m about"><a href="../about.html" th:href="@{/about.html}" class="m">About</a></li>
       </ul>
     </nav>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>Fast leere Seite ohne Menü aber mit Marginalinhalt</h1></header>
       <p>Ein ganz bischen Text...</p>
     </article>
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index 664e086..05907e2 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="contentclass='nomenu', uri='/potemkin/html-experimente/fast-leer-kein-menü.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/html-experimente/fast-leer-kein-menü.html', contentclass='nomenu', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>HTML-Experimente - Fast leere Seite ohne Menü</title>
+    <title id="title">HTML-Experimente - Fast leere Seite ohne Menü</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
@@ -15,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <nav layout:fragment="navigation">
+  <body>
+    <nav id="navigation">
       <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>
@@ -27,7 +24,7 @@
         <li class="m about"><a href="../about.html" th:href="@{/about.html}" class="m">About</a></li>
       </ul>
     </nav>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>Fast leere Seite ohne Menü</h1></header>
       <p>Ein ganz bischen Text...</p>
     </article>
index 7a68024..d8b950e 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with=", uri='/potemkin/html-experimente/fast-leer-mit-menü-und-marginalinhalt.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/html-experimente/fast-leer-mit-menü-und-marginalinhalt.html', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>HTML-Experimente - Fast leere Seite mit Menü und Marginalinhalt</title>
+    <title id="title">HTML-Experimente - Fast leere Seite mit Menü und Marginalinhalt</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <article class="main" layout:fragment="maincontent">
+  <body>
+    <article class="maincontent">
       <header><h1>Fast leere Seite mit Menü und Marginalinhalt</h1></header>
       <p>Ein ganz bischen Text...</p>
     </article>
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index e9ef78d..9db3dd4 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with=", uri='/potemkin/html-experimente/fast-leer-mit-menü.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/html-experimente/fast-leer-mit-menü.html', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>HTML-Experimente - Fast leere Seite mit Menü</title>
+    <title id="title">HTML-Experimente - Fast leere Seite mit Menü</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
@@ -15,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <article class="main" layout:fragment="maincontent">
+  <body>
+    <article class="maincontent">
       <header><h1>Fast leere Seite mit Menü</h1></header>
       <p>Ein ganz bischen Text...</p>
     </article>
index 0f12f09..3a9d2eb 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/potemkin/html-experimente/formulare.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/html-experimente/formulare.html', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>HTML-Experimente - Formulare</title>
+    <title id="title">HTML-Experimente - Formulare</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
@@ -15,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <article class="main" layout:fragment="maincontent">
+  <body>
+    <article class="maincontent">
       <header><h1>Formulare</h1></header>
       <form class="form" action="#" method="get">
         <h2 class="f">Anzeigetext</h2>
index 1e8c897..a750094 100644 (file)
@@ -1,17 +1,15 @@
 <!DOCTYPE html>
-<html
-    xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Alle Stylings deaktiviert', uri='/potemkin/html-experimente/kein-layout.html'"
-    >
-  <head layout:fragment="head">
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
     <title>HTML-Experimente - Kein Layout</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" th:remove="all"/>
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+  <body th:replace="~{templates/layout :: body(uri='/potemkin/html-experimente/kein-layout.html', json='MERGE:/potemkin.json')}">
+    <main class="maincontent">
+      <header><h1>Alle Stylings deaktiviert</h1></header>
+      <strong th:replace="templates/layout :: maincontent">MAIN-CONTENT</strong>
+    </main>
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index da469b3..7992afc 100644 (file)
@@ -1,19 +1,17 @@
 <!DOCTYPE html>
-<html
-    xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Layout für Smartphones', uri='/potemkin/html-experimente/phone.html'"
-    >
-  <head layout:fragment="head">
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
     <title>HTML-Experimente - Layout PHONE</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" th:remove="all"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/base.css" th:href="@{/css/base.css}"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/phone.css" th:href="@{/css/phone.css}"/>
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+  <body th:replace="~{templates/layout :: body(uri='/potemkin/html-experimente/phone.html', json='MERGE:/potemkin.json')}">
+    <main class="maincontent">
+      <header><h1>Layout für Smartphones</h1></header>
+      <strong th:replace="templates/layout :: maincontent">MAIN-CONTENT</strong>
+    </main>
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index 520ce9a..e9df281 100644 (file)
@@ -1,19 +1,17 @@
 <!DOCTYPE html>
-<html
-    xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Nur das Basis-Layout und die Seitenaufteiltung', uri='/potemkin/html-experimente/seitenaufteilung.html'"
-    >
-  <head layout:fragment="head">
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
     <title>HTML-Experimente - Basis-Layout &amp; Seitenaufteilung</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" th:remove="all"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/base.css" th:href="@{/css/base.css}"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/seitenaufteilung.css" th:href="@{/css/seitenaufteilung.css}"/>
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+  <body th:replace="~{templates/layout :: body(uri='/potemkin/html-experimente/seitenaufteilung.html', json='MERGE:/potemkin.json')}">
+    <main class="maincontent">
+      <header><h1>Nur das Basis-Layout und die Seitenaufteiltung</h1></header>
+      <strong th:replace="templates/layout :: maincontent">MAIN-CONTENT</strong>
+    </main>
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index 6216fa3..edb20b3 100644 (file)
@@ -1,19 +1,17 @@
 <!DOCTYPE html>
-<html
-    xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Nur das Basis-Layout und die Seitenaufteiltung', uri='/potemkin/html-experimente/seitenkopf.html'"
-    >
-  <head layout:fragment="head">
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
     <title>HTML-Experimente - Basis-Layout &amp; Seitenkopf</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" th:remove="all"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/base.css" th:href="@{/css/base.css}"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/seitenkopf.css" th:href="@{/css/seitenkopf.css}"/>
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+  <body th:replace="~{templates/layout :: body(uri='/potemkin/html-experimente/seitenkopf.html', json='MERGE:/potemkin.json')}">
+    <main class="maincontent">
+      <header><h1>Nur das Basis-Layout und der Seitenkopf</h1></header>
+      <strong th:replace="templates/layout :: maincontent">MAIN-CONTENT</strong>
+    </main>
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index 2699349..01d526f 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/potemkin/html-experimente/symbole.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/html-experimente/symbole.html', json='MERGE:/potemkin.json')}"
     >
   <head>
-    <title>HTML-Experimente - Symbol-Font</title>
+    <title id="title">HTML-Experimente - Symbol-Font</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
@@ -15,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <article class="main" layout:fragment="maincontent">
+  <body>
+    <article class="maincontent">
       <header><h1>Symbol-Font</h1></header>
       <h2>100%</h2>
       <div class="symbols">
index 54a6a8d..c798822 100644 (file)
@@ -1,19 +1,17 @@
 <!DOCTYPE html>
-<html
-    xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Layout für Tablets', uri='/potemkin/html-experimente/tablet.html'"
-    >
-  <head layout:fragment="head">
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
     <title>HTML-Experimente - Layout TABLET</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" th:remove="all"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/base.css" th:href="@{/css/base.css}"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/tablet.css" th:href="@{/css/tablet.css}"/>
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+  <body th:replace="~{templates/layout :: body(uri='/potemkin/html-experimente/tablet.html', json='MERGE:/potemkin.json')}">
+    <main class="maincontent">
+      <header><h1>Layout für Tablets</h1></header>
+      <strong th:replace="templates/layout :: maincontent">MAIN-CONTENT</strong>
+    </main>
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index f5cfa0b..c77de10 100644 (file)
@@ -1,13 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/testlab"
-    th:with="title='Media-Query-Test: BEISPIEL', uri='/potemkin/html-experimente/testlab.html'"
+    th:replace="~{templates/testlab :: testlab}"
     >
   <head>
-    <title>HTML-Experimente - Media-Query-Test: BEISPIEL</title>
+    <title id="title">HTML-Experimente - Media-Query-Test: BEISPIEL</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../../css/base.css"/>
@@ -15,8 +12,8 @@
     <link rel="stylesheet" type="text/css" href="../../css/print.css" media="print"/>
     <!--*/-->
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <div layout:fragment="content" th:remove="tag">
+  <body>
+    <div class="content">
       <form class="testlab form" action="#" method="get">
         <h2 class="f">Anzeigetext</h2>
         <div class="f textarea">
index 3e9e69f..d6fbc1f 100644 (file)
@@ -1,19 +1,17 @@
 <!DOCTYPE html>
-<html
-    xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    xmlns:th="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="title='Layout für sehr kleine Bildschirmgrößen', uri='/potemkin/html-experimente/tiny.html'"
-    >
-  <head layout:fragment="head">
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
     <title>HTML-Experimente - Layout TINY</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" th:remove="all"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/base.css" th:href="@{/css/base.css}"/>
     <link rel="stylesheet" th:rel="stylesheet" type="text/css" href="../../css/tiny.css" th:href="@{/css/tiny.css}"/>
   </head>
-  <body thymeproxy:variables="MERGE:potemkin.json">
-    <aside layout:fragment="marginalcontent" th:replace="templates/fragments :: marginalcontent">
+  <body th:replace="~{templates/layout :: body(uri='/potemkin/html-experimente/tiny.html', json='MERGE:/potemkin.json')}">
+    <main class="maincontent">
+      <header><h1>Layout für sehr kleine Bildschirmgrößen</h1></header>
+      <strong th:replace="templates/layout :: maincontent">MAIN-CONTENT</strong>
+    </main>
+    <aside class="marginalcontent" th:replace="templates/fragments :: marginalcontent">
       MARGINAL-CONTENT
     </aside>
   </body>
index 83d0f3c..44074cd 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/potemkin/typo.html'"
+    th:replace="~{templates/layout :: layout(uri='/potemkin/typo.html', json='MERGE:potemkin.json')}"
     >
   <head>
-    <title>Typography</title>
+    <title id="title">Typography</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../css/base.css"/>
@@ -15,8 +13,8 @@
     <script src="../js/prettify.js" th:src="@{/js/prettify.js}"></script>
     <!--*/-->
   </head>
-  <body onload="prettyPrint()" thymeproxy:variables="MERGE:potemkin.json">
-    <article layout:fragment="maincontent">
+  <body onload="prettyPrint()">
+    <article class="maincontent">
       <header><h1>Typography</h1></header>
       <p>
         Lorem ipsum dolor <a href="#da">sit amet</a>, consectetur adipisicing elit,
index ee013cd..9a7ed7a 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/references.html'"
+    th:replace="~{templates/layout :: layout(uri='/references.html')}"
     >
   <head>
-    <title>References</title>
+    <title id="title">References</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
@@ -15,6 +13,8 @@
     <!--*/-->
   </head>
   <body>
-    <div layout:fragment="maincontent" layout:replace="templates/fragments :: wip ('Expertise')"></div>
+    <main class="maincontent">
+      <div th:replace="templates/fragments :: wip ('References')"></div>
+    </main>
   </body>
 </html>
index d3ecc7f..61269c2 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/templates/404.html', contentclass='nomenu'"
+    th:replace="~{templates/layout :: layout(uri='/templates/404.html', contentclass='nomenu')}"
     >
   <head>
-    <title>404: Page Not Found!</title>
+    <title id="title">404: Page Not Found!</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../css/base.css"/>
     <!--*/-->
   </head>
   <body>
-    <ol layout:fragment="breadcrumb">
+    <ol id="crumbs">
+      <li class="b"><a class="b" href="../index.html" th:href="@{/index.html}">Home</a></li>
       <li class="b"><strong class="b">404: Page Not Found!</strong></li>
     </ol>
-    <nav layout:fragment="navigation">
+    <nav id="navigation">
       <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>
@@ -29,7 +28,7 @@
         <li class="m about"><a href="../about.html" th:href="@{/about.html}" class="m">About</a></li>
       </ul>
     </nav>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>404: Page Not Found!</h1></header>
       <p>We do not know, where you are.</p>
       <p>And we do not know, why you are here.</p>
index cd175ca..e749e6f 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/templates/error.html', contentclass='nomenu'"
+    th:replace="~{templates/layout :: layout(uri='/templates/error.html', contentclass='nomenu')}"
     >
   <head>
-    <title>An Unexpected Error Occured!</title>
+    <title id="title">An Unexpected Error Occured!</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="../css/base.css"/>
     <!--*/-->
   </head>
   <body>
-    <ol layout:fragment="breadcrumb">
+    <ol id="crumbs">
+      <li class="b"><a class="b" href="../index.html" th:href="@{/index.html}">Home</a></li>
       <li class="b"><strong class="b">An Unexpected Error Occured!</strong></li>
     </ol>
-    <nav layout:fragment="navigation">
+    <nav id="navigation">
       <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>
@@ -29,7 +28,7 @@
         <li class="m about"><a href="../about.html" th:href="@{/about.html}" class="m">About</a></li>
       </ul>
     </nav>
-    <article class="main" layout:fragment="maincontent">
+    <article class="maincontent">
       <header><h1>An Unexpected Error Occured!</h1></header>
       <p>We do not know, what happend.</p>
       <p>But we can tell you: WE ARE SORRY!</p>
index a5cad60..80b5e75 100644 (file)
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html th:fragment="layout (title, content)" xmlns:th="http://www.thymeleaf.org">
+<html th:fragment="layout" xmlns:th="http://www.thymeleaf.org">
 <head>
     <title th:replace="${title}?:_">Layout Title</title>
 </head>
index b0f81f4..698c8b8 100644 (file)
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
-<html th:replace="~{/templates/example/layout.html :: layout(~{::title}, ~{::section})}">
+<html th:replace="~{templates/example/layout :: layout(~{::title}, ~{::section})}">
 <head>
     <title>Page Title</title>
 </head>
index 7eec1ba..9c999c8 100644 (file)
@@ -10,7 +10,7 @@
   <body>
     <h1>Explanation fo the german word "Impressum"</h1>
     <hr />
-    <aside class="m" th:fragment="about">
+    <div th:fragment="about">
       <h1>What the f*#!@ is an <em>Impressum</em> ?!?</h1>
       The german law enforces the so called <em>Impressum</em> to enable
       customers to easily find out all juristically relevant informations
       <h1>Find out more...</h1>
       If you just want to learn more about juplo you should better
       <a href="../about.html" th:href="@{/about.html}" title="Learn more about juplo now">visit our about-pages</a>.
-    </aside>
+    </div>
     <hr />
     <h1>Work-in-progress-hint</h1>
     <hr />
-    <article class="main" layout:fragment="wip(title)">
+    <article class="main" th:fragment="wip(title)">
       <header><h1 th:text="${title}">PAGE-TITLE</h1></header>
-      <div class="wip" th:fragment="wip">
+      <div class="wip">
         <img class="w" src="/img/comming-soon.png" alt="Comming soon..."/>
         <p th:include="templates/layout :: maincontent" th:remove="tag">
           PAGE-CONTENT
index 70e1017..007770a 100644 (file)
@@ -2,11 +2,11 @@
 <html
     xmlns="http://www.w3.org/1999/xhtml"
     xmlns:th="http://www.thymeleaf.org"
-    xmlns:layout="http://www.thymeleaf.org"
+    th:fragment="layout(uri)"
     thymeproxy:variables="SET:sitemap.json"
     >
-  <head th:fragment="head" layout:fragment="head">
-    <title layout:title-pattern="$DECORATOR_TITLE - $CONTENT_TITLE" th:text="'juplo'">juplo - BASISTEMPLATE</title>
+  <head>
+    <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" />
     <!-- Default / Responsive -->
@@ -36,6 +36,7 @@
     <![endif]-->
   </head>
   <body
+      th:fragment="body(uri)"
       thymeproxy:variables="${json}"
       th:with="page=${pages.get(uri)},crumbs=${page['crumbs']}"
       id="top"
       onload="prettyPrint()"
       >
     <div id="page" class="cf">
-      <header id="header">
-        <h1 id="logo" layout:fragment="header"><a href="../index.html" th:href="@{/}" title="Home" class="l"><img class="l" src="/img/logo.svg" alt="juplo"/></a></h1>
+      <header id="header"><!-- TODO: Vereinfachung -> für uri == index.html a gegen strong ausstauschen -->
+        <h1 id="logo" th:include="~{::#logo}"><a href="../index.html" th:href="@{/}" title="Home" class="l" ><img class="l" src="/img/logo.svg" alt="juplo"/></a></h1>
         <span id="slogan"><strong>Java</strong> bits from nerds for nerds</span>
         <hr class="h" />
       </header>
       <div id="breadcrumb">
         <strong class="b title">You are here:</strong>
-        <ol class="b" layout:fragment="breadcrumb">
+        <ol class="b" th:include="~{::#crumbs}?:_">
           <li class="b"><a class="b" href="../index.html" th:href="@{/index.html}">Home</a></li>
           <li class="b" th:each="crumb: ${crumbs}">
             <a class="b" href="../projects.html" th:href="@{${crumb.uri}}" th:text="${crumb.name}">Projects</a>
@@ -64,8 +65,8 @@
         <hr class="b" />
       </div>
       <main class="content cf">
-        <article id="content" class="main" layout:fragment="maincontent" th:class="'main'">
-          <header><h1 th:text="${title}">juplo - BASISTEMPLATE</h1></header>
+        <article id="content" class="main" th:include="~{::.maincontent}">
+          <header><h1 th:include="${title}">juplo - BASISTEMPLATE</h1></header>
           <div th:fragment="maincontent">
             <p>
               <strong>Lorem ipsum</strong> dolor
         </article>
         <div class="marginal">
           <nav id="nav"
-              layout:fragment="navigation"
+              th:include="~{::#navigation}?:_"
               th:with="section=${crumbs != null ? crumbs[0] : null}"
               >
             <hr class="n"/>
               <span class="s">Submenu for section</span>
               <a class="s selected" href="../projects.html" th:href="@{${section.uri}}" th:text="${section.name}">Projects</a>
             </h2>
-            <ul layout:fragment="submenu"
+            <ul th:include="${submenu}?:_"
                 th:with="
                   len=${crumbs.size()},
                   submenu=${pages[section.uri]['childs']},
             </ul>
             <hr class="n"/>
           </nav>
-          <aside class="m" layout:fragment="marginalcontent" th:remove="tag">
+          <aside class="m" th:insert="~{::.marginalcontent}?:~{}">
           <!--/* the following  is only visible during natural templating -->
             <h1>Other nasty but marginal stuff</h1>
             <p>
       </main>
       <footer id="footer">
         <hr class="f" />
-        <ul id="footerlinks" layout:fragment="footer">
+        <ul id="footerlinks" th:include="~{::#links}?:_">
           <li class="f" id="copyright">© <strong>mo</strong> 2013</li>
           <li class="f"><a class="f" href="../impressum.html" th:href="@{/impressum.html}">Impressum</a></li>
           <li class="f"><a class="f" href="../datenschutz.html" th:href="@{/datenschutz.html}">Datenschutz</a></li>
index ad6b5a0..4eecf1a 100644 (file)
@@ -2,10 +2,10 @@
 <html
     xmlns="http://www.w3.org/1999/xhtml"
     xmlns:th="http://www.thymeleaf.org"
-    xmlns:layout="http://www.thymeleaf.org"
+    th:fragment="testlab"
     >
   <head>
-    <title th:replace="templates/layout :: head">juplo - TESTLABTEMPLATE</title>
+    <title th:replace="~{::#title}">juplo - TESTLABTEMPLATE</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
     <style type="text/css">
 
@@ -62,7 +62,7 @@
       <div class="testlab tl670">670px
         <div class="testlab tl480">480px
           <div class="testlab tl320">320px
-            <strong layout:fragment="content">CONTENT</strong>
+            <strong th:replace="~{::.content}">CONTENT</strong>
           </div>
         </div>
       </div>
index 3ac8e43..5d19a2c 100644 (file)
@@ -1,12 +1,10 @@
 <!DOCTYPE html>
 <html
     xmlns="http://www.w3.org/1999/xhtml"
-    xmlns:layout="http://www.thymeleaf.org"
-    layout:decorator="templates/layout"
-    th:with="uri='/urheberrechte.html'"
+    th:replace="~{templates/layout :: layout(uri='/urheberrechte.html')}"
     >
   <head>
-    <title>Urheberrecht</title>
+    <title id="title">Urheberrecht</title>
     <!--/*-->
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
     <link rel="stylesheet" type="text/css" href="css/base.css"/>
     <!--*/-->
   </head>
   <body>
-    <article class="main" layout:fragment="maincontent">
-      <header><h1 layout:fragment="title">Urheberrechte</h1></header>
+    <article class="maincontent">
+      <header><h1>Urheberrechte</h1></header>
       <p>Die auf unseren Internetseiten enthaltenen Werke und Inhalte unterstehen dem Urheberrecht. Ohne schriftliche Genehmigung des jeweiligen Erstellers oder Autors dürfen die Werke bzw. Inhalte nicht vervielfältigt, bearbeitet, verbreitet und verwertet werden. Das Herunterladen und Kopieren unserer Internetseite ist für den privaten Gebrauch erlaubt, nicht jedoch für den kommerziellen. Wir weisen darauf hin, dass hinsichtlich der Inhalte auf unserer Internetseite, soweit sie nicht von uns erstellt worden sind, das Urheberrecht von Dritten beachtet wurde. Inhalte von Dritten erhalten als solche eine Kennzeichnung von uns. Wir wären Ihnen dankbar, wenn Sie uns einen Hinweis erteilen würden, falls Sie trotzdem auf eine Urheberrechtsverletzung gestoßen sind. Wenn wir von einer solchen Urheberrechtsverletzung Kenntnis erlangen, werden wir den entsprechenden Inhalt unverzüglich entfernen.</p>
       <p><em>Quelle: Flegl Rechtsanwälte GmbH</em></p>
     </article>
-    <aside layout:fragment="marginalcontent" th:include="templates/fragments :: about"></aside>
+    <aside class="marginalcontent" th:replace="templates/fragments :: about"></aside>
   </body>
 </html>