fix gallery lib
This commit is contained in:
		| @@ -65,16 +65,4 @@ | ||||
| {{ end }} | ||||
|  | ||||
| {{ $script := resources.Get "js/script.js" | minify}} | ||||
| <script src="{{ $script.Permalink }}"></script> | ||||
|  | ||||
| {{ if ($.Scratch.Get "photoswipeloaded") }} | ||||
| <script src="/js/load-photoswipe.js"></script> | ||||
| 	{{ if .Site.Params.CDNJS }} | ||||
| 		<script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe.min.js" integrity="sha256-ePwmChbbvXbsO02lbM3HoHbSHTHFAeChekF1xKJdleo=" crossorigin="anonymous"></script> | ||||
| 		<script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe-ui-default.min.js" integrity="sha256-UKkzOn/w1mBxRmLLGrSeyB4e1xbrp4xylgAWb3M42pU=" crossorigin="anonymous"></script> | ||||
| 	{{- else -}} | ||||
| 		<script src="{{ "/js/3p/photoswipe.min@4.1.3.js" | relURL }}"></script> | ||||
| 		<script src="{{ "/js/3p/photoswipe-ui-default.min@4.1.3.js" | relURL }}"></script> | ||||
| 	{{ end }} | ||||
|  | ||||
| {{ end }} | ||||
| <script src="{{ $script.Permalink }}"></script> | ||||
| @@ -26,4 +26,4 @@ Documentation and licence at https://github.com/liwenyip/hugo-easy-gallery/ | ||||
|       </figcaption> | ||||
|     {{- end }} | ||||
|   </figure> | ||||
| </div> | ||||
| </div> | ||||
| @@ -3,62 +3,39 @@ Put this file in /layouts/shortcodes/gallery.html | ||||
| Documentation and licence at https://github.com/liwenyip/hugo-easy-gallery/ | ||||
| --> | ||||
| <!-- count how many times we've called this shortcode; load the css if it's the first time --> | ||||
| {{- if not ($.Page.Scratch.Get "figurecount") }}<link rel="stylesheet" href="{{ relURL "/css/hugo-easy-gallery.css" }}" />{{ end }} | ||||
| {{- if not ($.Page.Scratch.Get "figurecount") }}<link rel="stylesheet" href={{ "css/hugo-easy-gallery.css" | relURL }} />{{ end }} | ||||
| {{- $.Page.Scratch.Add "figurecount" 1 }} | ||||
| {{ $baseURL := .Site.BaseURL }} | ||||
| {{- $thumbnailSize := .Get "thumbnail-size" | default "300x300" -}} | ||||
| <div class="gallery caption-position-{{ with .Get "caption-position" | default "bottom" }}{{.}}{{end}} caption-effect-{{ with .Get "caption-effect" | default "slide" }}{{.}}{{end}} hover-effect-{{ with .Get "hover-effect" | default "zoom" }}{{.}}{{end}} {{ if ne (.Get "hover-transition") "none" }}hover-transition{{end}}" itemscope itemtype="http://schema.org/ImageGallery"> | ||||
|   {{- with (.Get "dir") -}} | ||||
|     <!-- If a directory was specified, generate figures for all of the images in the directory --> | ||||
|     {{- $files := readDir (print "/static/" .) }} | ||||
|     {{- range $files -}} | ||||
|       <!-- skip files that aren't images, or that inlcude the thumb suffix in their name --> | ||||
|       {{- $thumbext := $.Get "thumb" | default "-thumb" }} | ||||
|       {{- $isthumb := .Name | findRE ($thumbext | printf "%s\\.") }}<!-- is the current file a thumbnail image? --> | ||||
| 	  {{- $isimg := lower .Name | findRE "\\.(gif|jpg|jpeg|tiff|png|bmp|webp|avif|jxl)" }}<!-- is the current file an image? --> | ||||
|       {{- if and $isimg (not $isthumb) }} | ||||
|         {{- $caption :=  .Name | replaceRE "\\..*" "" | humanize }}<!-- humanized filename without extension --> | ||||
|         {{- $linkURL := print $baseURL ($.Get "dir") "/" .Name | absURL }}<!-- absolute URL to hi-res image --> | ||||
|         {{- $filetype := index (findRE "[^.]+$" .Name ) 0 }}<!-- file extension of image --> | ||||
| 		{{- $thumb := .Name | replaceRE "(\\.)" ($thumbext | printf "%s.") }}<!-- filename of thumbnail image --> | ||||
|         {{- $thumbexists := where $files "Name" $thumb }}<!-- does a thumbnail image exist? --> | ||||
|         {{- $thumbURL := print $baseURL ($.Get "dir") "/" $thumb | absURL }}<!-- absolute URL to thumbnail image --> | ||||
|         <div class="box"> | ||||
|           <figure itemprop="associatedMedia" itemscope itemtype="http://schema.org/ImageObject"> | ||||
|             <div class="img" style="background-image: url('{{ if $thumbexists }}{{ $thumbURL }}{{ else }}{{ $linkURL }}{{ end }}');" > | ||||
|               <img itemprop="thumbnail" src="{{ if $thumbexists }}{{ $thumbURL }}{{ else }}{{ $linkURL }}{{ end }}" alt="{{ $caption }}" /><!-- <img> hidden if in .gallery --> | ||||
|             </div> | ||||
|             <!-- <figcaption> | ||||
|               <p>{{ $caption }}</p> | ||||
|             </figcaption> --> | ||||
|             <a href="{{ $linkURL }}" itemprop="contentUrl"></a><!-- put <a> last so it is stacked on top --> | ||||
|           </figure> | ||||
|         </div> | ||||
|       {{- end }} | ||||
|     {{- end }} | ||||
|   {{- else -}} | ||||
| 		{{ with .Inner -}} | ||||
| 			<!-- If no directory was specified, include any figure shortcodes called within the gallery --> | ||||
| 			{{ . }} | ||||
| 		{{- else }} | ||||
| 			<!-- Generate figures for all page resources of type image. --> | ||||
| 			{{- range $.Page.Resources.ByType "image" -}} | ||||
|  | ||||
| 				{{- $thumbnail := .Fill $thumbnailSize -}} | ||||
| 	{{- with (.Get "dir") -}} | ||||
| 		<!-- If a directory was specified, generate figures for all of the images in the directory --> | ||||
| 		{{- $files := readDir (print "/static/" .) }} | ||||
| 		{{- range $files -}} | ||||
| 			<!-- skip files that aren't images, or that include the thumb suffix in their name --> | ||||
| 			{{- $thumbext := $.Get "thumb" | default "-thumb" }} | ||||
| 			{{- $isthumb := .Name | findRE ($thumbext | printf "%s\\.") }}<!-- is the current file a thumbnail image? --> | ||||
| 			{{- $isimg := lower .Name | findRE "\\.(gif|jpg|jpeg|tiff|png|bmp|webp|avif|jxl)" }}<!-- is the current file an image? --> | ||||
| 			{{- if and $isimg (not $isthumb) }} | ||||
| 				{{- $caption :=  .Name | replaceRE "\\..*" "" | humanize }}<!-- humanized filename without extension --> | ||||
| 				{{- $linkURL := print $baseURL ($.Get "dir") "/" .Name | absURL }}<!-- absolute URL to hi-res image --> | ||||
| 				{{- $thumb := .Name | replaceRE "(\\.)" ($thumbext | printf "%s.") }}<!-- filename of thumbnail image --> | ||||
| 				{{- $thumbexists := where $files "Name" $thumb }}<!-- does a thumbnail image exist? -->  | ||||
| 				{{- $thumbURL := print $baseURL ($.Get "dir") "/" $thumb | absURL }}<!-- absolute URL to thumbnail image --> | ||||
| 				<div class="box"> | ||||
| 					<figure itemprop="associatedMedia" itemscope itemtype="http://schema.org/ImageObject"> | ||||
| 						<div class="img" style="background-image: url('{{ $thumbnail.RelPermalink }}');" > | ||||
| 							<img itemprop="thumbnail" src="{{ $thumbnail.RelPermalink }}" width="{{ $thumbnail.Width }}" height="{{ $thumbnail.Height }}" alt="{{ .Title }}" /><!-- <img> hidden if in .gallery --> | ||||
| 						</div> | ||||
| 						{{- with .Title -}} | ||||
| 						<!-- <figcaption> | ||||
| 							<p>{{ . }}</p> | ||||
| 						</figcaption> --> | ||||
| 						{{- end -}} | ||||
| 						<a href="{{ .RelPermalink }}" itemprop="contentUrl"></a><!-- put <a> last so it is stacked on top --> | ||||
| 					</figure> | ||||
| 				  <figure itemprop="associatedMedia" itemscope itemtype="http://schema.org/ImageObject"> | ||||
| 				    <div class="img" style="background-image: url('{{ if $thumbexists }}{{ $thumbURL }}{{ else }}{{ $linkURL }}{{ end }}');" > | ||||
| 				      <img itemprop="thumbnail" src="{{ if $thumbexists }}{{ $thumbURL }}{{ else }}{{ $linkURL }}{{ end }}" alt="{{ $caption }}" /><!-- <img> hidden if in .gallery --> | ||||
| 				    </div> | ||||
| 			      <figcaption> | ||||
| 		          <p>{{ $caption }}</p> | ||||
| 			      </figcaption> | ||||
| 				    <a href="{{ $linkURL }}" itemprop="contentUrl"></a><!-- put <a> last so it is stacked on top --> | ||||
| 				  </figure> | ||||
| 				</div> | ||||
| 			{{- end }} | ||||
| 		{{- end }} | ||||
| 	{{- else -}} | ||||
| 		<!-- If no directory was specified, include any figure shortcodes called within the gallery --> | ||||
| 	  {{ .Inner }} | ||||
| 	{{- end }} | ||||
| </div> | ||||
| </div> | ||||
| @@ -1,76 +0,0 @@ | ||||
| <!-- | ||||
| Put this file in /layouts/shortcodes/load-photoswipe.html | ||||
| Documentation and licence at https://github.com/liwenyip/hugo-easy-gallery/ | ||||
| --> | ||||
|  | ||||
| <!-- prevent this shortcode from being loaded more than once per page --> | ||||
| {{ if not ($.Page.Scratch.Get "photoswipeloaded") }} | ||||
|   {{ $.Page.Scratch.Set "photoswipeloaded" 1 }} | ||||
|  | ||||
| <!-- | ||||
| *** jQuery must be loaded before load-photoswipe.js *** | ||||
| - If your template already loads jQuery in the header then you don't need to load it again here. | ||||
| - If your template already loads jQuery in the footer, then you could load load-photoswipe.js from the footer instead | ||||
| --> | ||||
| <!-- these files are loaded in the theme footer | ||||
| <script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script> | ||||
| <script src="/js/load-photoswipe.js"></script> | ||||
| --> | ||||
|  | ||||
| <!-- Photoswipe css/js libraries --> | ||||
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.1/photoswipe.min.css" integrity="sha256-sCl5PUOGMLfFYctzDW3MtRib0ctyUvI9Qsmq2wXOeBY=" crossorigin="anonymous" /> | ||||
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.1/default-skin/default-skin.min.css" integrity="sha256-BFeI1V+Vh1Rk37wswuOYn5lsTcaU96hGaI7OUVCLjPc=" crossorigin="anonymous" /> | ||||
|  | ||||
| <!-- these files are loaded in the theme footer | ||||
| <script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.1/photoswipe.min.js" integrity="sha256-UplRCs9v4KXVJvVY+p+RSo5Q4ilAUXh7kpjyIP5odyc=" crossorigin="anonymous"></script> | ||||
| <script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.1/photoswipe-ui-default.min.js" integrity="sha256-PWHOlUzc96pMc8ThwRIXPn8yH4NOLu42RQ0b9SpnpFk=" crossorigin="anonymous"></script> | ||||
| --> | ||||
|  | ||||
| <!-- Root element of PhotoSwipe. Must have class pswp. --> | ||||
| <div class="pswp" tabindex="-1" role="dialog" aria-hidden="true"> | ||||
| <!-- Background of PhotoSwipe. | ||||
|      It's a separate element, as animating opacity is faster than rgba(). --> | ||||
| <div class="pswp__bg"></div> | ||||
| <!-- Slides wrapper with overflow:hidden. --> | ||||
| <div class="pswp__scroll-wrap"> | ||||
|     <!-- Container that holds slides. | ||||
|       PhotoSwipe keeps only 3 of them in DOM to save memory. | ||||
|       Don't modify these 3 pswp__item elements, data is added later on. --> | ||||
|     <div class="pswp__container"> | ||||
|       <div class="pswp__item"></div> | ||||
|       <div class="pswp__item"></div> | ||||
|       <div class="pswp__item"></div> | ||||
|     </div> | ||||
|     <!-- Default (PhotoSwipeUI_Default) interface on top of sliding area. Can be changed. --> | ||||
|     <div class="pswp__ui pswp__ui--hidden"> | ||||
|     <div class="pswp__top-bar"> | ||||
|       <!--  Controls are self-explanatory. Order can be changed. --> | ||||
|       <div class="pswp__counter"></div> | ||||
|       <button class="pswp__button pswp__button--close" title="Close (Esc)"></button> | ||||
|       <button class="pswp__button pswp__button--share" title="Share"></button> | ||||
|       <button class="pswp__button pswp__button--fs" title="Toggle fullscreen"></button> | ||||
|       <button class="pswp__button pswp__button--zoom" title="Zoom in/out"></button> | ||||
|       <!-- Preloader demo http://codepen.io/dimsemenov/pen/yyBWoR --> | ||||
|       <!-- element will get class pswp__preloader--active when preloader is running --> | ||||
|       <div class="pswp__preloader"> | ||||
|         <div class="pswp__preloader__icn"> | ||||
|           <div class="pswp__preloader__cut"> | ||||
|             <div class="pswp__preloader__donut"></div> | ||||
|           </div> | ||||
|         </div> | ||||
|       </div> | ||||
|     </div> | ||||
|     <div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap"> | ||||
|       <div class="pswp__share-tooltip"></div> | ||||
|     </div> | ||||
|     <button class="pswp__button pswp__button--arrow--left" title="Previous (arrow left)"> | ||||
|     </button> | ||||
|     <button class="pswp__button pswp__button--arrow--right" title="Next (arrow right)"> | ||||
|     </button> | ||||
|     <div class="pswp__caption"> | ||||
|       <div class="pswp__caption__center"></div> | ||||
|     </div> | ||||
|     </div> | ||||
|     </div> | ||||
| </div> | ||||
| {{ end }} | ||||
| @@ -7,29 +7,19 @@ Documentation and licence at https://github.com/liwenyip/hugo-easy-gallery/ | ||||
| {{ if not ($.Page.Scratch.Get "photoswipeloaded") }} | ||||
|   {{ $.Page.Scratch.Set "photoswipeloaded" 1 }} | ||||
|  | ||||
| <script src="/js/load-photoswipe.js"></script> | ||||
| <!-- | ||||
| *** jQuery must be loaded before load-photoswipe.js *** | ||||
| - If your template already loads jQuery in the header then you don't need to load it again here. | ||||
| - If your template already loads jQuery in the footer, then you could load load-photoswipe.js from the footer instead | ||||
| --> | ||||
| <script src="https://code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script> | ||||
| <script src={{ "js/load-photoswipe.js" | relURL }}></script> | ||||
|  | ||||
| <!-- Photoswipe css/js libraries --> | ||||
| {{ if .Site.Params.CDNJS }} | ||||
|   <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe.min.css" integrity="sha256-LWdHSKWG7zv3DTpee8YAgoTfkj3gNkfauF624h4P2Nw=" crossorigin="anonymous" /> | ||||
|   <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/default-skin/default-skin.min.css" iintegrity="sha256-Q9bBMw/rHRRag46GDWY84J3elDNc8JJjKXL9tIC4oe8=" crossorigin="anonymous" /> | ||||
|   <script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe.min.js" integrity="sha256-ePwmChbbvXbsO02lbM3HoHbSHTHFAeChekF1xKJdleo=" crossorigin="anonymous"></script> | ||||
|   <script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe-ui-default.min.js" integrity="sha256-UKkzOn/w1mBxRmLLGrSeyB4e1xbrp4xylgAWb3M42pU=" crossorigin="anonymous"></script> | ||||
| {{- else -}} | ||||
|   <link rel="stylesheet" href="{{ "/css/3p/photoswipe.min@4.1.3.css" | relURL }}"></script> | ||||
|   <link rel="stylesheet" href="{{ "/css/3p/default-skin/default-skin.min@4.1.3.css" | relURL }}"></script> | ||||
|   <script src="{{ "/js/3p/photoswipe.min@4.1.3.js" | relURL }}"></script> | ||||
|   <script src="{{ "/js/3p/photoswipe-ui-default.min@4.1.3.js" | relURL }}"></script> | ||||
| {{ end }} | ||||
|  | ||||
| <style> | ||||
|     .pswp__caption a | ||||
|   , .pswp__caption small a | ||||
|   , .pswp__caption__center a { | ||||
|       color: #CCC; | ||||
|       /* text-decoration: none; */ | ||||
|   } | ||||
| </style> | ||||
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.1/photoswipe.min.css" integrity="sha256-sCl5PUOGMLfFYctzDW3MtRib0ctyUvI9Qsmq2wXOeBY=" crossorigin="anonymous" /> | ||||
| <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.1/default-skin/default-skin.min.css" integrity="sha256-BFeI1V+Vh1Rk37wswuOYn5lsTcaU96hGaI7OUVCLjPc=" crossorigin="anonymous" /> | ||||
| <script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.1/photoswipe.min.js" integrity="sha256-UplRCs9v4KXVJvVY+p+RSo5Q4ilAUXh7kpjyIP5odyc=" crossorigin="anonymous"></script> | ||||
| <script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.1/photoswipe-ui-default.min.js" integrity="sha256-PWHOlUzc96pMc8ThwRIXPn8yH4NOLu42RQ0b9SpnpFk=" crossorigin="anonymous"></script> | ||||
|  | ||||
| <!-- Root element of PhotoSwipe. Must have class pswp. --> | ||||
| <div class="pswp" tabindex="-1" role="dialog" aria-hidden="true"> | ||||
| @@ -78,4 +68,4 @@ Documentation and licence at https://github.com/liwenyip/hugo-easy-gallery/ | ||||
|     </div> | ||||
|     </div> | ||||
| </div> | ||||
| {{ end }} | ||||
| {{ end }} | ||||
		Reference in New Issue
	
	Block a user