NAME
    Apache::Gallery - mod_perl handler to create an image gallery

SYNOPSIS
    See the INSTALL file in the distribution for installation instructions.

DESCRIPTION
    Apache::Gallery creates an thumbnail index of each directory and allows
    viewing pictures in different resolutions. Pictures are resized on the
    fly and cached. The gallery can be configured and customized in many
    ways and a custom copyright image can be added to all the images without
    modifying the original.

CONFIGURATION
    In your httpd.conf you set the global options for the gallery. You can
    also override each of the options in .htaccess files in your gallery
    directories.

    The options are set in the httpd.conf/.htaccess file using the syntax:
    PerlSetVar OptionName 'value'

    Example: PerlSetVar GallerCacheDir '/var/tmp/Apache-Gallery/'

    GalleryAutoRotate
        Some cameras, like the Canon G3, can detect the orientation of a the
        pictures you take and will save this information in the
        'Orientation' EXIF field. Apache::Gallery will then automaticly
        rotate your images.

        This behavior is default but can be disabled by setting
        GalleryAutoRotate to 0.

    GalleryCacheDir
        Directory where Apache::Gallery should create its cache with scaled
        pictures. The default is /var/tmp/Apache-Gallery/ . Here a directory
        for each virtualhost or location will be created automaticly. Make
        sure your webserver has writeaccess to the CacheDir.

    GalleryTemplateDir
        Full path to the directory where you placed the templates. This
        option can be used both in your global configuration and in
        .htaccess files, this way you can have different layouts in
        different parts of your gallery.

        No default value, this option is required.

    GalleryInfo
        With this option you can define which EXIF information you would
        like to present from the image. The format is: '<MyName =>
        KeyInEXIF, MyOtherName => OtherKeyInEXIF'

        Examples of keys: ShutterSpeedValue, ApertureValue, SubjectDistance,
        and Camera

        You can view all the keys from the EXIF header using this
        perl-oneliner:

        perl "-e" 'use Data::Dumper; use Image::Info qw(image_info); print
        Dumper(image_info(shift));' filename.jpg

        Default is: 'Picture Taken => DateTimeOriginal, Flash => Flash'

    GallerySizes
        Defines which widths images can be scaled to. Images cannot be
        scaled to other widths than the ones you define with this option.

        The default is '640 800 1024 1600'

    GalleryThumbnailSize
        Defines the width and height of the thumbnail images.

        Defaults to '100x75'

    GalleryCopyrightImage
        Image you want to blend into your images in the lower right corner.
        This could be a transparent png saying "copyright my name 2001".

        Optional.

    GalleryWrapNavigation
        Make the navigation in the picture view wrap around (So Next at the
        end displays the first picture, etc.)

        Set to 1 or 0, default is 0

    GalleryAllowOriginal
        Allow the user to download the Original picture without resizing or
        putting the CopyrightImage on it.

        Set to 1 or 0, default is 0

    GallerySlideshowIntervals
        With this option you can configure which intervals can be selected
        for a slideshow. The default is '3 5 10 15 30'

    GallerySortBy
        Instead of the default filename ordering you can sort by any stat
        attribute. For example size, atime, mtime, ctime.

FEATURES
    Rotate images
        Some cameras, like the Canon G3, detects the orientation of a
        picture and adds this info to the EXIF header. Apache::Gallery
        detects this and automaticly rotates images with this info.

        If your camera does not support this, you can rotate the images
        manually, This can also be used to override the rotate information
        from a camera that supports that. You can also disable this behavior
        with the GalleryAutoRotate option.

        To use this functionality you have to create file with the name of
        the picture you want rotated appened with ".rotate". The file should
        include a number where these numbers are supported:

                "1", rotates clockwise by 90 degree
                "2", rotates clockwise by 180 degrees
                "3", rotates clockwise by 270 degrees

        So if we want to rotate "Picture1234.jpg" 90 degrees clockwise we
        would create a file in the same directory called
        "Picture1234.jpg.rotate" with the number 1 inside of it.

    Comments
        To include comments for a directory you create a directory.comment
        file where the first line can contain "TITLE: New title" which will
        be the title of the page, and a comment on the following lines. To
        include comments for each picture you create files called
        picture.jpg.comment where the first line can contain "TITLE: New
        title" which will be the title of the page, and a comment on the
        following lines.

        Example:

                TITLE: This is the new title of the page
                And this is the comment.<br>
                And this is line two of the comment.

        The visible name of the folder is by default identical to the name
        of the folder, but can be changed by creating a file
        <directory>.folder with the visible name of the folder.

DEPENDENCIES
    Perl 5
    Apache with mod_perl
    Apache::Request
    URI::Escape
    Image::Info
    Image::Size
    CGI::FastTemplate
    Inline::C
    X11 libraries (ie, XFree86)
    Imlib2 Remember the -dev package when using rpm, deb or other package
    formats!

BUGS
    Fatal errors are showed on a page with a HTTP OK return code. This is
    because Internet Explorer will show it's own error page otherwise. Is it
    possible to force IE to show our custom errormessage even when returning
    HTTP status code 500?

AUTHOR
    Michael Legart <michael@legart.dk>

COPYRIGHT AND LICENSE
    Copyright (C) 2001-2002 Michael Legart <michael@legart.dk>

    Templates designed by Thomas Kjaer <tk@lnx.dk>

    Apache::Gallery is free software and is released under the Artistic
    License. See http://www.perl.com/language/misc/Artistic.html for
    details.

    The video icons are from the GNOME project. http://www.gnome.org/

THANKS
    Thanks to Thomas Kjaer for templates and design of
    http://apachegallery.dk Thanks to Thomas Eibner and other for patches.
    (See the Changes file)

SEE ALSO
    perl, mod_perl, Apache::Request, Inline::C, CGI::FastTemplate,
    Image::Info, and Image::Size.

