first version
This commit is contained in:
parent
8f7d784ed2
commit
ca2764655a
|
@ -1,2 +0,0 @@
|
||||||
+++
|
|
||||||
+++
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
.grid { display: flex; flex-wrap: wrap; }
|
||||||
|
.grid.\-top { align-items: flex-start; }
|
||||||
|
.grid.\-middle { align-items: center; }
|
||||||
|
.grid.\-bottom { align-items: flex-end; }
|
||||||
|
.grid.\-stretch { align-items: stretch; }
|
||||||
|
.grid.\-baseline { align-items: baseline; }
|
||||||
|
.grid.\-left { justify-content: flex-start; }
|
||||||
|
.grid.\-center { justify-content: center; }
|
||||||
|
.grid.\-right { justify-content: flex-end; }
|
||||||
|
.grid.\-between { justify-content: space-between; }
|
||||||
|
.grid.\-around { justify-content: space-around; }
|
||||||
|
|
||||||
|
.cell { flex: 1; box-sizing: border-box; }
|
||||||
|
.cell.\-left { text-align: left ;}
|
||||||
|
.cell.\-right { text-align: right; }
|
||||||
|
.cell.\-center { text-align: center ;}
|
||||||
|
.cell img { max-width: 100% }
|
||||||
|
|
||||||
|
@media screen and (min-width: 600px) {
|
||||||
|
.\-even-reverse:nth-child(even) { flex-direction: row-reverse; }
|
||||||
|
.cell.\-1of12 { flex: 0 0 calc(100% * 1 / 12); }
|
||||||
|
.cell.\-2of12 { flex: 0 0 calc(100% * 2 / 12); }
|
||||||
|
.cell.\-3of12 { flex: 0 0 calc(100% * 3 / 12); }
|
||||||
|
.cell.\-4of12 { flex: 0 0 calc(100% * 4 / 12); }
|
||||||
|
.cell.\-5of12 { flex: 0 0 calc(100% * 5 / 12); }
|
||||||
|
.cell.\-6of12 { flex: 0 0 calc(100% * 6 / 12); }
|
||||||
|
.cell.\-7of12 { flex: 0 0 calc(100% * 7 / 12); }
|
||||||
|
.cell.\-8of12 { flex: 0 0 calc(100% * 8 / 12); }
|
||||||
|
.cell.\-9of12 { flex: 0 0 calc(100% * 9 / 12); }
|
||||||
|
.cell.\-10of12 { flex: 0 0 calc(100% * 10 / 12); }
|
||||||
|
.cell.\-11of12 { flex: 0 0 calc(100% * 11 / 12); }
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 599px) {
|
||||||
|
.grid {
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.cell {
|
||||||
|
flex: 0 0 auto;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1 @@
|
||||||
|
@import "./grid"
|
|
@ -0,0 +1,10 @@
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<base href="{{ .Site.BaseURL }}">
|
||||||
|
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||||
|
<meta name="HandheldFriendly" content="True">
|
||||||
|
<meta name="MobileOptimized" content="320">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
|
||||||
|
{{ partial "social_metadata.html" . }}
|
||||||
|
{{ partial "style.html" . }}
|
|
@ -0,0 +1,47 @@
|
||||||
|
<!-- Configure meta and title tags -->
|
||||||
|
<meta property="og:type" content="website" />
|
||||||
|
{{ if .Site.Params.TwitterCardType }}
|
||||||
|
<meta name="twitter:card" content="{{ .Site.Params.TwitterCardType }}" />
|
||||||
|
{{ else }}
|
||||||
|
<meta name="twitter:card" content="summary_large_image" />
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Site.Params.TwitterUsername }}
|
||||||
|
<meta name="twitter:site" content="{{ .Site.Params.TwitterUsername }}" />
|
||||||
|
{{ end }}
|
||||||
|
{{ if .IsHome }}
|
||||||
|
<title>{{ .Site.Title }}</title>
|
||||||
|
<meta name="description" content="{{ $.Site.Params.description }}" />
|
||||||
|
<meta name="keywords" content="{{ $.Site.Params.Keywords }}" />
|
||||||
|
<meta property="og:image" content="{{ .Site.BaseURL}}{{ .Site.Params.SocialImage }}" />
|
||||||
|
<meta property="og:url" content="{{ .Site.BaseURL }}" />
|
||||||
|
<meta property="og:title" content="{{ .Site.Title }}" />
|
||||||
|
<meta name="og:description" content="{{ $.Site.Params.description }}" />
|
||||||
|
<meta name="twitter:title" content="{{ .Site.Title }}" />
|
||||||
|
<meta name="twitter:description" content="{{ $.Site.Params.description }}" />
|
||||||
|
<meta name="twitter:url" content="{{ .Site.BaseURL }}" />
|
||||||
|
<meta name="twitter:image:src" content="{{ .Site.BaseURL}}{{ .Site.Params.SocialImage }}" />
|
||||||
|
{{ else }}
|
||||||
|
<title>{{ .Title }} · {{ .Site.Title }}</title>
|
||||||
|
<meta name="description" content="{{ .Description }}" />
|
||||||
|
{{ if .Params.tags }}
|
||||||
|
<meta name="keywords" content="{{ range .Params.tags }}{{ . }},{{ end }}" />
|
||||||
|
{{ else }}
|
||||||
|
<meta name="keywords" content="{{ $.Site.Params.Keywords }}" />
|
||||||
|
{{ end }}
|
||||||
|
<meta property="og:url" content="{{ .Permalink }}" />
|
||||||
|
<meta property="og:title" content="{{ .Title }} · {{ .Site.Title }}" />
|
||||||
|
<meta name="twitter:title" content="{{ .Title }} · {{ .Site.Title }}" />
|
||||||
|
{{ if .Description }}
|
||||||
|
<meta name="og:description" content="{{ .Description }}" />
|
||||||
|
<meta name="twitter:description" content="{{ .Description }}" />
|
||||||
|
{{ else }}
|
||||||
|
<meta name="og:description" content="{{ $.Site.Params.description }}" />
|
||||||
|
<meta name="twitter:description" content="{{ $.Site.Params.description }}" />
|
||||||
|
{{ end }}
|
||||||
|
<meta name="twitter:url" content="{{ .Permalink }}" />
|
||||||
|
{{ if .Params.SocialImage }}
|
||||||
|
<meta name="twitter:image:src" content="{{ .Site.BaseURL }}{{ .Params.SocialImage }}" />
|
||||||
|
{{ else }}
|
||||||
|
<meta name="twitter:image:src" content="{{ .Site.Params.SocialImage }}" />
|
||||||
|
{{ end }}
|
||||||
|
{{ end }}
|
|
@ -0,0 +1,2 @@
|
||||||
|
{{ $style := resources.Get "css/main.sass" | toCSS | minify | fingerprint }}
|
||||||
|
<link rel="stylesheet" href="{{ $style.Permalink }}">
|
|
@ -0,0 +1,10 @@
|
||||||
|
{{ $class := .Get "class" }}
|
||||||
|
{{ $body := .Get "text" | default .Inner }}
|
||||||
|
{{ $markdown := .Get "markdown" | default false }}
|
||||||
|
<div class="cell{{ with $class }} {{ . }}{{ end }}">
|
||||||
|
{{ if $markdown }}
|
||||||
|
{{ $.Page.RenderString .Inner }}
|
||||||
|
{{ else }}
|
||||||
|
{{ .Inner }}
|
||||||
|
{{ end }}
|
||||||
|
</div>
|
|
@ -0,0 +1,39 @@
|
||||||
|
{{/* https://github.com/martignoni/hugo-cloak-email */}}
|
||||||
|
{{/* Get address, protocol and other parameters */}}
|
||||||
|
{{- $address := .Get "address" | default (.Get 0) -}}
|
||||||
|
{{- $protocol := .Get "protocol" | default "mailto" -}}
|
||||||
|
{{- $class := .Get "class" -}}
|
||||||
|
{{- $displaytext := .Get "display" -}}
|
||||||
|
{{- $parts := split $address "@" -}}
|
||||||
|
{{- $user := (index $parts 0) -}}
|
||||||
|
{{- $domain := (index $parts 1) | default "" -}}
|
||||||
|
{{- $query := .Get "query" | default "" -}}
|
||||||
|
{{/* Compute md5 fingerprint */}}
|
||||||
|
{{- $fingerprint := md5 (print (.Get "address") $protocol (index (seq 999 | shuffle) 0)) | truncate 8 "" -}}
|
||||||
|
{{/* Set via CSS what is displayed when Javascript is disabled. Query is never displayed */}}
|
||||||
|
<style type="text/css">
|
||||||
|
#id-{{ $fingerprint }}.cloaked-e-mail:before {
|
||||||
|
content:{{ with $domain }}attr(data-domain) "\0040" {{ end }}attr(data-user);
|
||||||
|
unicode-bidi:bidi-override;
|
||||||
|
direction:rtl;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
 <span class="cloaked-e-mail" data-user="{{ range $index := seq (sub (len $user) 1) 0}}{{ substr $user $index 1}}{{ end }}"{{ with $domain }} data-domain="{{ range $index := seq (sub (len $domain) 1) 0}}{{ substr $domain $index 1}}{{ end }}"{{ end }} id="id-{{ $fingerprint }}"></span> 
|
||||||
|
{{/* Alter display with Javascript by changing DOM */}}
|
||||||
|
<script id="id-{{ $fingerprint }}">
|
||||||
|
var scriptTag = document.getElementById("id-{{ $fingerprint }}");
|
||||||
|
var link = document.createElement("a");
|
||||||
|
var address = "{{ range $index := seq (sub (len $user) 1) 0}}{{ substr $user $index 1}}{{ end }}".split('').reverse().join(''){{ with $domain }} + "@" + "{{ range $index := seq (sub (len $domain) 1) 0}}{{ substr $domain $index 1}}{{ end }}".split('').reverse().join(''){{ with $query }} + "?" + "{{ range $index := seq (sub (len $query) 1) 0}}{{ substr $query $index 1}}{{ end }}".split('').reverse().join(''){{ end }}{{ end }};
|
||||||
|
link.href = {{ $protocol }} + ":" + address;
|
||||||
|
{{ with $displaytext }}
|
||||||
|
link.innerText = {{ $displaytext }};
|
||||||
|
{{ else }}
|
||||||
|
link.innerText = address.split('?')[0];
|
||||||
|
{{ end }}
|
||||||
|
{{ with $class }}
|
||||||
|
link.className = "{{ $class }}";
|
||||||
|
{{ end }}
|
||||||
|
scriptTag.parentElement.insertBefore(link, scriptTag.previousElementSibling);
|
||||||
|
scriptTag.parentElement.removeChild(scriptTag.previousElementSibling)
|
||||||
|
</script>
|
||||||
|
{{/* The end */}}
|
|
@ -0,0 +1,3 @@
|
||||||
|
{{ $class := .Get "class" }}
|
||||||
|
{{ $body := .Get "text" | default .Inner }}
|
||||||
|
<div class="grid{{ with $class }} {{ . }}{{ end }}">{{ $body }}</div>
|
|
@ -0,0 +1,9 @@
|
||||||
|
{{ $file := .Get "fichier" }}
|
||||||
|
{{ $description := .Get "description" }}
|
||||||
|
{{ $width := .Get "taille" }}
|
||||||
|
{{ $file }}
|
||||||
|
{{ $description }}
|
||||||
|
{{ $width }}
|
||||||
|
Page : {{ .Page }}<br>
|
||||||
|
Context : {{ . }}<br>
|
||||||
|
Site : {{ resources.Get "apropors.png" }}<br>
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ $original := .Page.Resources.GetMatch (printf "*%s*" (.Get 0)) }}
|
||||||
|
{{ $command := .Get 1 }}
|
||||||
|
{{ $options := .Get 2 }}
|
||||||
|
|
||||||
|
{{ if eq $command "Fit"}}
|
||||||
|
{{ .Scratch.Set "image" ($original.Fit $options) }}
|
||||||
|
{{ else if eq $command "Resize"}}
|
||||||
|
{{ .Scratch.Set "image" ($original.Resize $options) }}
|
||||||
|
{{ else if eq $command "Fill"}}
|
||||||
|
{{ .Scratch.Set "image" ($original.Fill $options) }}
|
||||||
|
{{ else }}
|
||||||
|
{{ errorf "Invalid image processing command: Must be one of Fit, Fill or Resize."}}
|
||||||
|
{{ end }}
|
||||||
|
{{ $image := .Scratch.Get "image" }}
|
||||||
|
<figure style="padding: 0.25rem; margin: 2rem 0; background-color: #cccc">
|
||||||
|
<img style="max-width: 100%; width: auto; height: auto;" src="{{ $image.RelPermalink }}" width="{{ $image.Width }}" height="{{ $image.Height }}">
|
||||||
|
<figcaption>
|
||||||
|
<small>
|
||||||
|
{{ with .Inner }}
|
||||||
|
{{ . }}
|
||||||
|
{{ else }}
|
||||||
|
.{{ $command }} "{{ $options }}"
|
||||||
|
{{ end }}
|
||||||
|
</small>
|
||||||
|
</figcaption>
|
||||||
|
</figure>
|
|
@ -0,0 +1 @@
|
||||||
|
{{ now.Format "2006" }}
|
Loading…
Reference in New Issue