* Simple Justified Gallery
       
   URI git clone git://git.codevoid.de/mkpicindex
   DIR Log
   DIR Files
   DIR Refs
   DIR README
       ---
       mkpicindex.sh (52696B)
       ---
            1 #!/bin/sh
            2 
            3 printf '%s' \
            4 '/*!
            5  * mkpicindex.sh - v0.1
            6  * https://codevoid.de
            7  * Copyright (c) 2019 Stefan Hagen
            8  * Licensed under the ISC license.
            9  * 
           10  * style.css, justify.js:
           11  * justifiedGallery - v4.0.0-alpha
           12  * http://miromannino.github.io/Justified-Gallery/
           13  * Copyright (c) 2019 Miro Mannino
           14  * Licensed under the MIT license.
           15  */
           16 ' > LICENSE
           17 
           18 # CONFIGURE
           19 GALLERY_TITLE="My Gallery" # browser title
           20 GALLERY_ROW_HEIGHT=150     # how high will the justified rows be?
           21 GALLERY_RANDOMIZE=false     # enable random sorting (true,false)
           22 BODY_STYLE="color:orange; background:black;" # <body style="?">
           23 THUMBNAIL_QUALITY=83       # quality for thumbnails
           24 THUMBNAIL_PATH="thm"       # relative path to thumbnail folder
           25 INCLUDE_HEADER="HEADER"    # file with html to include before gallery
           26 INCLUDE_FOOTER="FOOTER"    # file with html to include after gallery
           27 
           28 ### ZE PROGAM STARTZ HERE ##############################################
           29 cleanup() {
           30     # DELETE BROKEN IMAGES
           31     printf '%s\n' "Removing incomplete thumbnails." >&2
           32     find $THUMBNAIL_PATH -name "*_tmp.*" -exec rm -v "{}" \;
           33     exit 1
           34 }
           35 trap cleanup 1 2 3 6
           36 
           37 # CREATE THUMBNAIL DIRECTORY
           38 mkdir -p $THUMBNAIL_PATH
           39 
           40 # INCLUDE CUSTOM HEADER & FOOTER
           41 FOOTER=$([ -f $INCLUDE_FOOTER ] && cat $INCLUDE_FOOTER | sed 's/^/        /g')
           42 HEADER=$([ -f $INCLUDE_HEADER ] && cat $INCLUDE_HEADER | sed 's/^/        /g')
           43 
           44 # PRINT HEADER
           45 printf '%s%s%s%s%s\n' \
           46 '<html>
           47     <head>
           48         <title>'"$GALLERY_TITLE"'</title>
           49         <meta name="viewport" content="width=device-width">
           50         <link href="style.css" rel="stylesheet">
           51         <script src="justify.js"></script>
           52     </head>
           53     <body style="'"$BODY_STYLE"'">
           54 '       "$HEADER"'
           55         <div id="base">'
           56 
           57 
           58 # RESCALE AND ADD IMAGE
           59 # PARAM 1: original
           60 #       2: thumbnail_basename
           61 #       3: thumbnail_format (extension)
           62 add_image() {
           63     local FILE="$1"
           64     local THUMB="$THUMBNAIL_PATH/$2-$GALLERY_ROW_HEIGHT"
           65     local EXT="$3"
           66     printf '%s\n' "Adding image: $FILE" >&2
           67     if ! [ -f "$THUMB.$EXT" ] && [ "$FILE" != "$THUMB.$EXT" ];
           68         then convert -quality $THUMBNAIL_QUALITY -sharpen 2x2 \
           69                      -coalesce -resize 6000x$GALLERY_ROW_HEIGHT\> \
           70                      -deconstruct "$FILE" "${THUMB}_tmp.$EXT" && \
           71         mv "${THUMB}_tmp.$EXT" "$THUMB.$EXT"
           72     fi
           73     local WH="$(identify -format ' %w %h ' "$THUMB.$EXT" \
           74                 | awk '{ print "width="$1" height="$2 }')"
           75     printf '            %s\n' "<a href=\"$FILE\">"
           76     printf '                %s\n' "<img $WH src=\"$THUMB.$EXT\">"
           77     printf '            %s\n' '</a>'
           78 }
           79 
           80 ### MAIN LOOP ##########################################################
           81 
           82 for file in *.*;
           83 do
           84     if [ -f "$file" ];
           85     then
           86         case $(printf '%s' ${file##*.} | tr '[:upper:]' '[:lower:]') in
           87             jpg|jpeg|png) 
           88                 add_image "$file" "${file%%.*}" "jpeg" ;;
           89             gif)
           90                 add_image "$file" "${file%%.*}" "gif" ;;
           91             *) printf '%s\n' "Ignoring: $file" >&2 ;;
           92         esac
           93     fi
           94 done
           95 
           96 ### MAIN LOOP END ######################################################
           97 
           98 # PRINT FOOTER
           99 printf '%s%s\n' \
          100 "        </div>
          101         <script>
          102             \$(\"#base\").justifiedGallery({
          103                 rowHeight : $GALLERY_ROW_HEIGHT/0.8,
          104                 maxRowHeight : $GALLERY_ROW_HEIGHT,
          105                 randomize : $GALLERY_RANDOMIZE,
          106                 waitThumbnailsLoad : false,
          107                 lastRow : \"nojustify\",
          108                 margins : 3
          109             });
          110         </script>
          111 "        "$FOOTER
          112     </body>
          113 </html>"
          114 
          115 ### ASSETS (style.css, justify.js) #####################################
          116 printf '%s' '
          117 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