version 2

This commit is contained in:
Ewen 2022-03-31 06:22:55 +02:00
parent fe28b36bbe
commit ca2457c0a5
31 changed files with 693 additions and 85 deletions

View file

@ -35,6 +35,7 @@ a,
a:hover, a:hover,
a:focus { a:focus {
text-decoration: none; text-decoration: none;
color: $primary-color;
} }
@ -218,3 +219,9 @@ a.bg-primary:focus, a.bg-primary:hover, button.bg-primary:focus, button.bg-prima
background: $primary-color !important; background: $primary-color !important;
} }
/* Various */
.grayscale-60 {
filter: grayscale(60%);
}

View file

@ -23,13 +23,19 @@ p, .paragraph {
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
color: $text-color-dark; color: $text-color-dark;
font-weight: 700; font-weight: 400;
line-height: 1.3 !important; line-height: 1.3 !important;
&:not([class^='ti-']) { &:not([class^='ti-']) {
font-family: $primary-font; font-family: $primary-font;
} }
} }
.section-header {
font-variant: small-caps;
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important;
font-weight: 600 !important;
}
a{ a{
&.h1,&.h2,&.h3,&.h4,&.h5,&.h6{ &.h1,&.h2,&.h3,&.h4,&.h5,&.h6{
color: $text-color-dark; color: $text-color-dark;

View file

@ -1,6 +1,6 @@
// Color Variables // Color Variables
$primary-color: #00AAA1; $primary-color: #00AAA1;
$text-color: #666666; $text-color: black;
$text-color-dark: #222222; $text-color-dark: #222222;
$text-color-light: #959595; $text-color-light: #959595;
$body-color: #fff; $body-color: #fff;
@ -10,5 +10,6 @@ $white: #fff;
$gray: #f4fcff; $gray: #f4fcff;
// Font Variables // Font Variables
$primary-font: 'GenLight', sans-serif; //$primary-font: 'GenLight', sans-serif;
$primary-font: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
$icon-font: 'fontawesome'; $icon-font: 'fontawesome';

View file

@ -25,5 +25,7 @@ VERSION: Version Number
@import 'templates/main.scss'; @import 'templates/main.scss';
@import 'templates/cv.scss';

View file

@ -0,0 +1,9 @@
.card-logo {
display: block;
float: right;
img {
max-width: 100px;
max-height: 100px;
}
}

View file

@ -1,5 +1,5 @@
/* card */ /* card */
.card { .posts {
border: 0; border: 0;
border-radius: 0; border-radius: 0;
@ -163,12 +163,15 @@
padding: 5px; padding: 5px;
&:hover { &:hover,
&.active {
background-color: $white; background-color: $white;
color: $primary-color; color: $primary-color;
border: 1px solid $primary-color; border: 1px solid $primary-color;
} }
} }
} }
@ -284,11 +287,3 @@
} }
} }
footer a {
@extend .text-dark;
&:hover {
color: $primary-color !important;
text-decoration: underline;
}
}

View file

@ -100,6 +100,13 @@
} }
} }
} }
.flag {
display: block;
width: 32px;
margin: auto;
padding-top: 2px;
}
} }
#lang-toggle-cbox:checked ~ .lang-toggler li a:after { #lang-toggle-cbox:checked ~ .lang-toggler li a:after {

View file

@ -10,22 +10,38 @@ other = "Tikedennoù"
[poweredby] [poweredby]
other = "Couvaison rendue possible par <a href=\"https://gohugo.io\">Hugo</a> &amp; <a href=\"https://forge.goe.land/eorn/simple-goeland\">Simple-Goeland</a>." other = "Couvaison rendue possible par <a href=\"https://gohugo.io\">Hugo</a> &amp; <a href=\"https://forge.goe.land/eorn/simple-goeland\">Simple-Goeland</a>."
[publishedIn] [published]
other = "Embannet e" other = "Embannet"
[on] [on]
other = "ar" other = "d'ar/an"
[readingTime] [readingTime]
other = "Amzer da lenn" other = "Amzer da lenn: "
[readingTimeValue] [readingTimeValue]
one = "~1 min" one = "~1 vn"
other = "~{{ .Count }} mins" two = "~2 vn"
other = "~{{ .Count }} a vunutennoù"
[recentContent] [recentContent]
other = "Contenu récent sur" other = "Contenu récent sur"
[readMore] [readMore]
other = "Lenn ar rest" other = "Lenn muioc'h"
[allPosts]
other = "Muioc'h a bennadoù"
[social]
other = "Sokial"
[present]
other = "hiziv"
[related-articles]
other = "Pennadoù kar"
[lastPosts]
other = "Pennadoù diwezhañ"

View file

@ -10,14 +10,14 @@ other = "Tags"
[poweredby] [poweredby]
other = "Brooding made possible by <a href=\"https://gohugo.io\">Hugo</a> &amp; <a href=\"https://forge.goe.land/eorn/simple-goeland\">Simple-Goeland</a>." other = "Brooding made possible by <a href=\"https://gohugo.io\">Hugo</a> &amp; <a href=\"https://forge.goe.land/eorn/simple-goeland\">Simple-Goeland</a>."
[publishedIn] [published]
other = "Published in" other = "Published"
[on] [on]
other = "on" other = "on"
[readingTime] [readingTime]
other = "Reading time" other = "Reading time: "
[readingTimeValue] [readingTimeValue]
one = "~1 min" one = "~1 min"
@ -28,3 +28,12 @@ other = "Recent content on"
[readMore] [readMore]
other = "Read more" other = "Read more"
[allPosts]
other = "All posts"
[related-articles]
other = "Related posts"
[lastPosts]
other = "Last posts"

View file

@ -10,14 +10,14 @@ other = "Tags"
[poweredby] [poweredby]
other = "Couvaison rendue possible par <a href=\"https://gohugo.io\">Hugo</a> &amp; <a href=\"https://forge.goe.land/eorn/simple-goeland\">Simple-Goeland</a>." other = "Couvaison rendue possible par <a href=\"https://gohugo.io\">Hugo</a> &amp; <a href=\"https://forge.goe.land/eorn/simple-goeland\">Simple-Goeland</a>."
[publishedIn] [published]
other = "Publié dans" other = "Publié"
[on] [on]
other = "le" other = "le"
[readingTime] [readingTime]
other = "Durée de lecture" other = "Durée de lecture : "
[readingTimeValue] [readingTimeValue]
one = "~1 min" one = "~1 min"
@ -26,6 +26,20 @@ other = "~{{ .Count }} mins"
[recentContent] [recentContent]
other = "Contenu récent sur" other = "Contenu récent sur"
[readMore] [readMore]
other = "Lire la suite" other = "Lire la suite"
[allPosts]
other = "Plus d'articles"
[social]
other = "Social"
[present]
other = "aujourd'hui"
[related-articles]
other = "Billets similaires"
[lastPosts]
other = "Derniers billets"

View file

@ -1,16 +1,51 @@
{{ define "main "}} {{ define "main" }}
<!-- blog post -->
<section class="section-sm"> <section class="section-sm">
<div class="container"> <div class="container">
<div class="row"> <div class="row">
<div class="col-lg-8 mb-5 mb-lg-0"> <div class="col-lg-8 mb-100 mb-lg-0">
<div class="row">
{{ $paginator := .Paginate .Data.Pages }}
{{ range $paginator.Pages }} {{- $pctx := . -}}
{{ .Render "post"}} {{- $pages := .Site.RegularPages -}}
{{ end }} {{ $paginator := .Paginate (where $pages "Type" "blog") }}
</div> {{ range sort .Data.Pages }}
<article class="posts featured-post">
<div class="row mb-20">
{{ if .Params.Image }}
{{ $article := .Permalink | relURL }}
{{ $image := .Params.Image | relURL }}
<div class="col-md-4">
<img src="{{ print $article $image }}" class="posts-img" alt="{{ .Title | markdownify }}">
</div>
<div class="col-md-7">
{{ else }}
<div class="col-md-10">
{{ end }}
<div class="card-body pt-0">
{{ range .Params.Categories }}
<a href="{{ `categories/` | relLangURL }}{{ . | urlize | lower }}"
class="text-primary">{{ . | title | humanize }}</a>
{{ end }}
<a href="{{ .Permalink }}" class="h3 my-3 pt-0">{{ .Title | markdownify }}</a>
<div class="mb-3 post-meta">
{{ if not .Params.HideDate }}
<span>{{ .Date.Format "02 January 2006" }}</span>
{{ end }}
</div>
<p class="card-text">{{ .Summary }}</p>
<div class="d-flex justify-content-end">
<a href="{{ .Permalink }}" class="btn btn-outline-primary">{{ i18n "readMore"
}}</a>
</div>
</div>
</div>
</div>
</article>
{{ end }}
</div> </div>
<!-- sidebar--> <!-- sidebar-->
@ -23,6 +58,4 @@
</div> </div>
</div> </div>
</section> </section>
{{ end }} {{ end }}

View file

@ -10,7 +10,7 @@
{{ partial "tags" .Params.tags }} {{ partial "tags" .Params.tags }}
{{ end }} {{ end }}
</div> </div>
<span class="article-date">{{ i18n "publishedIn" }} <a href="{{ .CurrentSection.URL }}">{{ .CurrentSection.Name }}</a> {{ i18n "on" }} {{ .Date.Format "2006-01-02" }}. {{ i18n "readingTime" }} {{ i18n "readingTimeValue" .ReadingTime }}.</span> <span class="article-date">{{ i18n "published" }} <a href="{{ .CurrentSection.URL }}">{{ .CurrentSection.Name }}</a> {{ i18n "on" }} {{ .Date.Format "2006-01-02" }}. {{ i18n "readingTime" }} {{ i18n "readingTimeValue" .ReadingTime }}.</span>
<div class="post-content"> <div class="post-content">
{{ .Content }} {{ .Content }}

View file

@ -11,7 +11,6 @@
{{ end }} {{ end }}
<h4 class="widget-title">{{ .Title | markdownify }}</h4> <h4 class="widget-title">{{ .Title | markdownify }}</h4>
{{- if .IsTranslated -}}<p>({{- range .Translations -}}<a href="{{- .Permalink -}}">{{- .Lang -}}</a>{{- end -}})</p>{{- end -}}
<div class="content"> <div class="content">
{{ .Content }} {{ .Content }}
</div> </div>

View file

@ -10,14 +10,14 @@
{{ $paginator := .Paginate (where $pages "Type" "blog") }} {{ $paginator := .Paginate (where $pages "Type" "blog") }}
{{ range sort .Paginator.Pages }} {{ range sort .Paginator.Pages }}
<article class="card featured-post"> <article class="posts featured-post">
<div class="row mb-20"> <div class="row mb-20">
{{ if .Params.Image }} {{ if .Params.Image }}
{{ $article := .Permalink | relURL }} {{ $article := .Permalink | relURL }}
{{ $image := .Params.Image | relURL }} {{ $image := .Params.Image | relURL }}
<div class="col-md-4"> <div class="col-md-4">
<img src="{{ print $article $image }}" class="card-img" alt="{{ .Title | markdownify }}"> <img src="{{ print $article $image }}" class="posts-img" alt="{{ .Title | markdownify }}">
</div> </div>
<div class="col-md-7"> <div class="col-md-7">
{{ else }} {{ else }}
@ -32,12 +32,12 @@
<a href="{{ .Permalink }}" class="h3 my-3 pt-0">{{ .Title | markdownify }}</a> <a href="{{ .Permalink }}" class="h3 my-3 pt-0">{{ .Title | markdownify }}</a>
<div class="mb-3 post-meta"> <div class="mb-3 post-meta">
{{ if not .Params.HideDate }} {{ if not .Params.HideDate }}
<span>{{ .Date.Format "02 January 2006" }}</span> <span>{{ (time .Date) | time.Format (.Params.date_format | default "2 January 2006") }}</span>
{{ end }} {{ end }}
</div> </div>
<p class="card-text">{{ .Summary }}</p> <p class="card-text">{{ .Summary }}</p>
<div class="d-flex justify-content-end"> <div class="d-flex justify-content-end">
<a href="{{ .Permalink }}" class="btn btn-outline-primary">read more</a> <a href="{{ .Permalink }}" class="btn btn-outline-primary">{{ i18n "readMore" }}</a>
</div> </div>
</div> </div>

View file

@ -12,14 +12,7 @@
{{ end }} {{ end }}
</div> </div>
<h1 class="mb-0">{{ .Title }}</h1> <h1 class="mb-0">{{ .Title }}</h1>
<p class="mb-1">Embannet {{ i18n "on" }} {{ .Date.Format "2006-01-02" }}. {{ i18n "readingTime" }} {{ i18n "readingTimeValue" .ReadingTime }}. <p class="mb-1">{{ i18n "published" }} {{ i18n "on" }} {{ (time .Date) | time.Format (.Params.date_format | default "2 January 2006") }}. {{ i18n "readingTime" }} {{ i18n "readingTimeValue" .ReadingTime }}.</p>
{{ if .IsTranslated }}
Article également disponible en&nbsp;:
{{- range .Translations -}}
&nbsp;<a href="{{- .Permalink -}}">{{- .Lang -}}</a>
{{- end -}}.
{{- end -}}
</p>
{{ if .Params.Image }} {{ if .Params.Image }}
{{ $article := .Permalink | relURL }} {{ $article := .Permalink | relURL }}

99
layouts/contact/list.html Normal file
View file

@ -0,0 +1,99 @@
{{ define "main" }}
<section class="section-sm">
<div class="container">
{{ .Page.Content }}
<div class="row">
<div class="col-lg-8 mb-100 mb-lg-0">
{{ $cv_sections := where .Pages "Params.Widget" "cv"}}
{{ range $ids, $item := sort $cv_sections ".Params.weight" "asc" }}
{{ $items_len := len .Params.items }}
<div class="col-12 mb-5">
<h3 class="section-header">{{ .Title | markdownify }}</h3>
{{ range $idx, $key := .Params.items }}
<div class="card mt-3">
<div class="card-body">
{{- if .logo -}}
<div class="card-logo">
<img src="./{{ .logo | relURL }}" alt="Logo">
</div>
{{- end -}}
<h4 class="card-title">{{ .title | markdownify }}{{- with .details }}<a class="btn btn-outline-primary btn-xsm ms-2 px-1 py-0" href="{{ . }}">{{ i18n "details" | default "Details" }}</a>{{- end -}}</h4>
{{ with .subtitle }}<h6 class="card-subtitle text-muted">{{ . | markdownify }}</h6>{{ end }}
{{ with .description }}<div class="card-text details mt-2">{{ . | markdownify | emojify }}</div>{{ end }}
</div>
{{ if .date_start }}
<div class="card-footer">
{{ (time .date_start) | time.Format ($item.Params.date_format | default "January 2006") }}
{{ if .date_end }}
{{ (time .date_end) | time.Format ($item.Params.date_format | default "January 2006") }}
{{ else }}
{{ i18n "present" | default "Present" }}
{{ end }}
{{ with .location }}
·
<span>{{ . }}</span>
{{ end }}
</div>
{{ end }}
</div>
{{ end }}
</div>
{{ end }}
{{/*
< class="col-12 {{if eq $columns "2"}}col-lg-8{{end}}">
<h4 class="widget-title">{{ .Title | markdownify }}</h4>
{{ range $idx, $key := .Params.experience }}
<div class="row experience">
<!-- Timeline --> */}}
{{/* <div class="col-auto text-center flex-column d-none d-sm-flex">
<div class="row h-50">
<div class="col {{ if gt $idx 0}}border-right{{end}}">&nbsp;</div>
<div class="col">&nbsp;</div>
</div>
<div class="m-2">
<span class="badge badge-pill border {{if not .date_end}}exp-fill{{end}}">&nbsp;</span>
</div>
<div class="row h-50">
<div class="col {{if lt $idx (sub $exp_len 1)}}border-right{{end}}">&nbsp;</div>
<div class="col">&nbsp;</div>
</div>
</div>
<!-- Content -->
<div class="col py-2">
<div class="card">
<div class="card-body">
<div class="section-subheading card-title exp-title text-muted my-0">{{ .title | markdownify }}</div>
<div class="section-subheading card-title exp-company text-muted my-0">
{{- with .company_url}}<a href="{{.}}" target="_target">{{end}}{{ .company | markdownify }}{{ with .company_url}}</a>{{end -}}
</div>
<div class="text-muted exp-meta">
{{ (time .date_start) | time.Format (.Params.date_format | default "January 2006") }}
{{ if .date_end }}
{{ (time .date_end) | time.Format (.Params.date_format | default "January 2006") }}
{{ else }}
{{ i18n "present" | default "Present" }}
{{ end }}
{{ with .location }}
<span class="middot-divider"></span>
<span>{{ . }}</span>
{{ end }}
</div>
</div>
{{ with .description}}
<div class="card-text">{{ . | markdownify | emojify }}</div>
{{ end }}
</div>
</div>
</div>
{{ end }} */}}
</div>
{{ partial "sidebar.html" . }}
</div>
</div>
</section>
{{ end }}

View file

@ -1,17 +1,13 @@
{{ define "main" }} {{ define "main" }}
<section class="section-sm"> <section class="section-sm">
<div class="container"> <div class="container">
<div class=""> <div class="row">
<div class="col-lg-8 mx-auto text-center">
{{ if .Params.Image }} {{ if .Params.Image }}
<div class="author"> <img src="{{ .Params.Image | absURL }}" alt="Author" class="img-fluid d-block mx-auto rounded-circle mb-4">
<img src="{{ .Params.Image | absURL }}" alt="Author" {{ end }}
class="author-img rounded-circle m-4">
</div> </div>
{{ end }}
<h4 class="widget-title">{{ .Title | markdownify }}</h4> <h4 class="widget-title">{{ .Title | markdownify }}</h4>
{{- if .IsTranslated -}}<p>({{- range .Translations -}}<a href="{{- .Permalink -}}">{{- .Lang -}}</a>{{- end -}})</p>{{- end -}}
<div class="content"> <div class="content">
{{ .Content }} {{ .Content }}
</div> </div>

99
layouts/cv/list.html Normal file
View file

@ -0,0 +1,99 @@
{{ define "main" }}
<section class="section-sm">
<div class="container">
{{ .Page.Content }}
<div class="row">
<div class="col-lg-8 mb-100 mb-lg-0">
{{ $cv_sections := where .Pages "Params.Widget" "cv"}}
{{ range $ids, $item := sort $cv_sections ".Params.weight" "asc" }}
{{ $items_len := len .Params.items }}
<div class="col-12 mb-5">
<h3 class="section-header">{{ .Title | markdownify }}</h3>
{{ range $idx, $key := .Params.items }}
<div class="card mt-3">
<div class="card-body">
{{- if .logo -}}
<div class="card-logo">
<img src="./{{ .logo | relURL }}" alt="Logo">
</div>
{{- end -}}
<h4 class="card-title">{{ .title | markdownify }}{{- with .details }}<a class="btn btn-outline-primary btn-xsm ms-2 px-1 py-0" href="{{ . }}">{{ i18n "details" | default "Details" }}</a>{{- end -}}</h4>
{{ with .subtitle }}<h6 class="card-subtitle text-muted">{{ . | markdownify }}</h6>{{ end }}
{{ with .description }}<div class="card-text details mt-2">{{ . | markdownify | emojify }}</div>{{ end }}
</div>
{{ if .date_start }}
<div class="card-footer">
{{ (time .date_start) | time.Format ($item.Params.date_format | default "January 2006") }}
{{ if .date_end }}
{{ (time .date_end) | time.Format ($item.Params.date_format | default "January 2006") }}
{{ else }}
{{ i18n "present" | default "Present" }}
{{ end }}
{{ with .location }}
·
<span>{{ . }}</span>
{{ end }}
</div>
{{ end }}
</div>
{{ end }}
</div>
{{ end }}
{{/*
< class="col-12 {{if eq $columns "2"}}col-lg-8{{end}}">
<h4 class="widget-title">{{ .Title | markdownify }}</h4>
{{ range $idx, $key := .Params.experience }}
<div class="row experience">
<!-- Timeline --> */}}
{{/* <div class="col-auto text-center flex-column d-none d-sm-flex">
<div class="row h-50">
<div class="col {{ if gt $idx 0}}border-right{{end}}">&nbsp;</div>
<div class="col">&nbsp;</div>
</div>
<div class="m-2">
<span class="badge badge-pill border {{if not .date_end}}exp-fill{{end}}">&nbsp;</span>
</div>
<div class="row h-50">
<div class="col {{if lt $idx (sub $exp_len 1)}}border-right{{end}}">&nbsp;</div>
<div class="col">&nbsp;</div>
</div>
</div>
<!-- Content -->
<div class="col py-2">
<div class="card">
<div class="card-body">
<div class="section-subheading card-title exp-title text-muted my-0">{{ .title | markdownify }}</div>
<div class="section-subheading card-title exp-company text-muted my-0">
{{- with .company_url}}<a href="{{.}}" target="_target">{{end}}{{ .company | markdownify }}{{ with .company_url}}</a>{{end -}}
</div>
<div class="text-muted exp-meta">
{{ (time .date_start) | time.Format (.Params.date_format | default "January 2006") }}
{{ if .date_end }}
{{ (time .date_end) | time.Format (.Params.date_format | default "January 2006") }}
{{ else }}
{{ i18n "present" | default "Present" }}
{{ end }}
{{ with .location }}
<span class="middot-divider"></span>
<span>{{ . }}</span>
{{ end }}
</div>
</div>
{{ with .description}}
<div class="card-text">{{ . | markdownify | emojify }}</div>
{{ end }}
</div>
</div>
</div>
{{ end }} */}}
</div>
{{ partial "sidebar.html" . }}
</div>
</div>
</section>
{{ end }}

View file

@ -11,10 +11,18 @@
{{ end }} {{ end }}
<h4 class="widget-title">{{ .Title | markdownify }}</h4> <h4 class="widget-title">{{ .Title | markdownify }}</h4>
{{- if .IsTranslated -}}<p>({{- range .Translations -}}<a href="{{- .Permalink -}}">{{- .Lang -}}</a>{{- end -}})</p>{{- end -}}
<div class="content"> <div class="content">
{{ .Content }} {{ .Content }}
</div> </div>
{{ .Title }}
{{ range .Pages }}
- {{ .Name }}<br>
{{ end }}
</div> </div>
</div> </div>
</section> </section>

View file

@ -5,16 +5,16 @@
<div class="container"> <div class="container">
<div class="row"> <div class="row">
<div class="col-lg-8 mb-100 mb-lg-0"> <div class="col-lg-8 mb-100 mb-lg-0">
<h3>Pennadoù diwezhañ</h3> <h3 class="section-header">{{ i18n "lastPosts" }}</h3>
{{ range first 5 (where .Site.RegularPages "Type" "blog") }} {{ range first 5 (where .Site.RegularPages "Type" "blog") }}
<article class="card featured-post"> <article class="posts featured-post">
<div class="row mb-20"> <div class="row mb-20">
{{ if .Params.Image }} {{ if .Params.Image }}
{{ $article := .Permalink | relURL }} {{ $article := .Permalink | relURL }}
{{ $image := .Params.Image | relURL }} {{ $image := .Params.Image | relURL }}
<div class="col-md-4"> <div class="col-md-4">
<img src="{{ print $article $image }}" class="card-img" alt="{{ .Title | markdownify }}"> <img src="{{ print $article $image }}" class="posts-img" alt="{{ .Title | markdownify }}">
</div> </div>
<div class="col-md-7"> <div class="col-md-7">
{{ else }} {{ else }}
@ -29,12 +29,12 @@
<a href="{{ .Permalink }}" class="h3 my-3 pt-0">{{ .Title | markdownify }}</a> <a href="{{ .Permalink }}" class="h3 my-3 pt-0">{{ .Title | markdownify }}</a>
<div class="mb-3 post-meta"> <div class="mb-3 post-meta">
{{ if not .Params.HideDate }} {{ if not .Params.HideDate }}
<span>{{ .Date.Format "02 January 2006" }}</span> <span>{{ (time .Date) | time.Format (.Params.date_format | default "2 January 2006") }}</span>
{{ end }} {{ end }}
</div> </div>
<p class="card-text">{{ .Summary }}</p> <p class="card-text">{{ .Summary }}</p>
<div class="d-flex justify-content-end"> <div class="d-flex justify-content-end">
<a href="{{ .Permalink }}" class="btn btn-outline-primary">read more</a> <a href="{{ .Permalink }}" class="btn btn-outline-primary">{{ i18n "readMore" }}</a>
</div> </div>
</div> </div>
@ -42,16 +42,18 @@
</div> </div>
</article> </article>
{{ end }} {{ end }}
<div class="d-flex justify-content-center">
<a href="{{ "blog" | relLangURL }}" class="btn btn-outline-primary">{{ i18n "allPosts" }}</a>
</div>
</div> </div>
<!-- sidebar --> <!-- sidebar -->
{{ partial "sidebar.html" . }} {{ partial "sidebar.html" . }}
</div> </div>
</div> </div>
{{ template "_internal/pagination.html" . }}
</section> </section>
<!-- pagination -->
{{ end }} {{ end }}

View file

@ -0,0 +1,7 @@
<footer>
<div class="container">
<div class="col-12 border-top py-4 text-center">
{{ .Site.Params.copyright | markdownify }}
</div>
</div>
</footer>

View file

@ -60,14 +60,14 @@
data-toggle="collapse" data-target="#lang-dropdown" data-toggle="collapse" data-target="#lang-dropdown"
aria-expanded="false" aria-controls="lang-dropdown"> aria-expanded="false" aria-controls="lang-dropdown">
<li class=""> <li class="">
<a class="nav-link">Lang</a> <a class="nav-link"><img class="flag grayscale-60" src="/img/flag_{{- .Lang -}}.svg"></a>
</li> </li>
</label> </label>
<div id="lang-dropdown" class="collapse"> <div id="lang-dropdown" class="collapse">
<ul class="mydropdown-menu"> <ul class="mydropdown-menu">
{{- range .AllTranslations -}} {{- range .AllTranslations -}}
<li><a href="{{- .Permalink -}}">{{- .Lang -}}</a></li> <li><a href="{{- .Permalink -}}"><img class="flag" src="/img/flag_{{- .Lang -}}.svg"></a></li>
{{- end -}} {{- end -}}
</ul> </ul>
</div> </div>

View file

@ -1,6 +1,6 @@
{{ $related := .Site.RegularPages.Related . | first 5 }} {{ $related := .Site.RegularPages.Related . | first 5 }}
{{ with $related }} {{ with $related }}
<h3>Billets similaires</h3> <h3>{{ i18n "related-articles" }}</h3>
<ul> <ul>
{{ range . }} {{ range . }}
<li><a href="{{ .RelPermalink }}">{{ .Title }}</a> <span class="article-date">- {{ i18n "readingTimeValue" .ReadingTime }}</span></li> <li><a href="{{ .RelPermalink }}">{{ .Title }}</a> <span class="article-date">- {{ i18n "readingTimeValue" .ReadingTime }}</span></li>

View file

@ -2,7 +2,8 @@
<div class="widgets"> <div class="widgets">
{{ $currentPage := . }} {{ $currentPage := . }}
{{ if eq $currentPage.Type "blog" }} {{ $currentPageName := .Page.Name | urlize | lower }}
{{ if or (eq $currentPage.Type "blog") (eq $currentPage.Section "tags") }}
<!-- category <!-- category
<div class="widget"> <div class="widget">
<h4 class="widget-title">Category</h4> <h4 class="widget-title">Category</h4>
@ -19,13 +20,15 @@
</div>--> </div>-->
<!-- Tags --> <!-- Tags -->
<div class="widget"> <div class="widget">
<h4 class="widget-title">Tag</h4> <h4 class="widget-title">{{ i18n "tags" }} </h4>
{{- if isset .Site.Taxonomies "tags" }} {{- if isset .Site.Taxonomies "tags" }}
{{- if not (eq (len .Site.Taxonomies.tags) 0) }} {{- if not (eq (len .Site.Taxonomies.tags) 0) }}
<ul class="list-inline"> <ul class="list-inline">
{{- range $name, $items := .Site.Taxonomies.tags }} {{- range $name, $items := .Site.Taxonomies.tags }}
<li class="list-inline-item"><a class="d-block p-2 bg-primary text-white" <span class="tag d-inline-block my-2">
href="{{ `tags/` | relLangURL }}{{ $name | urlize | lower }}/">{{ $name | humanize }}</a></li> <a {{ if eq $currentPageName $name }}class="active"{{ end }}
href="{{ `tags/` | relLangURL }}{{ $name | urlize | lower }}/">{{ $name }}</a>
</span>&nbsp;
{{- end }} {{- end }}
</ul> </ul>
{{- end }} {{- end }}
@ -44,7 +47,7 @@
class="img-fluid author-thumb-sm d-block mx-auto rounded-circle mb-4"> class="img-fluid author-thumb-sm d-block mx-auto rounded-circle mb-4">
{{ end }} {{ end }}
<p>{{ .Summary }}</p> <p>{{ .Summary }}</p>
<a href="{{ .Permalink }}" class="btn btn-outline-primary">Know more</a> <a href="{{ .Permalink }}" class="btn btn-outline-primary">{{ i18n "readMore" }}</a>
{{ end }} {{ end }}
</div> </div>
@ -52,7 +55,7 @@
<!-- social --> <!-- social -->
<div class="widget"> <div class="widget">
<h4 class="widget-title">Social</h4> <h4 class="widget-title">{{ i18n "social" }}</h4>
<ul class="list-inline social-links"> <ul class="list-inline social-links">

View file

@ -0,0 +1,99 @@
{{ define "main" }}
<section class="section-sm">
<div class="container">
{{ .Page.Content }}
<div class="row">
<div class="col-lg-8 mb-100 mb-lg-0">
{{ $cv_sections := where .Pages "Params.Widget" "cv"}}
{{ range $ids, $item := sort $cv_sections ".Params.weight" "asc" }}
{{ $items_len := len .Params.items }}
<div class="col-12 mb-5">
<h3 class="section-header">{{ .Title | markdownify }}</h3>
{{ range $idx, $key := .Params.items }}
<div class="card mt-3">
<div class="card-body">
{{- if .logo -}}
<div class="card-logo">
<img src="./{{ .logo | relURL }}" alt="Logo">
</div>
{{- end -}}
<h4 class="card-title">{{ .title | markdownify }}{{- with .details }}<a class="btn btn-outline-primary btn-xsm ms-2 px-1 py-0" href="{{ . }}">{{ i18n "details" | default "Details" }}</a>{{- end -}}</h4>
{{ with .subtitle }}<h6 class="card-subtitle text-muted">{{ . | markdownify }}</h6>{{ end }}
{{ with .description }}<div class="card-text details mt-2">{{ . | markdownify | emojify }}</div>{{ end }}
</div>
{{ if .date_start }}
<div class="card-footer">
{{ (time .date_start) | time.Format ($item.Params.date_format | default "January 2006") }}
{{ if .date_end }}
{{ (time .date_end) | time.Format ($item.Params.date_format | default "January 2006") }}
{{ else }}
{{ i18n "present" | default "Present" }}
{{ end }}
{{ with .location }}
·
<span>{{ . }}</span>
{{ end }}
</div>
{{ end }}
</div>
{{ end }}
</div>
{{ end }}
{{/*
< class="col-12 {{if eq $columns "2"}}col-lg-8{{end}}">
<h4 class="widget-title">{{ .Title | markdownify }}</h4>
{{ range $idx, $key := .Params.experience }}
<div class="row experience">
<!-- Timeline --> */}}
{{/* <div class="col-auto text-center flex-column d-none d-sm-flex">
<div class="row h-50">
<div class="col {{ if gt $idx 0}}border-right{{end}}">&nbsp;</div>
<div class="col">&nbsp;</div>
</div>
<div class="m-2">
<span class="badge badge-pill border {{if not .date_end}}exp-fill{{end}}">&nbsp;</span>
</div>
<div class="row h-50">
<div class="col {{if lt $idx (sub $exp_len 1)}}border-right{{end}}">&nbsp;</div>
<div class="col">&nbsp;</div>
</div>
</div>
<!-- Content -->
<div class="col py-2">
<div class="card">
<div class="card-body">
<div class="section-subheading card-title exp-title text-muted my-0">{{ .title | markdownify }}</div>
<div class="section-subheading card-title exp-company text-muted my-0">
{{- with .company_url}}<a href="{{.}}" target="_target">{{end}}{{ .company | markdownify }}{{ with .company_url}}</a>{{end -}}
</div>
<div class="text-muted exp-meta">
{{ (time .date_start) | time.Format (.Params.date_format | default "January 2006") }}
{{ if .date_end }}
{{ (time .date_end) | time.Format (.Params.date_format | default "January 2006") }}
{{ else }}
{{ i18n "present" | default "Present" }}
{{ end }}
{{ with .location }}
<span class="middot-divider"></span>
<span>{{ . }}</span>
{{ end }}
</div>
</div>
{{ with .description}}
<div class="card-text">{{ . | markdownify | emojify }}</div>
{{ end }}
</div>
</div>
</div>
{{ end }} */}}
</div>
{{ partial "sidebar.html" . }}
</div>
</div>
</section>
{{ end }}

View file

@ -8,10 +8,10 @@
{{ end }} {{ end }}
</div> </div>
<h4 class="widget-title">{{ .Title | markdownify }}</h4> <h4 class="widget-title">{{ .Title | markdownify }}</h4>
{{- if .IsTranslated -}}<p>({{- range .Translations -}}<a href="{{- .Permalink -}}">{{- .Lang -}}</a>{{- end -}})</p>{{- end -}}
<div class="content"> <div class="content">
{{ .Content }} {{ .Content }}
</div> </div>
</div> </div>
</div> </div>
</section> </section>

View file

@ -0,0 +1,99 @@
{{ define "main" }}
<section class="section-sm">
<div class="container">
{{ .Page.Content }}
<div class="row">
<div class="col-lg-8 mb-100 mb-lg-0">
{{ $cv_sections := where .Pages "Params.Widget" "cv"}}
{{ range $ids, $item := sort $cv_sections ".Params.weight" "asc" }}
{{ $items_len := len .Params.items }}
<div class="col-12 mb-5">
<h3 class="section-header">{{ .Title | markdownify }}</h3>
{{ range $idx, $key := .Params.items }}
<div class="card mt-3">
<div class="card-body">
{{- if .logo -}}
<div class="card-logo">
<img src="./{{ .logo | relURL }}" alt="Logo">
</div>
{{- end -}}
<h4 class="card-title">{{ .title | markdownify }}{{- with .details }}<a class="btn btn-outline-primary btn-xsm ms-2 px-1 py-0" href="{{ . }}">{{ i18n "details" | default "Details" }}</a>{{- end -}}</h4>
{{ with .subtitle }}<h6 class="card-subtitle text-muted">{{ . | markdownify }}</h6>{{ end }}
{{ with .description }}<div class="card-text details mt-2">{{ . | markdownify | emojify }}</div>{{ end }}
</div>
{{ if .date_start }}
<div class="card-footer">
{{ (time .date_start) | time.Format ($item.Params.date_format | default "January 2006") }}
{{ if .date_end }}
{{ (time .date_end) | time.Format ($item.Params.date_format | default "January 2006") }}
{{ else }}
{{ i18n "present" | default "Present" }}
{{ end }}
{{ with .location }}
·
<span>{{ . }}</span>
{{ end }}
</div>
{{ end }}
</div>
{{ end }}
</div>
{{ end }}
{{/*
< class="col-12 {{if eq $columns "2"}}col-lg-8{{end}}">
<h4 class="widget-title">{{ .Title | markdownify }}</h4>
{{ range $idx, $key := .Params.experience }}
<div class="row experience">
<!-- Timeline --> */}}
{{/* <div class="col-auto text-center flex-column d-none d-sm-flex">
<div class="row h-50">
<div class="col {{ if gt $idx 0}}border-right{{end}}">&nbsp;</div>
<div class="col">&nbsp;</div>
</div>
<div class="m-2">
<span class="badge badge-pill border {{if not .date_end}}exp-fill{{end}}">&nbsp;</span>
</div>
<div class="row h-50">
<div class="col {{if lt $idx (sub $exp_len 1)}}border-right{{end}}">&nbsp;</div>
<div class="col">&nbsp;</div>
</div>
</div>
<!-- Content -->
<div class="col py-2">
<div class="card">
<div class="card-body">
<div class="section-subheading card-title exp-title text-muted my-0">{{ .title | markdownify }}</div>
<div class="section-subheading card-title exp-company text-muted my-0">
{{- with .company_url}}<a href="{{.}}" target="_target">{{end}}{{ .company | markdownify }}{{ with .company_url}}</a>{{end -}}
</div>
<div class="text-muted exp-meta">
{{ (time .date_start) | time.Format (.Params.date_format | default "January 2006") }}
{{ if .date_end }}
{{ (time .date_end) | time.Format (.Params.date_format | default "January 2006") }}
{{ else }}
{{ i18n "present" | default "Present" }}
{{ end }}
{{ with .location }}
<span class="middot-divider"></span>
<span>{{ . }}</span>
{{ end }}
</div>
</div>
{{ with .description}}
<div class="card-text">{{ . | markdownify | emojify }}</div>
{{ end }}
</div>
</div>
</div>
{{ end }} */}}
</div>
{{ partial "sidebar.html" . }}
</div>
</div>
</section>
{{ end }}

View file

@ -0,0 +1,17 @@
{{ define "main" }}
<section class="section-sm">
<div class="container">
<div class="row">
<div class="col-lg-8 mx-auto text-center">
{{ if .Params.Image }}
<img src="{{ .Params.Image | absURL }}" alt="Author" class="img-fluid d-block mx-auto rounded-circle mb-4">
{{ end }}
</div>
<h4 class="widget-title">{{ .Title | markdownify }}</h4>
<div class="content">
{{ .Content }}
</div>
</div>
</div>
</section>
{{ end }}

25
static/img/flag_br.svg Normal file
View file

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1350" height="900">
<rect width="1350" height="900" fill="#fff"/>
<rect x="600" width="1350" height="100" fill="#000"/>
<rect x="600" y="200" width="1350" height="100" fill="#000"/>
<rect y="400" width="1350" height="100" fill="#000"/>
<rect y="600" width="1350" height="100" fill="#000"/>
<rect y="800" width="1350" height="100" fill="#000"/>
<use xlink:href="#ermine" x="-225" y="-122.5"/>
<use xlink:href="#ermine" x="-75" y="-122.5"/>
<use xlink:href="#ermine" x="75" y="-122.5"/>
<use xlink:href="#ermine" x="225" y="-122.5"/>
<use xlink:href="#ermine" x="-150"/>
<g id="ermine" fill="#000">
<use xlink:href="#s" transform="rotate(-90 300,167.5)"/>
<path id="s" d="M 300,167.5 l -9,-13.5 l 9,-22.5 l 9,22.5 z"/>
<use xlink:href="#s" transform="rotate(90 300,167.5)"/>
<path d="M 300,167.5 l 40.5,99 l -31.5,-13.5 l -9,18 l -9,-18 l -31.5,13.5 z"/>
</g>
<use xlink:href="#ermine" x="150"/>
<use xlink:href="#ermine" x="-225" y="122.5"/>
<use xlink:href="#ermine" x="-75" y="122.5"/>
<use xlink:href="#ermine" x="75" y="122.5"/>
<use xlink:href="#ermine" x="225" y="122.5"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

61
static/img/flag_en.svg Normal file
View file

@ -0,0 +1,61 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1300" height="650">
<defs>
<polygon id="pt" points="-0.1624598481164531,0 0,-0.5 0.1624598481164531,0" transform="scale(0.0616)" fill="#FFF"/>
<g id="star">
<use xlink:href="#pt" transform="rotate(-144)"/>
<use xlink:href="#pt" transform="rotate(-72)"/>
<use xlink:href="#pt"/>
<use xlink:href="#pt" transform="rotate(72)"/>
<use xlink:href="#pt" transform="rotate(144)"/>
</g>
<g id="s5">
<use xlink:href="#star" x="-0.252"/>
<use xlink:href="#star" x="-0.126"/>
<use xlink:href="#star"/>
<use xlink:href="#star" x="0.126"/>
<use xlink:href="#star" x="0.252"/>
</g>
<g id="s6">
<use xlink:href="#s5" x="-0.063"/>
<use xlink:href="#star" x="0.315"/>
</g>
<g id="x4">
<use xlink:href="#s6"/>
<use xlink:href="#s5" y="0.054"/>
<use xlink:href="#s6" y="0.108"/>
<use xlink:href="#s5" y="0.162"/>
</g>
<g id="u">
<use xlink:href="#x4" y="-0.216"/>
<use xlink:href="#x4"/>
<use xlink:href="#s6" y="0.216"/>
</g>
<rect id="stripe" width="1300" height="50" fill="#B22234"/>
</defs>
<rect width="1300" height="650" fill="#FFF"/>
<use xlink:href="#stripe"/>
<use xlink:href="#stripe" y="100"/>
<use xlink:href="#stripe" y="200"/>
<use xlink:href="#stripe" y="300"/>
<use xlink:href="#stripe" y="400"/>
<use xlink:href="#stripe" y="500"/>
<use xlink:href="#stripe" y="600"/>
<rect width="494" height="350" fill="#3C3B6E"/>
<use xlink:href="#u" transform="translate(247,175) scale(650)"/>
<svg viewBox="0 0 60 30" width="1300" height="650">
<clipPath id="t">
<path d="M30,15L60,30V15H0V30H30z"/>
</clipPath>
<clipPath id="uk">
<path d="M0,30H60V0z"/>
</clipPath>
<g clip-path="url(#uk)">
<path d="M0,0 v30 h60 v-30 z" fill="#00247d"/>
<path d="M0,0 L60,30 M60,0 L0,30" stroke="#fff" stroke-width="6"/>
<path d="M0,30 L30,15 L60,30" clip-path="url(#t)" fill="none" stroke="#cf142b" stroke-width="4"/>
<path d="M30,0 v30 M0,15 h60" stroke="#fff" stroke-width="10"/>
<path d="M30,0 v30 M0,15 h60" stroke="#cf142b" stroke-width="6"/>
</g>
</svg>
</svg>

After

Width:  |  Height:  |  Size: 2.1 KiB

2
static/img/flag_fr.svg Normal file
View file

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" width="900" height="600"><rect width="900" height="600" fill="#ED2939"/><rect width="600" height="600" fill="#fff"/><rect width="300" height="600" fill="#002395"/></svg>

After

Width:  |  Height:  |  Size: 249 B