Browse Source

Added image viewer

master
Chris 6 years ago
parent
commit
ca65e84af8
  1. 23
      README.md
  2. 7
      assets/simplelightbox/simple-lightbox.min.css
  3. 1
      assets/simplelightbox/simple-lightbox.min.js
  4. 72
      layouts/partials/gallary.html
  5. 1
      layouts/partials/site-footer.html
  6. 32
      layouts/posts/single.html.html

23
README.md

@ -22,22 +22,28 @@ Die Installation kann in einem beliebigen Verzeichnis erfolgen, wir nehmen ~/kre
### Hugo-Release installieren
Das aktuelles hugo-Release für seine Zielplattform findet man auf gitHub: [https://github.com/gohugoio/hugo/releases/latest].
Es wird die **Extended Version** benötigt.
Das aktuelles hugo-Release für seine Zielplattform findet man auf gitHub: [https://github.com/gohugoio/hugo/releases/latest] (die extended Version wird nicht benötigt).
Wenn das aktuelle Hugo-Relase 0.78.1 ist, gilt für Linux:
>$ wget https://github.com/gohugoio/hugo/releases/download/v0.78.1/hugo_extended_0.78.1_Linux-64bit.tar.gz
>$ wget https://github.com/gohugoio/hugo/releases/download/v0.78.1/hugo_0.78.1_Linux-64bit.tar.gz
> ...
> hugo_extended_0.78.1_Linux-64bit.tar. 100%[============================================>] 13,31M 1,54MB/s in 25s
> 2020-10-13 21:09:43 (547 KB/s) - »hugo_extended_0.78.1_Linux-64bit.tar.gz« gespeichert [13953675/13953675]
> hugo_0.78.1_Linux-64bit.tar. 100%[============================================>] 13,31M 1,54MB/s in 25s
> 2020-10-13 21:09:43 (547 KB/s) - »hugo_0.78.1_Linux-64bit.tar.gz« gespeichert [13953675/13953675]
>
>$ tar -xvf hugo_extended_0.78.1_Linux-64bit.tar.gz --directory hugo
>$ rm hugo_extended_0.78.1_Linux-64bit.tar.gz
>$ tar -xvf hugo_0.78.1_Linux-64bit.tar.gz --directory hugo
>$ rm hugo_0.78.1_Linux-64bit.tar.gz
Nach erfolgreicher Installation sollte Hugo seine Version ausgeben können:
>$ hugo/hugo version
> Hugo Static Site Generator v0.78.1-347F2DE6/extended linux/amd64 BuildDate: 2020-11-05T09:47:54Z
>Hugo Static Site Generator v0.78.1-347F2DE6 linux/amd64 BuildDate: 2020-11-05T09:39:06Z
### NPM Module
Einmaligs Setup auf dem lokalen Rechner bzw Server.
>$ npm install -g postcss postcss-cli
>$
### Web-Repository holen
@ -49,6 +55,7 @@ Das Repository wird geklont und installiert sich im Unterverzeichnis:
Als Theme wird Ananke verwendet (wurde einmalig als Submodul eingebunden mit 'git submodule add https://github.com/budparr/gohugo-theme-ananke.git themes/ananke').
### Content/Repository holen (Posts)
Für die Post-Bearbeitung und ggf. auch zur Web-Entwicklung benötigt man noch den Content. Dieses Repository wird neben das Web-Repository installiert:

7
assets/simplelightbox/simple-lightbox.min.css vendored

@ -0,0 +1,7 @@
/*!
By André Rinas, www.andrerinas.de
Documentation, www.simplelightbox.de
Available for use under the MIT License
Version 2.6.0
*/
body.hidden-scroll{overflow:hidden}.sl-overlay{position:fixed;left:0;right:0;top:0;bottom:0;background:#fff;opacity:.7;display:none;z-index:1035}.sl-wrapper{z-index:1040;width:100%;height:100%;left:0;top:0;position:fixed}.sl-wrapper *{box-sizing:border-box}.sl-wrapper button{border:0 none;background:transparent;font-size:28px;padding:0;cursor:pointer}.sl-wrapper button:hover{opacity:0.7}.sl-wrapper .sl-close{display:none;position:fixed;right:30px;top:30px;z-index:10060;margin-top:-14px;margin-right:-14px;height:44px;width:44px;line-height:44px;font-family:Arial,Baskerville,monospace;color:#000;font-size:3rem}.sl-wrapper .sl-counter{display:none;position:fixed;top:30px;left:30px;z-index:1060;color:#000;font-size:1rem}.sl-wrapper .sl-navigation{width:100%;display:none}.sl-wrapper .sl-navigation button{position:fixed;top:50%;margin-top:-22px;height:44px;width:22px;line-height:44px;text-align:center;display:block;z-index:10060;font-family:Arial,Baskerville,monospace;color:#000}.sl-wrapper .sl-navigation button.sl-next{right:5px;font-size:2rem}.sl-wrapper .sl-navigation button.sl-prev{left:5px;font-size:2rem}@media (min-width: 35.5em){.sl-wrapper .sl-navigation button{width:44px}.sl-wrapper .sl-navigation button.sl-next{right:10px;font-size:3rem}.sl-wrapper .sl-navigation button.sl-prev{left:10px;font-size:3rem}}@media (min-width: 50em){.sl-wrapper .sl-navigation button{width:44px}.sl-wrapper .sl-navigation button.sl-next{right:20px;font-size:3rem}.sl-wrapper .sl-navigation button.sl-prev{left:20px;font-size:3rem}}.sl-wrapper.sl-dir-rtl .sl-navigation{direction:ltr}.sl-wrapper .sl-image{position:fixed;-ms-touch-action:none;touch-action:none;z-index:10000}.sl-wrapper .sl-image img{margin:0;padding:0;display:block;border:0 none;width:100%;height:auto}@media (min-width: 35.5em){.sl-wrapper .sl-image img{border:0 none}}@media (min-width: 50em){.sl-wrapper .sl-image img{border:0 none}}.sl-wrapper .sl-image iframe{background:#000;border:0 none}@media (min-width: 35.5em){.sl-wrapper .sl-image iframe{border:0 none}}@media (min-width: 50em){.sl-wrapper .sl-image iframe{border:0 none}}.sl-wrapper .sl-image .sl-caption{display:none;padding:10px;color:#fff;background:rgba(0,0,0,0.8);font-size:1rem;position:absolute;bottom:0;left:0;right:0}.sl-wrapper .sl-image .sl-caption.pos-top{bottom:auto;top:0}.sl-wrapper .sl-image .sl-caption.pos-outside{bottom:auto}.sl-wrapper .sl-image .sl-download{display:none;position:absolute;bottom:5px;right:5px;color:#000;z-index:1060}.sl-spinner{display:none;border:5px solid #333;border-radius:40px;height:40px;left:50%;margin:-20px 0 0 -20px;opacity:0;position:fixed;top:50%;width:40px;z-index:1007;-webkit-animation:pulsate 1s ease-out infinite;-moz-animation:pulsate 1s ease-out infinite;-ms-animation:pulsate 1s ease-out infinite;-o-animation:pulsate 1s ease-out infinite;animation:pulsate 1s ease-out infinite}.sl-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}.sl-transition{transition:-moz-transform ease 200ms;transition:-ms-transform ease 200ms;transition:-o-transform ease 200ms;transition:-webkit-transform ease 200ms;transition:transform ease 200ms}@-webkit-keyframes pulsate{0%{transform:scale(0.1);opacity:0.0}50%{opacity:1}100%{transform:scale(1.2);opacity:0}}@keyframes pulsate{0%{transform:scale(0.1);opacity:0.0}50%{opacity:1}100%{transform:scale(1.2);opacity:0}}@-moz-keyframes pulsate{0%{transform:scale(0.1);opacity:0.0}50%{opacity:1}100%{transform:scale(1.2);opacity:0}}@-o-keyframes pulsate{0%{transform:scale(0.1);opacity:0.0}50%{opacity:1}100%{transform:scale(1.2);opacity:0}}@-ms-keyframes pulsate{0%{transform:scale(0.1);opacity:0.0}50%{opacity:1}100%{transform:scale(1.2);opacity:0}}

1
assets/simplelightbox/simple-lightbox.min.js vendored

File diff suppressed because one or more lines are too long

72
layouts/partials/gallary.html

@ -0,0 +1,72 @@
{{ $style := resources.Get "simplelightbox/simple-lightbox.min.css" }}
<link rel="stylesheet" href="{{ $style.Permalink }}">
<style>
* {
box-sizing: border-box;
}
.container .gallery a img {
float: left;
width: 10%;
height: auto;
border: 2px solid #fff;
-webkit-transition: -webkit-transform .15s ease;
-moz-transition: -moz-transform .15s ease;
-o-transition: -o-transform .15s ease;
-ms-transition: -ms-transform .15s ease;
transition: transform .15s ease;
position: relative;
}
.clear {
clear: both;
}
a {
color: #009688;
text-decoration: none;
}
a:hover {
color: #01695f;
text-decoration: none;
}
</style>
<div class="container">
<h1 class="f2">
Bilder des Tages
</h1>
<div class="gallery">
{{ $page := . }}
{{ with .Resources.Match "images/*" }}
{{ range . }}
{{ $gallary_img := .Fill "300x300" }}
{{ $text := "" }}
{{ if isset $page.Params "captions" }}
{{ range first 1 (where $page.Params.captions "name" .Name) }}
{{ $text = .text }}
{{ end }}
{{ end }}
<a href="{{.Permalink}}">
<img style="max-width: 100%; width: auto; height: auto;" src="{{ $gallary_img.RelPermalink }}"
width="{{ .Width }}" height="{{ .Height }}" alt="{{ .Title }}" title={{ $text }}>
</a>
{{ end }}
{{ end }}
<div class="clear"></div>
</div>
</div>
{{ $js := resources.Get "simplelightbox/simple-lightbox.min.js" }}
<script src="{{ $js.Permalink }}"></script>
<script>
(function() {
var $gallery = new SimpleLightbox('.gallery a', {});
})();
</script>

1
layouts/partials/site-footer.html

@ -3,7 +3,6 @@
<a class="f4 fw4 hover-white no-underline white-70 dn dib-ns pv2 ph3" href="{{ .Site.BaseURL }}" >
&copy; {{ with .Site.Copyright | default .Site.Title }} {{ . | safeHTML }} {{ now.Format "2006"}} {{ end }}
</a>
<div class="white-40 pv2">Generiert am {{ .PublishDate.Format "2.1.2006 15:04:05" }}</div>
<div>{{ partial "social-follow.html" . }}</div>
</div>

32
layouts/posts/single.html.html

@ -1,11 +1,10 @@
{{ define "header" }}{{ partial "page-header.html" . }}{{ end }}
{{ define "header" }}{{ partial "page-header.html" . }}{{ end }}
{{ define "main" }}
{{ partial "navigation-bar.html" ( dict "context" . "items" (slice "/" ) )}}
<div class="flex-l mt2 mw8 center">
<article class="center cf pv5 ph3 ph4-ns mw7">
<article class="center cf pv5 ph3 ph4-ns">
<header>
<div class="flex justify-between">
<div class=" w-50 ">
@ -16,7 +15,7 @@
{{ partial "formatted-date.html" . }}
</div>
</div>
</header>
</header>
{{/* Show facts, if available */}}
<div class="nested-copy-line-height lh-copy f4 nested-links nested-img mid-gray">
@ -72,34 +71,13 @@
{{ .Content }}
</div>
{{ partial "gallary.html" . }}
<h1 class="f2">
Bilder des Tages
</h1>
{{ $page := .}}
{{ with .Resources.Match "images/*" }}
{{ range . }}
{{ $gallary_img := .Resize "600x" }}
<div class="pv4 b--black-10 ph3 ph0-l">
<a href="{{.Permalink}}" class="db ">
<img style="max-width: 100%; width: auto; height: auto;" src="{{ $gallary_img.RelPermalink }}"
width="{{ .Width }}" height="{{ .Height }}" alt="{{ .Title }}" >
</a>
{{ if isset $page.Params "captions" }}
{{ range first 1 (where $page.Params.captions "name" .Name) }}
{{ .text }}
{{ end }}
{{ end }}
</div>
{{ end }}
{{ end }}
</div>
<hr>
{{ partial "social-activity.html" . }}
</article>
</div>

Loading…
Cancel
Save