initial commit
This commit is contained in:
80
Resources/Private/Partials/Image.html
Executable file
80
Resources/Private/Partials/Image.html
Executable file
@ -0,0 +1,80 @@
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" xmlns:bk2k="http://typo3.org/ns/BK2K/BootstrapPackage/ViewHelpers" data-namespace-typo3-fluid="true">
|
||||
<picture>
|
||||
<f:for each="{variants}" key="name" as="variant">
|
||||
<f:variable name="breakpoint">{variant.breakpoint as integer}</f:variable>
|
||||
<f:variable name="width">{variant.width as integer}</f:variable>
|
||||
<f:variable name="height" value="" />
|
||||
<f:if condition="{width}">
|
||||
<f:if condition="{variant.aspectRatio}">
|
||||
<f:variable name="aspectRatio">{variant.aspectRatio as float}</f:variable>
|
||||
<f:variable name="height">{width / aspectRatio}</f:variable>
|
||||
<f:variable name="height">{height as integer}</f:variable>
|
||||
</f:if>
|
||||
<f:variable name="mediaQuery">{f:if(condition: breakpoint, then: 'media="(min-width: {breakpoint}px)"')}</f:variable>
|
||||
<f:if condition="{variant.sizes}">
|
||||
<f:variable name="srcset" value="" />
|
||||
<f:for each="{variant.sizes}" key="sizeKey" as="sizeConfig" iteration="iteration">
|
||||
<f:variable name="sizeWidth">{sizeConfig.multiplier as float}</f:variable>
|
||||
<f:variable name="sizeWidth">{sizeWidth * width}</f:variable>
|
||||
<f:variable name="sizeHeight" value="" />
|
||||
<f:if condition="{height}">
|
||||
<f:then>
|
||||
<f:variable name="sizeHeight">{sizeConfig.multiplier as float}</f:variable>
|
||||
<f:variable name="sizeHeight">{sizeHeight * height}</f:variable>
|
||||
<f:variable name="sizeUrl">{f:uri.image(image: file, cropVariant: name, width: '{sizeWidth}c', height: '{sizeHeight}c',absolute:'true')}</f:variable>
|
||||
</f:then>
|
||||
<f:else>
|
||||
<f:if condition="{maxWidth} < {sizeWidth}">
|
||||
<f:then>
|
||||
<f:variable name="sizeUrl">{f:uri.image(image: file, cropVariant: 'default', width: maxWidth, absolute:'true')}</f:variable>
|
||||
</f:then>
|
||||
<f:else>
|
||||
<f:variable name="sizeUrl">{f:uri.image(image: file, cropVariant: 'default', width: sizeWidth, absolute:'true')}</f:variable>
|
||||
</f:else>
|
||||
</f:if>
|
||||
</f:else>
|
||||
</f:if>
|
||||
<f:variable name="srcset">{srcset}{sizeUrl} {sizeKey}{f:if(condition: iteration.isLast, else: ',')}</f:variable>
|
||||
</f:for>
|
||||
</f:if>
|
||||
<source data-variant="{name}" {f:if(condition: sizeHeight, then: 'data-width="{width}" data-height="{sizeHeight}"', else: 'data-maxwidth="{width}"')} {mediaQuery->f:format.raw()} srcset="{srcset}">
|
||||
</f:if>
|
||||
</f:for>
|
||||
<f:variable name="defaultWidth" value="{variants.default.width}" />
|
||||
<f:variable name="defaultAspectRatio" value="{variants.default.aspectRatio}" />
|
||||
<f:if condition="{defaultAspectRatio}">
|
||||
<f:variable name="aspectRatio">{defaultAspectRatio as float}</f:variable>
|
||||
<f:variable name="defaultHeight">{defaultWidth / aspectRatio}</f:variable>
|
||||
<f:variable name="defaultHeight">{defaultHeight as integer}c</f:variable>
|
||||
</f:if>
|
||||
|
||||
<f:if condition="{defaultHeight}">
|
||||
<f:then>
|
||||
<f:variable name="src" value="{f:uri.image(image: file, cropVariant: 'default', width: defaultWidth, height: defaultHeight, absolute:'true')}" />
|
||||
</f:then>
|
||||
<f:else>
|
||||
<f:if condition="{maxWidth}">
|
||||
<f:then>
|
||||
<f:variable name="src" value="{f:uri.image(image: file, cropVariant: 'default', width: maxWidth, absolute:'true')}" />
|
||||
</f:then>
|
||||
<f:else>
|
||||
|
||||
<f:variable name="src" value="{f:uri.image(image: file, cropVariant: 'default', width: defaultWidth, absolute:'true')}" />
|
||||
</f:else>
|
||||
</f:if>
|
||||
</f:else>
|
||||
</f:if>
|
||||
|
||||
<f:variable name="finalWidth" value="{bk2k:data.imageInfo(src: src, property: 'width')}" />
|
||||
<f:variable name="finalHeight" value="{bk2k:data.imageInfo(src: src, property: 'height')}" />
|
||||
|
||||
<f:if condition="itemprop">
|
||||
<f:then>
|
||||
<img loading="lazy" itemprop="image" src="{src}" width="{finalWidth}" height="{finalHeight}" intrinsicsize="{finalWidth}x{finalHeight}" title="{file.properties.title}" alt="{file.properties.alternative}">
|
||||
</f:then>
|
||||
<f:else>
|
||||
<img loading="lazy" src="{src}" width="{finalWidth}" height="{finalHeight}" intrinsicsize="{finalWidth}x{finalHeight}" title="{file.properties.title}" alt="{file.properties.alternative}">
|
||||
</f:else>
|
||||
</f:if>
|
||||
</picture>
|
||||
</html>
|
31
Resources/Private/Partials/Map/Controll.html
Executable file
31
Resources/Private/Partials/Map/Controll.html
Executable file
@ -0,0 +1,31 @@
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" xmlns:bk2k="http://typo3.org/ns/BK2K/BootstrapPackage/ViewHelpers" data-namespace-typo3-fluid="true">
|
||||
<f:if condition="{settings.useLayerSwitcher} === '1' && {settings.controllsPositions} === '2'">
|
||||
<input class="a2g-map-layer-swipe form-range" type="range" style="width: 100%" value="{settings.layerSwitcherValue}">
|
||||
</f:if>
|
||||
|
||||
<div class="d-flex justify-content-center">
|
||||
<f:if condition="{settings.showRemoveMarkerButton} === '1'">
|
||||
<div class="m-3 form-check form-switch">
|
||||
<input id="{mapId}-hide-marker-{settings.controllsPositions}" class="form-check-input a2g-map-marker-visible-switcher" type="checkbox">
|
||||
<label for="{mapId}-hide-marker-{settings.controllsPositions}" class="form-check-label">hide marker</label>
|
||||
</div>
|
||||
</f:if>
|
||||
<f:if condition="{settings.showMyPositionButton} === '1'">
|
||||
<div class="m-3 form-check form-switch">
|
||||
<input id="{mapId}-lacate-me-{settings.controllsPositions}" class="form-check-input a2g-map-geolocate-me" type="checkbox">
|
||||
<label for="{mapId}-hide-marker-{settings.controllsPositions}" class="form-check-label">locate me</label>
|
||||
</div>
|
||||
</f:if>
|
||||
<f:if condition="{settings.showLayerSelect} === '1' && {countMapLayers}>1">
|
||||
<div class="m-3">
|
||||
<label>Geometry type </label>
|
||||
<select class="a2g-map-layer-select">
|
||||
</select>
|
||||
</div>
|
||||
</f:if>
|
||||
</div>
|
||||
|
||||
<f:if condition="{settings.useLayerSwitcher} === '1' && ( {settings.controllsPositions} === '1' || {settings.controllsPositions} === '3'} )">
|
||||
<input class="a2g-map-layer-swipe form-range" type="range" style="width: 100%" value="{settings.layerSwitcherValue}">
|
||||
</f:if>
|
||||
</html>
|
72
Resources/Private/Partials/Map/List.html
Executable file
72
Resources/Private/Partials/Map/List.html
Executable file
@ -0,0 +1,72 @@
|
||||
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" xmlns:bk2k="http://typo3.org/ns/BK2K/BootstrapPackage/ViewHelpers" data-namespace-typo3-fluid="true">
|
||||
<bk2k:data.imageVariants as="variants" variants="{variants}" multiplier="{columnConfig.multiplier}" gutters="{columnConfig.gutters}" corrections="{columnConfig.corrections}" />
|
||||
<f:for each="{mapEntries}" iteration="it" as="mapEntriesa" key="region">
|
||||
<div class="accordion" id="a2g-maps-region-accordion"><div class="accordion-item">
|
||||
<h2 class="accordion-header" id="a2g-maps-region-accodion-{it.cycle}-heading">
|
||||
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#a2g-maps-region-accodion-{it.cycle}" aria-expanded="false" aria-controls="a2g-maps-region-accodion-{it.cycle}">
|
||||
{region}
|
||||
</button>
|
||||
</h2>
|
||||
<div id="a2g-maps-region-accodion-{it.cycle}" class="accordion-collapse collapse" aria-labelledby="a2g-maps-region-accodion-{it.cycle}-heading" data-bs-parent="#a2g-maps-region-accodion">
|
||||
|
||||
<div class="accordion-body">
|
||||
<div class="card-group-element card-group-element-align-left card-group-element-columns-3">
|
||||
|
||||
<f:for each="{mapEntriesa}" as="mapEntry">
|
||||
<div class="card-group-element-item">
|
||||
<div class="card">
|
||||
<div class="card-body">
|
||||
<div>
|
||||
<f:if condition="{mapEntry.title} !== ''">
|
||||
<f:then>
|
||||
<h4>
|
||||
{mapEntry.title}
|
||||
</h4>
|
||||
</f:then>
|
||||
</f:if>
|
||||
<div>
|
||||
<f:if condition="{mapEntry.addressline} !== ''">
|
||||
<f:then>
|
||||
{mapEntry.addressline}
|
||||
</f:then>
|
||||
</f:if>
|
||||
<f:if condition="{mapEntry.zip}">
|
||||
<f:then>
|
||||
<br/>{mapEntry.zip}
|
||||
</f:then>
|
||||
</f:if>
|
||||
<f:if condition="{mapEntry.city}">
|
||||
<f:then>
|
||||
{mapEntry.city}
|
||||
</f:then>
|
||||
</f:if>
|
||||
<f:if condition="{mapEntry.region} !== ''">
|
||||
<f:then>
|
||||
<br/>{mapEntry.region}
|
||||
</f:then>
|
||||
</f:if>
|
||||
</div>
|
||||
<f:if condition="{mapEntry.popupContent}">
|
||||
<f:then>
|
||||
<f:format.htmlentitiesDecode>
|
||||
{mapEntry.popupContent}
|
||||
</f:format.htmlentitiesDecode>
|
||||
</f:then>
|
||||
</f:if>
|
||||
<f:if condition="{mapEntry.navToUrl}">
|
||||
<f:then>
|
||||
<a href="{mapEntry.navToUrl}" target="_blank"><f:translate key="nav_me_to" default="mich navigieren"></f:translate></a>
|
||||
</f:then>
|
||||
</f:if>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</f:for>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</f:for>
|
||||
</html>
|
Reference in New Issue
Block a user