- Umstellung auf VenoBox v2 (tlw. #222)

- Entfernung PhotoSwipe
- Gallery-Shortcode nun einzeilig
- Einführung Image-Shortcode
This commit is contained in:
2023-04-04 13:22:45 +02:00
parent 799acd03a9
commit b4ce23170a
225 changed files with 410 additions and 755 deletions

View File

@ -542,7 +542,7 @@ collections:
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.webp"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown", required: false}
- name: "pages"
icon: "page-add"
@ -561,7 +561,7 @@ collections:
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Type", name: "type", widget: "hidden", default: "pages"}
- {label: "Layout", name: "layout", widget: "hidden", default: "single.html"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- label: "Aliase"
name: "aliases"
widget: "list"
@ -668,7 +668,7 @@ collections:
name: "tag"
widget: "string"
- {label: "Type", name: "type", widget: "hidden", default: "post"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "forms"
icon: "document"
@ -696,7 +696,7 @@ collections:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Datei", name: "link", widget: "file"}
- {label: "Type", name: "type", widget: "hidden", default: "forms"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "cantorpreis"
icon: "award"
@ -745,7 +745,7 @@ collections:
- { label: "Sonstige", value: "mdi mdi-share-variant-outline" }
- {label: "Link", name: "link", widget: "string"}
- {label: "Type", name: "type", widget: "hidden", default: "cantorpreis"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown", required: false}
- name: "ganztagsangebote"
icon: "group"
@ -781,7 +781,7 @@ collections:
- {label: "Raum", name: "room", widget: "string"}
- {label: "Anmeldelink", name: "apply_url", widget: "hidden", default: "https://moodle.bildung-lsa.de/gcg/mod/choice/view.php?id=828"}
- {label: "Type", name: "type", widget: "hidden", default: "ganztagsangebote"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "wettbewerbe"
icon: "trophy"
@ -814,7 +814,7 @@ collections:
- {label: "Klassenstufen", name: "class", widget: "string"}
- {label: "Website", name: "web_url", widget: "string", required: false}
- {label: "Type", name: "type", widget: "hidden", default: "wettbewerbe"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "begabte"
icon: "pi"
@ -846,7 +846,7 @@ collections:
- {label: "Klassenstufen", name: "class", widget: "string"}
- {label: "Website", name: "web_url", widget: "string", required: false}
- {label: "Type", name: "type", widget: "hidden", default: "begabte"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "projektwoche"
icon: "projektwoche"
@ -865,7 +865,7 @@ collections:
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.webp"}
- {label: "Type", name: "type", widget: "hidden", default: "projektwoche"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: true, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- label: "Kacheln"
name: "tiles"
widget: "list"
@ -901,7 +901,7 @@ collections:
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Inhalt", name: "content", widget: "markdown", required: true}
required: false
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: true, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown", required: false, default: ""}
- name: "abiturienten"
icon: "graduation-cap"
@ -921,7 +921,7 @@ collections:
- {label: "Bild", name: "image", widget: "image", default: "/media/abiturienten/image.webp", required: false, media_library: { config: { max_file_size: 2048000 } } }
- {label: "Mehrere Bilder", name: "multiple", widget: "boolean", default: false, required: false}
- {label: "Type", name: "type", widget: "hidden", default: "abiturienten"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: true, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "cantorfora"
icon: "presentation"
@ -952,5 +952,5 @@ collections:
- {label: "Metabeschreibung", name: "description", widget: "text", default: "", required: false}
- {label: "Beitragsbild", name: "image", widget: "image", default: "/media/image.webp", media_library: { config: { max_file_size: 2048000 } } }
- {label: "Type", name: "type", widget: "hidden", default: "cantorfora"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: true, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown"}

View File

@ -51,9 +51,9 @@
</script>
<script>
CMS.registerShortcode('gallery', {
label: 'Gallery',
label: 'Bildergallerie',
openTag: '{{< ',
closeTag: ' />}}',
closeTag: ' >}}',
separator: ' ',
toProps: args => {
if (args.length > 0) {

View File

@ -1,158 +0,0 @@
/*
Put this file in /static/css/hugo-easy-gallery.css
Documentation and licence at https://github.com/liwenyip/hugo-easy-gallery/
*/
/*
Grid Layout Styles
*/
.gallery {
overflow: hidden;
margin: 10px;
max-width: 768px;
}
.gallery .box {
float: left;
position: relative;
/* Default: 1 tile wide */
width: 100%;
padding-bottom: 100%;
}
@media only screen and (min-width : 365px) {
/* Tablet view: 2 tiles */
.gallery .box {
width: 50%;
padding-bottom: 50%;
}
}
@media only screen and (min-width : 480px) {
/* Small desktop / ipad view: 3 tiles */
.gallery .box {
width: 33.3%;
padding-bottom: 33.3%; /* */
}
}
@media only screen and (min-width : 9999px) {
/* Medium desktop: 4 tiles */
.box {
width: 25%;
padding-bottom: 25%;
}
}
/*
Transition styles
*/
.gallery.hover-transition figure,
.gallery.hover-effect-zoom .img,
.gallery:not(.caption-effect-appear) figcaption,
.fancy-figure:not(.caption-effect-appear) figcaption {
-webkit-transition: all 0.3s ease-in-out;
-moz-transition: all 0.3s ease-in-out;
-o-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
/*
figure styles
*/
figure {
position:relative; /* purely to allow absolution positioning of figcaption */
overflow: hidden;
}
.gallery figure {
position: absolute;
left: 5px;
right: 5px;
top: 5px;
bottom: 5px;
}
.gallery.hover-effect-grow figure:hover {
transform: scale(1.05);
}
.gallery.hover-effect-shrink figure:hover {
transform: scale(0.95);
}
.gallery.hover-effect-slidedown figure:hover {
transform: translateY(5px);
}
.gallery.hover-effect-slideup figure:hover {
transform: translateY(-5px);
}
/*
img / a styles
*/
.gallery .img {
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
background-size: cover;
background-position: 50% 50%;
background-repeat: no-repeat;
}
.gallery.hover-effect-zoom figure:hover .img {
transform: scale(1.05);
}
.gallery img {
display: none; /* only show the img if not inside a gallery */
}
figure a {
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
}
/*
figcaption styles
*/
.gallery figcaption,
.fancy-figure figcaption {
position: absolute;
bottom: 0;
left: 0;
right: 0;
background: #000;
color: #FFF;
text-align: center;
font-size: 75%; /* change this if you want bigger text */
background: rgba(0, 0, 0, 0.5);
opacity: 0;
cursor: pointer;
}
.gallery.caption-position-none figcaption,
.fancy-figure.caption-position-none figcaption {
display: none;
}
.gallery.caption-position-center figcaption,
.fancy-figure.caption-position-center figcaption {
top: 0;
padding: 40% 5px;
}
.gallery.caption-position-bottom figcaption,
.fancy-figure.caption-position-bottom figcaption {
padding: 5px;
}
.gallery.caption-effect-fade figure:not(:hover) figcaption,
.gallery.caption-effect-appear figure:not(:hover) figcaption,
.fancy-figure.caption-effect-fade figure:not(:hover) figcaption,
.fancy-figure.caption-effect-appear figure:not(:hover) figcaption {
background: rgba(0, 0, 0, 0);
opacity: 0;
}
.gallery.caption-effect-slide.caption-position-bottom figure:not(:hover) figcaption,
.fancy-figure.caption-effect-slide.caption-position-bottom figure:not(:hover) figcaption {
margin-bottom: -100%;
}
.gallery.caption-effect-slide.caption-position-center figure:not(:hover) figcaption,
.fancy-figure.caption-effect-slide.caption-position-center figure:not(:hover) figcaption {
top: 100%;
}
figcaption p {
margin: auto; /* override style in theme */
}

View File

@ -1,79 +0,0 @@
/*
Put this file in /static/js/load-photoswipe.js
Documentation and licence at https://github.com/liwenyip/hugo-easy-gallery/
*/
/* Show an alert if this js file has been loaded twice */
if (window.loadphotoswipejs) {
window.alert("You've loaded load-photoswipe.js twice. See https://github.com/liwenyip/hugo-easy-gallery/issues/6")
}
var loadphotoswipejs = 1
/* TODO: Make the share function work */
$( document ).ready(function() {
/*
Initialise Photoswipe
*/
var items = []; // array of slide objects that will be passed to PhotoSwipe()
// for every figure element on the page:
$('figure').each( function() {
if ($(this).attr('class') == 'no-photoswipe') return true; // ignore any figures where class="no-photoswipe"
// get properties from child a/img/figcaption elements,
var $figure = $(this),
$a = $figure.find('a'),
$img = $figure.find('img'),
$src = $a.attr('href'),
$title = $img.attr('alt'),
$msrc = $img.attr('src');
// if data-size on <a> tag is set, read it and create an item
if ($a.data('size')) {
var $size = $a.data('size').split('x');
var item = {
src : $src,
w : $size[0],
h : $size[1],
title : $title,
msrc : $msrc
};
// if not, set temp default size then load the image to check actual size
} else {
var item = {
src : $src,
w : 800, // temp default size
h : 600, // temp default size
title : $title,
msrc : $msrc
};
// load the image to check its dimensions
// update the item as soon as w and h are known (check every 30ms)
var img = new Image();
img.src = $src;
var wait = setInterval(function() {
var w = img.naturalWidth,
h = img.naturalHeight;
if (w && h) {
clearInterval(wait);
item.w = w;
item.h = h;
// console.log("Got actual dimensions for " + img.src);
}
}, 30);
}
// Save the index of this image then add it to the array
var index = items.length;
items.push(item);
// Event handler for click on a figure
$figure.on('click', function(event) {
event.preventDefault(); // prevent the normal behaviour i.e. load the <a> hyperlink
// Get the PSWP element and initialise it with the desired options
var $pswp = $('.pswp')[0];
var options = {
index: index,
bgOpacity: 0.9,
showHideOpacity: true,
loop: false,
}
new PhotoSwipe($pswp, PhotoSwipeUI_Default, items, options).init();
});
});
});

View File

@ -58,7 +58,7 @@ collections:
- {label: "Inaktiv", name: "draft", widget: "boolean", default: false, required: false, hint: "Diese Einstellung deaktiviert den Bereich auf der Website."}
- {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.webp"}
- {label: "Einleitung", name: "description", widget: "text", required: false}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown", required: false}
- name: "chronikseiten"
icon: "page-add"
@ -77,7 +77,7 @@ collections:
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Type", name: "type", widget: "hidden", default: "pages"}
- {label: "Layout", name: "layout", widget: "hidden", default: "single.html"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- label: "Aliase"
name: "aliases"
widget: "list"
@ -165,7 +165,7 @@ collections:
- { label: "Sonstige", value: "mdi mdi-share-variant-outline" }
- {label: "Link", name: "link", widget: "string"}
- {label: "Type", name: "type", widget: "hidden", default: "cantorpreis"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: false, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown", required: false}
- name: "superhaufen"
icon: "superhaufen"
@ -183,7 +183,7 @@ collections:
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.webp"}
- {label: "Type", name: "type", widget: "hidden", default: "superhaufen"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: true, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- label: "Rückverlinkung"
name: "previous"
widget: "object"
@ -253,7 +253,7 @@ collections:
search_fields: ["jahr", "name"]
value_field: "name"
required: false
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: true, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown", required: false, default: ""}
- name: "abiturienten"
icon: "graduation-cap"
@ -273,7 +273,7 @@ collections:
- {label: "Bild", name: "image", widget: "image", default: "/media/abiturienten/image.webp", required: false, media_library: { config: { max_file_size: 2048000 } } }
- {label: "Mehrere Bilder", name: "multiple", widget: "boolean", default: false, required: false}
- {label: "Type", name: "type", widget: "hidden", default: "abiturienten"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: true, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "cantorfora"
icon: "presentation"
@ -304,5 +304,5 @@ collections:
- {label: "Metabeschreibung", name: "description", widget: "text", default: "", required: false}
- {label: "Beitragsbild", name: "image", widget: "image", default: "/media/image.webp", media_library: { config: { max_file_size: 2048000 } } }
- {label: "Type", name: "type", widget: "hidden", default: "cantorfora"}
- {label: "Gallerie-Komponente", name: "gallery", widget: "boolean", default: true, required: false, hint: "Benötigt für Gallerie bzw. Bildeinbettung"}
- {label: "Text", name: "body", widget: "markdown"}

View File

@ -38,9 +38,9 @@
</script>
<script>
CMS.registerShortcode('gallery', {
label: 'Gallerie',
label: 'Bildergallerie',
openTag: '{{< ',
closeTag: ' />}}',
closeTag: ' >}}',
separator: ' ',
toProps: args => {
if (args.length > 0) {