]> juplo.de Git - website/commitdiff
WIP:layout
authorKai Moritz <kai@juplo.de>
Wed, 10 Dec 2025 18:51:38 +0000 (19:51 +0100)
committerKai Moritz <kai@juplo.de>
Wed, 10 Dec 2025 18:51:38 +0000 (19:51 +0100)
layouts/_partials/footer.html
layouts/_partials/header.html
layouts/_partials/menu.html
layouts/baseof.html

index a7cd916d054898baf4b77b5780c7d4843dc6ff4f..08fad685ca2fdfd83aa85f34692eb863698fffd2 100644 (file)
@@ -1 +1,8 @@
-<p>Copyright {{ now.Year }}. All rights reserved.</p>
+<footer id="footer">
+  <hr class="f" />
+  <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>
+  </ul>
+</footer>
index 7980a00e1e2613fa8adc68e98a99460bd6131422..78e6631a1153cef1e02977d91df87e71bd43a7aa 100644 (file)
@@ -1,2 +1,5 @@
-<h1>{{ site.Title }}</h1>
-{{ partial "menu.html" (dict "menuID" "main" "page" .) }}
+<header id="header"><!-- TODO: Vereinfachung -> für uri == index.html a gegen strong ausstauschen -->
+  <h1 id="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>
index 14245b55dba22b9498c3e93cf9eb7e4e7d6c0d75..f39ae01dcf0386a4067f23b965dcc42aeb5d078a 100644 (file)
@@ -1,3 +1,89 @@
+<nav id="nav"
+    th:include="~{::#navigation}?:_"
+    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 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>
+    <li class="m about"><a href="../about.html" class="m">About</a></li>
+    <!--*/-->
+  </ul>
+  <h2 class="nav submenu">
+    <span class="s">Submenu for section</span>
+    <a class="s selected" href="../projects.html" th:href="@{${section}}" th:text="${_titles.get(section)}">Projects</a>
+  </h2>
+  <ul th:include="${submenu}?:_"
+      th:with="
+        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' : '')"
+      >
+    <li th:fragment="submenu(submenu, parent, pos)"
+        th:each="entry : ${submenu}"
+        th:with="
+            child=${pos == len},
+            hidden=${!child && _canonical.get(crumbs.get(pos)) == entry},
+            entry=${hidden?crumbs.get(pos):entry},
+            selected=${(child and crumbs.get(pos-1) + '?about' == entry) or (!child and (crumbs.get(pos) == entry or hidden))},
+            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)}
+            "
+        class="s sub"
+        th:class="'s' + (${childs} ? ' sub' : '') + (${selected or sibling or child} ? '' : ' off')"
+        >
+      <a  href="../potemkin/fix-swf/overview.html"
+          th:if="${entry != parent}"
+          th:href="@{${entry}}"
+          class="s selected"
+          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' + (${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"
+            >
+          <strong class="s">Overview</strong>
+        </li>
+        <!--/*-->
+        <li class="s"><a href="../potemkin/fix-swf/getting-started.html" class="s">Getting Started</a></li>
+        <li class="s"><a href="#" class="s">FAQ</a></li>
+        <li class="s"><a href="#" class="s">Documentation</a></li>
+        <!--*/-->
+      </ul>
+    </li>
+    <!--/*-->
+    <li class="s sub off"><a href="#" class="s">hibernate4-maven-plugin</a></li>
+    <li class="s off"><a href="#" class="s">jquery.openx</a></li>
+    <li class="s sub off"><a href="../potemkin/html-experimente.html" th:href="@{/potemkin/html-experimente.html}" class="s">HTML-Experimente</a></li>
+    <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>
 {{- /*
 Renders a menu for the given menu ID.
 
index 39dcbec61fc7176b6b73a802b29dcc4508775836..5e2c57776b787363afe5b35c7d8605c389611365 100644 (file)
@@ -3,15 +3,21 @@
 <head>
   {{ partial "head.html" . }}
 </head>
-<body>
-  <header>
-    {{ partial "header.html" . }}
-  </header>
-  <main>
-    {{ block "main" . }}{{ end }}
-  </main>
-  <footer>
-    {{ partial "footer.html" . }}
-  </footer>
+<body id="top" class="menu" onload="prettyPrint()">
+  <div id="page" class="cf">
+    {{- partial "header.html" . }}
+    {{- partial "breadcrumb.html" . }}
+    <main class="content cf">
+        <article id="content" class="main" th:include="${maincontent}">
+          <header><h1>{{ site.Title }}</h1></header>
+          {{- block "main" . }}{{ end }}
+        </article>
+        <div class="marginal">
+          {{- partial "menu.html" (dict "menuID" "main" "page" .) }}
+          {{- partial "marginalcontent.html" . }}
+        </div>
+    </main>
+    {{- partial "footer.html" . }}
+  </div>
 </body>
 </html>