------------
The ImageMagick tools (convert and identify)
bash
-find
-xargs
+GNU find
+GNU xargs
+sed
Installation
------------
-----
bpgallery.sh /path/to/image/files
-To Be Done
-----------
-* A method of adding labels to the images
-* 'Templating' of the thumbnails page
-* Use of a style sheet other than the generated one
+Also, the following files, if placed in the images directory, will be used to
+generate part of the index page:
+ description.txt
+ a simple text file containing paragraphs to go at the beginnings of
+ the index page
+ captions.txt
+ filename<tab>caption style file, it'll add a caption to the images
+ on the index page.
+
+The following environment variables can also be used:
+ TITLE
+ the title of the gallery
+
+ WIDTH
+ the width to make the icons
+
+ MEDIUMWIDTH
+ set the width of images in the medium size pages
+
+ BPGALLERY_THEME
+ set the theme to use (described below)
+
+ BPGALLERY_THEME_DIR
+ set an extra location to look for themes
+
+ OUTPUTHTML
+ sets the script output to be wrapped in a <pre> block
+
+ GENERATEPAGESFORMEDIUMSIZE
+ generate medium sized images and pages
+
+ GENERATEPAGESFORFULLSIZE
+ decide wether to generate pages for the full size images or not
+
+ INDEXDOCUMENT
+ name of the index page (e.g. index.html)
+
+ PAGESDIRECTORY
+ name of the directory in which to put the pages for fullsized and
+ mediumsized images. Defaults to the image directory. This is
+ relative to the images directory, so, for example,
+ PAGESDIRECTORY=pages would create /path/to/image/files/pages
+
+ MEDIUMDIRECTORY
+ directory to generate medium sized images in, defaults to medium,
+ works the same as the PAGESDIRECTORY variable
+
+ ICONSDIRECTORY
+ directory to generate thumbnails in, defaults to icons, works the
+ same as MEDIUMDIRECTORY and PAGESDIRECTORY
+
+Example Usage:
+ TITLE="My Funky Gallery" bpgallery.sh /path/to/image/files
+
+Themes
+------
+Theme support is very rudimentary, basically you create functions for each of
+the parts of the template, and put them in a file named the same as the theme.
+The functions that you need to declare are as follows:
+
+ Available in all templates:
+ ${BASEURL}
+ Base directory (will generate ../ when making pages in a
+ subdirectory for getting to the generated stylesheet or to the
+ index page)
+
+ bpgallery_ThemeName_head()
+ what's it for?:
+ This sets up the header for the page, generally
+ everything until the first picture. So, the title bar
+ and any menus you would like to use
+ available variables:
+ $TITLE - the title for the index page
+ bpgallery_ThemeName_tail()
+ what's it for?:
+ Closes the page, is the last thing to be printed.
+ available variables:
+ None
+ bpgallery_ThemeName_description()
+ what's it for?:
+ if there's a description set up (i.e. a description.txt
+ file) then this is what it'll be wrapped in. It comes
+ just after the _head.
+ available variables:
+ $DESCRIPTION - the content of description.txt
+ bpgallery_ThemeName_stylesheet()
+ what's if for?:
+ It generates the stylesheet for the page.
+ available variables:
+ $WIDTH - the width of the images
+ $MAXHEIGHT - the maximum height of the image
+ bpgallery_ThemeName_thumbsline()
+ what's it for?:
+ Whatever is in here is generated per thumbnail.
+ available variables:
+ $link - the page/image to link to
+ $filename - the name of the file
+ $caption - the caption as got from captions.txt
+ bpgallery_ThemeName_page()
+ what's it for?:
+ It generates the pages for fullsize image pages
+ available variables:
+ $filename - the name of the image
+ $previouspage - the URL for the previous page
+ $currentpage - the url for the current page
+ $nextpage - the url for the next page
+ $caption - the image caption
+
+If any of the functions are not defined in a theme then the default theme
+function will be used instead. The default theme is clean and simplistic, this
+is deliberate!
Author
------
Brett Parker:
- e-mail: <iDunno@sommitrealweird.co.uk>
- www: http://www.sommitrealweird.co.uk/
+ e-mail: <iDunno@sommitrealweird.co.uk>
+ www: http://www.sommitrealweird.co.uk/