first commit

This commit is contained in:
Julieñ
2024-06-30 11:39:42 +02:00
commit 280b106499
15751 changed files with 78478 additions and 0 deletions

View File

@@ -0,0 +1,87 @@
{{ "<!-- Footer -->" | safeHTML }}
<footer id="footer" class="panel">
<div class="inner split">
<div>
<section>
<h2>{{ with .Site.Params.footer.paragraph.headline }}{{ . | markdownify }}{{ end }}</h2>
<p>{{ with .Site.Params.footer.paragraph.text }}{{ . | markdownify }}{{ end }}</p>
</section>
<section>
<h2>{{ with .Site.Params.footer.social.headline }}{{ . | markdownify }}{{ end }}</h2>
<ul class="icons">
{{ range .Site.Params.footer.social.links }}
<li><a href="{{ .url }}" class="icon {{ .icon }}"><span class="label">{{ .label }}</span></a></li>
{{ end }}
</ul>
</section>
{{- /* Unfortunately I cannot find a way to determine if disableKinds
is turned on, so I cannot check that for taxonomy or term.
Instead I have to use this new parameter */}}
{{- if (default false ($.Param "taxonomies_links")) }}
{{- with $.Site.Taxonomies }}
<section class="taxonomy_list flexrow">
<h2>View all:</h2>
<div>
{{- range $taxname, $taxterms := $.Site.Taxonomies }}
{{- $url := ( printf "/%s/" ($taxname | urlize) ) | relURL }}
<div class="tax_term"><a href="{{ $url }}">{{ $taxname | humanize }}</a></div>
{{- end }}
</div>
</section>
{{- end }}
{{- /* Only display the terms list if this page has some */}}
{{- $.Scratch.Set "terms_present" false }}
{{- range $taxname, $taxterms := $.Site.Taxonomies }}
{{- range ($.Param $taxname) }}
{{- $.Scratch.Set "terms_present" true }}
{{- end }}
{{- end }}
{{- if $.Scratch.Get "terms_present" }}
<section class="taxonomy_list flexrow">
<h2>Terms:</h2>
<div>
{{- range $taxname, $taxterms := $.Site.Taxonomies }}
{{- range ($.Param $taxname) }}
{{- $url := ( printf "/%s/#%s" ($taxname | urlize) ( . | urlize ) ) | relURL }}
<div class="tax_term"><a href="{{ $url }}">{{ . | humanize }}</a></div>
{{- end }}
{{- end }}
</div>
</section>
{{- end }}
{{- end }}
</div>
{{ if not .Site.Params.footer.contact.hide }}
<div>
<section>
<h2>{{ with .Site.Params.footer.contact.headline }}{{ . | markdownify }}{{ end }}</h2>
<p>If you want to contact me, its easy…</br>
You can visit any of my social networks on the left of this page, or you can make it happen on Delat Chat&nbsp;: all you have to do is scan the QR Code below with your Delta Chat application, then send me a message and Ill reply as soon as I can.</p>
<p class="align-center"><a href="OPENPGP4FPR:B309119B75596F78835A539C8E705C55786BCF4A#a=jme69%40vivaldi.net&n=Julie%C3%B1&i=gBb5CCCF9er&s=LGUxX9megUO" title="Contact me on Delta Chat" target="_blank"><img src="/delta-chat.webp" width="70%" height="70%" alt="Contact me on Delta Chat" /></a></p>
<!-- <p class="align-center"><a href="https://matrix.to/#/@jme69:matrix.org" title="Contact me on Matrix" target="_blank"><img src="contact.webp" width="75%" height="75%" alt="Contact me on Matrix" /></a></p> -->
<!-- <form method="post" action="//formspree.io/f/{{ with .Site.Params.footer.contact.formspreeID }}{{.}}{{ end }}" novalidate>
<div class="field half first">
<input type="text" name="name" required data-validation-required-message="{{ with .Site.Params.footer.contact.name.warning }}{{ . | markdownify}}{{ end }}" id="name" placeholder="{{ with .Site.Params.footer.contact.name.text }}{{ . | markdownify }}{{ end }}" />
</div>
<div class="field half">
<input type="email" name="email" required data-validation-required-message="{{ with .Site.Params.footer.contact.email.warning }}{{ . | markdownify }}{{ end }}" id="email" placeholder="{{ with .Site.Params.footer.contact.email.text }}{{ . | markdownify }}{{ end }}" />
</div>
<div class="field">
<textarea name="message" required data-validation-required-message="{{ with .Site.Params.footer.contact.message.warning }}{{ . | markdownify }}{{ end }}" id="message" rows="4" placeholder="{{ with .Site.Params.footer.contact.message.text }}{{ . | markdownify }}{{ end }}"></textarea>
</div>
<ul class="actions">
<li><input type="submit" value="{{ .Site.Params.footer.contact.buttonText }}" class="special" /></li>
<li><input type="reset" value="{{ .Site.Params.footer.contact.resetText }}" /></li>
</ul>
</form> -->
</section>
</div>
{{ end }}
</div>
<p class="copyright">
&copy; 2024, {{ with .Site.Params.footer.copyright.name }}{{ . | markdownify }}{{ end }}. Made with <a href="https://gohugo.io/" title="Hugo" target="_blank">Hugo</a>, theme largely based on <a href="https://github.com/kc0bfv/autophugo/" title="View on GitHub" target="_blank">AutoPhugo</a>.
</p>
</footer>

View File

@@ -0,0 +1,34 @@
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="keywords" content="{{ with .Site.Params.keywords }}{{ . }}{{ end }}">
{{ $description := $.Param "description" }}
{{- with $description }}<meta name="description" content="{{ . }}">{{ end }}
{{ $author := .Params.author.name | default .Site.Author.name }}
{{- with $author }}<meta name="author" content="{{ . }}">{{ end }}
<link rel="icon" href="{{ .Site.Params.favicon | relURL }}">
<link rel="shortcut icon" href="{{ .Site.Params.favicon | relURL }}">
{{- partial "scratch_set_retalbumthumb.html" . }}
{{- /* Note that the Scratch below must come from . context, not $ */}}
{{- .Scratch.Set "image" (.Scratch.Get "retalbumthumb") }}
{{- partial "opengraph_twittercard.html" . }}
<meta name="robots" content="index,follow">
<meta name="referrer" content="origin-when-cross-origin">
{{ with .Site.Params.googlesiteverification }}<meta name="google-site-verification" content="{{ . }}">{{ end }}
{{ with .Site.Params.msvalidate }}<meta name="msvalidate.01" content="{{ . }}">{{ end }}
{{ hugo.Generator }}
{{ with .OutputFormats.Get "RSS" }}
<link href="{{ .RelPermalink }}" rel="alternate" type="application/rss+xml" title="{{ $.Site.Title }}" />
<link href="{{ .RelPermalink }}" rel="feed" type="application/rss+xml" title="{{ $.Site.Title }}" />
{{ end }}
{{- $font_awesome := resources.Get "css/fontawesome/all.css" -}}
{{- $google_font := resources.Get "css/source-sans-pro.css" -}}
{{- $main_css := resources.Get "css/main.css" -}}
{{- $mg_pop_css := resources.Get "css/magnific-popup.css" -}}
{{- $user_css := resources.Get "css/user.css" -}}
{{- $custom_css := slice $font_awesome $google_font $main_css $mg_pop_css $user_css | resources.Concat "css/custom.css" | resources.Minify | resources.Fingerprint -}}
<link rel="stylesheet" href="{{ $custom_css.RelPermalink }}" integrity="{{ $custom_css.Data.Integrity }}"/>

View File

@@ -0,0 +1,39 @@
<header id="header">
<h1>
<!-- Grab the base URL, pull out the path, then count directories -->
{{- $base_url_parsed := urls.Parse .Site.BaseURL -}}
{{- $base_dir := trim $base_url_parsed.Path "/" -}}
{{- $base_part_cnt := cond (ne $base_dir "") (len (split $base_dir "/" )) 0 -}}
<!-- Grab the current URL, separate it out -->
{{- $url_parsed := urls.Parse .Permalink -}}
{{- $trimmed_url := trim $url_parsed.Path "/" -}}
{{- $pre_url_parts := split $trimmed_url "/" -}}
{{- $pre_part_count := len $pre_url_parts -}}
<!-- Drop the part of the current URL that's the base URL -->
{{- $url_parts := last (sub $pre_part_count $base_part_cnt) $pre_url_parts -}}
{{- $part_count := len $url_parts -}}
<!-- Determine how much of the URL to use (sometimes last part is blank) -->
{{- $last_part := index $url_parts (sub $part_count 1) -}}
{{- $use_part_cnt := cond (eq (trim $last_part " ") "") (sub $part_count 1) $part_count -}}
<!-- Determine whether to use URL components or titles for breadcrumb -->
{{- $crumb_is_title := .Site.Params.breadcrumb_use_title | default false -}}
<!-- Build the breadcrumb - base URL link, path links for each dir, cur location text -->
<a href="{{ .Site.BaseURL }}"><strong>{{ .Site.Title }}</strong></a>
{{- if gt $use_part_cnt 0 -}}
{{- range $cur_ind, $element := first (sub $use_part_cnt 1) $url_parts -}}
{{- $path := string (delimit (first (add $cur_ind 1) $url_parts) "/") -}}
{{- $part := $element | humanize }}
/ <a href="{{ $.Site.BaseURL }}{{ $path }}"><strong>{{ cond $crumb_is_title ((($.Site.GetPage $path).Title) | default $part) $part }}</strong></a>
{{- end -}}
{{- $cur_part := (index $url_parts (sub $use_part_cnt 1)) | humanize }}
/ {{ cond $crumb_is_title (.Title | default $cur_part) $cur_part }}
{{- end }}
</h1>
{{ partial "navigation.html" . }}
</header>

View File

@@ -0,0 +1 @@
<html lang="{{ with .Site.LanguageCode }}{{ . }}{{ else }}en-US{{ end }}">

View File

@@ -0,0 +1,7 @@
<nav>
<ul>
{{ range .Site.Params.header.links }}
<li><a href="{{ .url }}" class="icon {{ .icon }}">{{ .name }}</a></li>
{{ end }}
</ul>
</nav>

View File

@@ -0,0 +1,19 @@
{{- $description := $.Param "description" }}
<meta name="twitter:card" content="summary_large_image"/>
<meta name="twitter:image" content="{{ (.Scratch.Get "image").Permalink }}"/>
<meta name="twitter:title" content="{{ with .Title }}{{ . }} - {{ end }}{{ .Site.Title }}"/>
{{- with $description }}<meta name="twitter:description" content="{{ . }}">{{ end }}
{{- with .Site.Social.twitter }}<meta name="twitter:site" content="@{{ . }}"/>{{- end }}
<meta property="og:title" content="{{ with .Title }}{{ . }} - {{ end }}{{ .Site.Title }}"/>
{{- with $description }}<meta property="og:description" content="{{ . }}">{{ end }}
<meta property="og:type" content="{{ if .IsPage }}article{{ else }}website{{ end }}" />
<meta property="og:url" content="{{ .Permalink }}" />
<meta property="og:image" content="{{ (.Scratch.Get "image").Permalink }}"/>
{{- with .Params.locale }}<meta property="og:locale" content="{{ . }}" />{{ end }}
{{- with .Site.Title }}<meta property="og:site_name" content="{{ . }}" />{{ end }}
{{- /* Facebook Page Admin ID for Domain Insights */}}
{{- with .Site.Social.facebook_admin }}<meta property="fb:admins" content="{{ . }}" />{{ end }}

View File

@@ -0,0 +1,105 @@
{{- /* This partial requires input context to have a Scratch with "content"
$.Scratch.Get "content" must return a slice (array) of object maps
Those objects need a "type" key, which can be "link" or something else.
See below to see what needs to be in those different types
*/}}
<div class="flexrow">
{{- $column_count := default 3 ($.Param "column_count") }}
{{- $downloadable := default false ($.Param "images_downloadable") }}
{{- $orig_download := default false ($.Param "images_downloadable_use_orig") }}
{{- /* Initialize the column storage */}}
{{- range $column_ind := seq $column_count }}
{{- $st_name := printf "col-%d" $column_ind }}
{{- $st_height_name := printf "col-height-%d" $column_ind }}
{{- $.Scratch.Set $st_name (slice) }}
{{- $.Scratch.Set $st_height_name 0 }}
{{- end }}
{{- /* Add the sections into the columns followed by images */}}
{{- range $elem_index, $elem_val := $.Scratch.Get "content" }}
{{- /* Find the least-filled column */}}
{{- $.Scratch.Set "min_height" -1 }}
{{- $.Scratch.Set "min_col" -1 }}
{{- range $column_ind := seq $column_count }}
{{- $st_height_name := printf "col-height-%d" $column_ind }}
{{- $col_height := $.Scratch.Get $st_height_name }}
{{- $min_height := $.Scratch.Get "min_height" }}
{{- if (or (eq $min_height -1) (lt $col_height $min_height)) }}
{{- $.Scratch.Set "min_height" $col_height }}
{{- $.Scratch.Set "min_col" $column_ind }}
{{- end }}
{{- end }}
{{- /* column_ind becomes the least-filled column */}}
{{- $column_ind := $.Scratch.Get "min_col" }}
{{- if eq $column_ind -1 }}
{{- errorf (printf "When processing '%s', failed to find a least-filled column!" $.Page.File.Path) }}
{{- end }}
{{- $st_name := printf "col-%d" $column_ind }}
{{- $st_height_name := printf "col-height-%d" $column_ind }}
{{- /* Create a new version of the elem_val with an index reflecting position now, well after sorting is complete, and as we're placing things */}}
{{- $reind_val := merge $elem_val (dict "index" $elem_index) }}
{{- $column := $.Scratch.Get $st_name }}
{{- $column := $column | append $reind_val }}
{{- $.Scratch.Set $st_name $column }}
{{- $.Scratch.Set $st_height_name (add ($.Scratch.Get $st_height_name) $reind_val.thumb.Height) }}
{{- end }}
{{- /* Output the images in columns */}}
{{- range $column_ind := seq $column_count }}
{{- $st_name := printf "col-%d" $column_ind }}
{{- $column := $.Scratch.Get $st_name }}
<div class="flexcol">
{{- range $column }}
{{- $filename := path.Base .image.Name }}
<article class="thumb">
{{- if (eq .type "link") }}
<a href="{{ .link }}" class="link" tabindex="0"><img src="{{ .thumb.RelPermalink }}" alt="{{ .title }}" /></a>
<h2 class="overlay">{{ .title }}</h2>
{{- else }}
<a class="gallery-item" phototitle="{{ .phototitle }}"
{{ printf "description='%s'" (.description | markdownify) | safeHTMLAttr }}
gallery_index="{{ .index }}"
id="{{ md5 $filename }}"
downloadable="{{ cond $downloadable "true" "false" }}"
{{- if $downloadable }}
download_file="{{ (cond $orig_download .orig .full).RelPermalink }}"
{{- end }}
orig_name="{{ $filename }}"
href="{{ .full.RelPermalink }}">
<div id="image_number_{{ .index }}" class="gallery-item-marker"></div>
<img src="{{ .thumb.RelPermalink }}"
{{- with .alt }} alt="{{ . }}"{{ end }}>
{{- with .description }}
<div class="invis_desc">{{ (. | markdownify) | safeHTMLAttr }}</div>
{{- end }}
</a>
{{- if (default false ($.Param "taxonomies_links")) }}
<div class="caption_tax">
{{- range $taxname, $terms := .taxonomies }}
{{- range $terms }}
<div class="tax_term">
{{- $url := ( printf "/%s/#%s" ($taxname | urlize) ( . | urlize ) ) | relURL }}
<a href="{{ $url }}">{{ . | humanize }}</a>
</div>
{{- end }}
{{- end }}
</div>
{{- end }}
<h2>{{ .phototitle }}</h2>
{{- end }}
</article>
{{- end }}
</div>
{{- end }}
</div>

View File

@@ -0,0 +1,27 @@
{{- /*
Sets retalbumthumb in .Scratch to the correct albumthumb.
PLEASE NOTE: partials can only get local "dot" . context, they
do not get the global $ context. Therefore, you must get the returned
scratch data from the . context, not from $.
Requires . to be set to the right section.
*/}}
{{- .Scratch.Delete "retalbumthumb" }}
{{- /* If no albumthumb is set, get the first image*/}}
{{- if or (not (isset .Params "albumthumb")) (eq .Params.albumthumb "") }}
{{- with .File }}
{{- $.Scratch.Set "imgglob" (printf "%s" (path.Join .Dir "**")) }}
{{- end }}
{{- $imgglob := default "**" ($.Scratch.Get "imgglob") }}
{{- $imageresources := where (resources.Match $imgglob) "ResourceType" "image" }}
{{- .Scratch.Set "retalbumthumb" (index $imageresources 0) }}
{{- end }}
{{- /* Otherwise get the albumthumb*/}}
{{- with .Params.albumthumb }}
{{- $image := resources.Get . }}
{{- /* The $ here with Scratch means the context outside the with */}}
{{- $.Scratch.Set "retalbumthumb" $image }}
{{- end }}

View File

@@ -0,0 +1,6 @@
{{- $jquery := resources.Get "js/jquery.min.js" -}}
{{- $mg_pop := resources.Get "js/jquery.magnific-popup.js" -}}
{{- $main := resources.Get "js/main.js" -}}
{{- $util := resources.Get "js/util.js" -}}
{{- $custom_js := slice $jquery $mg_pop $main $util | resources.Concat "js/custom.js" | resources.Minify | resources.Fingerprint -}}
<script src="{{ $custom_js.RelPermalink }}" integrity="{{ $custom_js.Data.Integrity }}"></script>