mirror of
https://github.com/hazemKrimi/personal-website.git
synced 2026-05-01 18:00:26 +00:00
Finish table of contents and pagination
This commit is contained in:
+10
-8
@@ -16,12 +16,12 @@
|
||||
/* Colors */
|
||||
--black: #131314;
|
||||
--white: white;
|
||||
--crimson: #BD1839;
|
||||
--light-gray: #E7E7E7;
|
||||
--crimson: #bd1839;
|
||||
--light-gray: #e7e7e7;
|
||||
|
||||
/* Background colors */
|
||||
--dark-background: #1D1B1B;
|
||||
--light-background: #FBFBFB;
|
||||
--dark-background: #1d1b1b;
|
||||
--light-background: #fbfbfb;
|
||||
|
||||
/* Radiuses */
|
||||
--card-radius: 1.875rem;
|
||||
@@ -59,7 +59,10 @@ body {
|
||||
#links .mail,
|
||||
#nav-toggler svg path,
|
||||
.arrow,
|
||||
.eye {
|
||||
.eye,
|
||||
.calendar,
|
||||
.clock,
|
||||
.share {
|
||||
stroke: var(--text);
|
||||
}
|
||||
|
||||
@@ -81,7 +84,6 @@ picture,
|
||||
video,
|
||||
canvas,
|
||||
svg {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
@@ -109,10 +111,10 @@ a {
|
||||
.vertical-separator {
|
||||
border-left: 1px solid var(--text);
|
||||
height: 24px;
|
||||
opacity: .25;
|
||||
opacity: 0.25;
|
||||
}
|
||||
|
||||
hr {
|
||||
color: var(--text);
|
||||
opacity: .25;
|
||||
opacity: 0.25;
|
||||
}
|
||||
|
||||
@@ -36,11 +36,7 @@
|
||||
.card .demo {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.card .read-more svg,
|
||||
.card .demo svg {
|
||||
margin-left: 0.25rem;
|
||||
column-gap: 0.25rem;
|
||||
}
|
||||
|
||||
.card .demo {
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
.pagination {
|
||||
display: flex;
|
||||
justify-content: end;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.pagination {
|
||||
display: flex;
|
||||
column-gap: 1rem;
|
||||
}
|
||||
|
||||
.pagination .pagination ul,
|
||||
.pagination li {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
.pagination a {
|
||||
border-radius: 0.5625rem;
|
||||
background-color: #8b8b8b;
|
||||
color: var(--white);
|
||||
padding: 0.25rem 0.75rem;
|
||||
display: inline-flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.pagination a.first,
|
||||
.pagination a.last {
|
||||
background-color: #606060;
|
||||
}
|
||||
|
||||
.pagination a.active {
|
||||
background-color: #232323;
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 768px) {
|
||||
.pagination {
|
||||
justify-content: center;
|
||||
}
|
||||
}
|
||||
@@ -1,3 +1,27 @@
|
||||
#TableOfContents ul {
|
||||
list-style-type: none;
|
||||
:root {
|
||||
--toc-light-background: #f2f2f2;
|
||||
--toc-dark-background: #131212;
|
||||
}
|
||||
|
||||
#table-of-contents {
|
||||
margin-top: 3rem;
|
||||
height: 30rem;
|
||||
max-height: 20rem;
|
||||
padding: 1.2rem 1.6rem;
|
||||
border-radius: 1.875rem;
|
||||
background-color: var(--toc-background);
|
||||
}
|
||||
|
||||
#table-of-contents h3 {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
#table-of-contents nav ul {
|
||||
list-style-type: none;
|
||||
padding-inline-start: 2rem;
|
||||
margin-bottom: 0rem;
|
||||
}
|
||||
|
||||
#table-of-contents nav > ul:first-of-type {
|
||||
padding: 0rem;
|
||||
}
|
||||
+51
-20
@@ -1,39 +1,70 @@
|
||||
main #container {
|
||||
display: grid;
|
||||
grid-template-columns: auto 15rem;
|
||||
column-gap: 2rem;
|
||||
}
|
||||
|
||||
main #metadata {
|
||||
margin-bottom: 2rem;
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
|
||||
main #metadata h1 {
|
||||
margin-bottom: 1rem;
|
||||
font-size: 3rem;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
main #metadata div {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
min-width: 100%;
|
||||
display: flex;
|
||||
column-gap: 2rem;
|
||||
}
|
||||
|
||||
main #metadata div span {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
column-gap: 0.25rem;
|
||||
}
|
||||
|
||||
main #metadata div #share {
|
||||
display: none;
|
||||
}
|
||||
|
||||
main #metadata #share {
|
||||
cursor: pointer;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
main #content {
|
||||
display: flex;
|
||||
column-gap: 2rem;
|
||||
main h2,
|
||||
main h3,
|
||||
main h4 {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
main h2, main h3, main h4 {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
main p, main ul, main ol {
|
||||
margin-bottom: 2rem;
|
||||
main p,
|
||||
main ul,
|
||||
main ol,
|
||||
main img,
|
||||
main figure {
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
|
||||
@media only screen and (max-width: 1024px) {
|
||||
main #content {
|
||||
display: block;
|
||||
}
|
||||
main #metadata h1 {
|
||||
font-size: 2.5rem;
|
||||
}
|
||||
|
||||
main #content #TableOfContents {
|
||||
display: none;
|
||||
}
|
||||
main #container {
|
||||
display: block;
|
||||
}
|
||||
|
||||
main #container #table-of-contents {
|
||||
display: none;
|
||||
}
|
||||
|
||||
main #metadata div {
|
||||
column-gap: 1rem;
|
||||
}
|
||||
|
||||
main #metadata div #share {
|
||||
display: inline-flex;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
|
||||
<path class="calendar" d="M19 4H5C3.89543 4 3 4.89543 3 6V20C3 21.1046 3.89543 22 5 22H19C20.1046 22 21 21.1046 21 20V6C21 4.89543 20.1046 4 19 4Z" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path class="calendar" d="M16 2V6" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path class="calendar" d="M8 2V6" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path class="calendar" d="M3 10H21" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 695 B |
@@ -0,0 +1,4 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
|
||||
<path class="clock" d="M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path class="clock" d="M12 6V12L16 14" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 449 B |
@@ -0,0 +1,7 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none">
|
||||
<path class='share' d="M18 8C19.6569 8 21 6.65685 21 5C21 3.34315 19.6569 2 18 2C16.3431 2 15 3.34315 15 5C15 6.65685 16.3431 8 18 8Z" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path class='share' d="M6 15C7.65685 15 9 13.6569 9 12C9 10.3431 7.65685 9 6 9C4.34315 9 3 10.3431 3 12C3 13.6569 4.34315 15 6 15Z" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path class='share' d="M18 22C19.6569 22 21 20.6569 21 19C21 17.3431 19.6569 16 18 16C16.3431 16 15 17.3431 15 19C15 20.6569 16.3431 22 18 22Z" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path class='share' d="M8.59003 13.51L15.42 17.49" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
<path class='share' d="M15.41 6.51001L8.59003 10.49" stroke="#CFCFCF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.0 KiB |
@@ -67,6 +67,12 @@ function loadTheme() {
|
||||
? 'var(--card-light-background)'
|
||||
: 'var(--card-dark-background)'
|
||||
);
|
||||
root.style.setProperty(
|
||||
'--toc-background',
|
||||
theme === 'light'
|
||||
? 'var(--toc-light-background)'
|
||||
: 'var(--toc-dark-background)'
|
||||
);
|
||||
root.style.setProperty(
|
||||
'--about-card-background',
|
||||
theme === 'light'
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: "Another blog post"
|
||||
description: "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book."
|
||||
date: 2023-10-18
|
||||
---
|
||||
|
||||
## Hi
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor nulla sed mi faucibus, non commodo nulla malesuada. Aliquam sem lectus, sodales sit amet cursus ac, auctor quis dolor. Pellentesque ac metus vulputate, scelerisque nunc id, mollis est. Duis nec nisi feugiat, sagittis enim vitae, tincidunt metus. Nulla vitae laoreet quam. Integer tortor erat, dictum vel placerat ultricies, eleifend eu risus. Nam sit amet finibus dui. Cras malesuada ligula a maximus sagittis. Proin sed tortor consectetur, vestibulum mauris at, auctor orci. Quisque blandit lectus sollicitudin hendrerit euismod.
|
||||
|
||||
### Greetings
|
||||
|
||||
Praesent efficitur diam laoreet lacus congue, vitae finibus purus blandit. Maecenas ex turpis, vehicula ac varius a, porttitor in sem. Nulla in suscipit elit. Vestibulum id leo eget odio convallis consectetur. Nullam ac diam lobortis, efficitur erat venenatis, tristique ligula. Mauris dui nisi, facilisis et malesuada id, scelerisque in urna. Curabitur egestas lobortis interdum. Etiam convallis mi eu lectus consectetur, feugiat imperdiet sem gravida. Proin eget malesuada ipsum. Maecenas congue scelerisque magna.
|
||||
|
||||
### Hello
|
||||
|
||||
Nunc molestie lorem velit, in efficitur risus dictum vel. Integer porta odio in odio posuere consequat. Etiam accumsan, enim ac scelerisque ultricies, lorem quam ultrices ex, ut ullamcorper mi ante quis augue. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Donec ut ex feugiat, bibendum felis interdum, finibus nulla. Aenean accumsan bibendum massa. Aenean nec enim ligula. In a cursus orci. Etiam accumsan nisl quis velit porta pellentesque. Morbi dignissim mattis vestibulum. Morbi posuere velit nec augue interdum, facilisis congue augue auctor. Suspendisse nec elit sit amet velit ultrices porta.
|
||||
|
||||
Duis molestie venenatis rhoncus. Phasellus pulvinar odio vel nulla accumsan pretium eget at nunc. Sed convallis, orci at laoreet consequat, odio leo tincidunt sapien, eget ultricies tortor nisl at metus. Integer pretium odio in ipsum iaculis, sit amet pretium lacus vehicula. Etiam vel ex id nisl hendrerit consequat iaculis id metus. Donec scelerisque justo augue, sed accumsan velit elementum finibus. Cras in viverra ex, in faucibus diam. Sed volutpat lacus vel suscipit aliquet. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Praesent bibendum ligula lacinia consectetur interdum.
|
||||
|
||||
Fusce ultricies ex et volutpat elementum. Curabitur finibus iaculis erat, et venenatis lectus facilisis nec. Donec sollicitudin, sapien quis bibendum auctor, arcu nunc interdum enim, scelerisque aliquet enim neque eu neque. Fusce in turpis felis. Curabitur sapien mi, lobortis at hendrerit sit amet, maximus in nisi. Sed ac purus suscipit, laoreet lacus quis, congue leo. Cras imperdiet massa rutrum est dictum, quis convallis purus sollicitudin. Nulla eu nibh vel nisl accumsan ultrices.
|
||||
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: "Test blog post"
|
||||
description: "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book."
|
||||
date: 2023-10-18
|
||||
---
|
||||
|
||||
## Hi
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor nulla sed mi faucibus, non commodo nulla malesuada. Aliquam sem lectus, sodales sit amet cursus ac, auctor quis dolor. Pellentesque ac metus vulputate, scelerisque nunc id, mollis est. Duis nec nisi feugiat, sagittis enim vitae, tincidunt metus. Nulla vitae laoreet quam. Integer tortor erat, dictum vel placerat ultricies, eleifend eu risus. Nam sit amet finibus dui. Cras malesuada ligula a maximus sagittis. Proin sed tortor consectetur, vestibulum mauris at, auctor orci. Quisque blandit lectus sollicitudin hendrerit euismod.
|
||||
|
||||
### Greetings
|
||||
|
||||
Praesent efficitur diam laoreet lacus congue, vitae finibus purus blandit. Maecenas ex turpis, vehicula ac varius a, porttitor in sem. Nulla in suscipit elit. Vestibulum id leo eget odio convallis consectetur. Nullam ac diam lobortis, efficitur erat venenatis, tristique ligula. Mauris dui nisi, facilisis et malesuada id, scelerisque in urna. Curabitur egestas lobortis interdum. Etiam convallis mi eu lectus consectetur, feugiat imperdiet sem gravida. Proin eget malesuada ipsum. Maecenas congue scelerisque magna.
|
||||
|
||||
### Hello
|
||||
|
||||
Nunc molestie lorem velit, in efficitur risus dictum vel. Integer porta odio in odio posuere consequat. Etiam accumsan, enim ac scelerisque ultricies, lorem quam ultrices ex, ut ullamcorper mi ante quis augue. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Donec ut ex feugiat, bibendum felis interdum, finibus nulla. Aenean accumsan bibendum massa. Aenean nec enim ligula. In a cursus orci. Etiam accumsan nisl quis velit porta pellentesque. Morbi dignissim mattis vestibulum. Morbi posuere velit nec augue interdum, facilisis congue augue auctor. Suspendisse nec elit sit amet velit ultrices porta.
|
||||
|
||||
Duis molestie venenatis rhoncus. Phasellus pulvinar odio vel nulla accumsan pretium eget at nunc. Sed convallis, orci at laoreet consequat, odio leo tincidunt sapien, eget ultricies tortor nisl at metus. Integer pretium odio in ipsum iaculis, sit amet pretium lacus vehicula. Etiam vel ex id nisl hendrerit consequat iaculis id metus. Donec scelerisque justo augue, sed accumsan velit elementum finibus. Cras in viverra ex, in faucibus diam. Sed volutpat lacus vel suscipit aliquet. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Praesent bibendum ligula lacinia consectetur interdum.
|
||||
|
||||
Fusce ultricies ex et volutpat elementum. Curabitur finibus iaculis erat, et venenatis lectus facilisis nec. Donec sollicitudin, sapien quis bibendum auctor, arcu nunc interdum enim, scelerisque aliquet enim neque eu neque. Fusce in turpis felis. Curabitur sapien mi, lobortis at hendrerit sit amet, maximus in nisi. Sed ac purus suscipit, laoreet lacus quis, congue leo. Cras imperdiet massa rutrum est dictum, quis convallis purus sollicitudin. Nulla eu nibh vel nisl accumsan ultrices.
|
||||
@@ -12,7 +12,7 @@ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed auctor nulla sed mi
|
||||
|
||||
Praesent efficitur diam laoreet lacus congue, vitae finibus purus blandit. Maecenas ex turpis, vehicula ac varius a, porttitor in sem. Nulla in suscipit elit. Vestibulum id leo eget odio convallis consectetur. Nullam ac diam lobortis, efficitur erat venenatis, tristique ligula. Mauris dui nisi, facilisis et malesuada id, scelerisque in urna. Curabitur egestas lobortis interdum. Etiam convallis mi eu lectus consectetur, feugiat imperdiet sem gravida. Proin eget malesuada ipsum. Maecenas congue scelerisque magna.
|
||||
|
||||
## Hello
|
||||
### Hello
|
||||
|
||||
Nunc molestie lorem velit, in efficitur risus dictum vel. Integer porta odio in odio posuere consequat. Etiam accumsan, enim ac scelerisque ultricies, lorem quam ultrices ex, ut ullamcorper mi ante quis augue. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Donec ut ex feugiat, bibendum felis interdum, finibus nulla. Aenean accumsan bibendum massa. Aenean nec enim ligula. In a cursus orci. Etiam accumsan nisl quis velit porta pellentesque. Morbi dignissim mattis vestibulum. Morbi posuere velit nec augue interdum, facilisis congue augue auctor. Suspendisse nec elit sit amet velit ultrices porta.
|
||||
|
||||
|
||||
@@ -18,4 +18,4 @@ This is a project that I made as a step in the interview process for my final ye
|
||||
|
||||
## Screenshots
|
||||
|
||||

|
||||
{{< figure src="https://res.cloudinary.com/dun9hhyz1/image/upload/v1643548378/personal-website/portfolio/react-weather-app/screenshot_ueu2a4.png" >}}
|
||||
@@ -1,5 +1,8 @@
|
||||
languageCode = 'en-us'
|
||||
title = 'Hazem Krimi'
|
||||
paginate = 1
|
||||
[taxonomies]
|
||||
tag = 'tags'
|
||||
[params]
|
||||
formSpreeURL = 'https://formspree.io/f/xoqpgyge'
|
||||
dateFormat = '02 January 2006'
|
||||
|
||||
@@ -10,8 +10,10 @@
|
||||
{{ .Content }}
|
||||
|
||||
<section>
|
||||
{{ range .Pages }}
|
||||
{{ range .Paginator.Pages }}
|
||||
{{ partial "card.html" . }}
|
||||
{{ end }}
|
||||
</section>
|
||||
|
||||
{{ partial "pagination.html" . }}
|
||||
{{ end }}
|
||||
|
||||
@@ -5,33 +5,40 @@
|
||||
{{ end }}
|
||||
|
||||
{{ define "main" }}
|
||||
{{ partial "breadcrumb.html" . }}
|
||||
|
||||
<section id="metadata">
|
||||
<h1>{{ .Title }}</h1>
|
||||
<div id="container">
|
||||
<div>
|
||||
<span>{{ .Date.Format .Site.Params.dateFormat }}</span>
|
||||
<span>{{ printf "%d minutes read" .ReadingTime }}</span>
|
||||
<span
|
||||
id="share"
|
||||
data-title="{{ .Title }}"
|
||||
data-description="{{ .Params.description }}"
|
||||
data-url="{{ .Permalink }}"
|
||||
>
|
||||
Share
|
||||
</span>
|
||||
</div>
|
||||
</section>
|
||||
{{ partial "breadcrumb.html" . }}
|
||||
|
||||
<section id="content">
|
||||
<div>
|
||||
{{ .Content }}
|
||||
<section id="metadata">
|
||||
<h1>{{ .Title }}</h1>
|
||||
<div>
|
||||
<span>{{ readFile "assets/icons/calendar.svg" | safeHTML }} {{ .Date.Format .Site.Params.dateFormat }}</span>
|
||||
<span>{{ readFile "assets/icons/clock.svg" | safeHTML }} {{ printf "%d minute(s) read" .ReadingTime }}</span>
|
||||
<span
|
||||
id="share"
|
||||
data-title="{{ .Title }}"
|
||||
data-description="{{ .Params.description }}"
|
||||
data-url="{{ .Permalink }}"
|
||||
>
|
||||
{{ readFile "assets/icons/share.svg" | safeHTML }}
|
||||
Share
|
||||
</span>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section id="content">
|
||||
<div>
|
||||
{{ .Content }}
|
||||
</div>
|
||||
|
||||
<h2>Contact</h2>
|
||||
{{ partial "contact-form.html" }}
|
||||
</section>
|
||||
</div>
|
||||
|
||||
{{ partial "table-of-contents.html" . }}
|
||||
</section>
|
||||
</div>
|
||||
|
||||
<h2>Contact</h2>
|
||||
{{ partial "contact-form.html" }}
|
||||
|
||||
<script>
|
||||
document.querySelector('#share').addEventListener('click', async event => {
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
{{ $styles := resources.Get "css/partials/pagination.css" | toCSS | minify }}
|
||||
|
||||
<link rel="stylesheet" href="{{ $styles.Permalink }}" />
|
||||
|
||||
{{ $paginator := .Paginator }}
|
||||
{{ if gt $paginator.TotalPages 1 }}
|
||||
<div class="pagination">
|
||||
<a class="first {{ if eq $paginator.PageNumber $paginator.First.PageNumber }} active {{ end }}" href="{{ $paginator.First.URL }}">
|
||||
{{ $paginator.First.PageNumber }}
|
||||
</a>
|
||||
{{ with $paginator.HasPrev }}
|
||||
<a href="{{ $paginator.Prev.URL }}">
|
||||
«
|
||||
</a>
|
||||
{{ end }}
|
||||
{{ range $index, $pager := $paginator.Pagers }}
|
||||
{{ with and (ne $index 0) (ne $index (sub (len $paginator.Pagers) 1)) }}
|
||||
<a class="{{ if eq $pager $paginator }} active {{ end }}" href="{{ $pager.URL }}">
|
||||
{{ $pager.PageNumber }}
|
||||
</a>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
{{ with $paginator.HasNext }}
|
||||
<a href="{{ $paginator.Next.URL }}">
|
||||
»
|
||||
</a>
|
||||
{{ end }}
|
||||
<a class="last {{ if eq $paginator.PageNumber $paginator.Last.PageNumber }} active {{ end }}" href="{{ $paginator.Last.URL }}">
|
||||
{{ $paginator.Last.PageNumber }}
|
||||
</a>
|
||||
</div>
|
||||
{{ end }}
|
||||
@@ -2,6 +2,9 @@
|
||||
|
||||
<link rel="stylesheet" href="{{ $styles.Permalink }}" />
|
||||
|
||||
<aside>
|
||||
{{ .TableOfContents }}
|
||||
</aside>
|
||||
{{ with .TableOfContents }}
|
||||
<aside id="table-of-contents">
|
||||
<h3>Table of contents</h3>
|
||||
{{ . }}
|
||||
</aside>
|
||||
{{ end }}
|
||||
Reference in New Issue
Block a user