A Simple Walkthrough
Let's assume your photos are kept in a directory named c:\photos. They
can be organized is subfolders like c:\photos\2000, c:\photos\2001, ...
- When you launch WebAlbum for the first time, a popup window opens
and asks your source directory. Click the browse button and select c:\photos
and click the OK button.
- You can now preview your pictures. For each folder, you can add a
title and a description and for each photo, you can add a description.
They are saved in the working directory when you save.
- Try to generate your pages. Select "generate" and click
"start". Be sure to check "Use the default template".
If it works properly, you should have your pages generated in the webalbum/target
- Click on files and see the generated files. Double-Click on one to
see the result
The WebAlbum Project
A project consists of several parameters which describe your project:
- The source directory is where you keep your photos. This directory
must exist and can have as many subfolders as wanted. The generation
will keep a similar structure.
- The working directory is the directory used to keep the webalbum
informations. That's where folders' names, photos' description, custom
templates are kept. It is also used as a cache for the photos' thumbnails.
This directory will be created if it does not exist.
- The target directory is where you webpages will be generated.
Existing files will be overwritten but not deleted during the generation
The source directory will never be modified (you cannot delete pictures)
except if you decide to rename a folder, to create a folder or to move
a photo to an other folder. You cannot lose or modify a photo accidentally.
The FTP configuration is where you want to copy your pictures. Most Internet
Access Provider grant you an FTP access when you register.
The WebAlbum Engine
The WebAlbum Engine is responsible for the webpages' generation. Pages
are generated in the "target directory" specified in the configuration.
When you select the "Engine" tab, you can either generate all
folders (recommended) or just one. Click the start button to start the
generation. By default only the default template will be generated but
you can select as many as you want and create yours in the "advanced
Upon generation, you can check what the engine is doing: photo compression,
resizing, template parsing. The engine skips templates without stopping
when errors are found (the errors are highlighted in red in the window).
The WebAlbum Templates
To activate this feature you must switch to the advanced mode: menu
-> "project" -> check "advanced mode"
Each folder can support an unlimited number of folders:
- local templates can only be generated within the local folder.
- global templates can be generated within all folders.
- default templates are packaged in the application and cannot be modified.
Templates are written through the Velocity language (VTL). The syntax
can be checked here
- To generate all pictures in a given folder, you can use the following
template (5 lines are enough!!)
<!-- Folder informations -->
<!-- Display each photo resized to a a width or heigth of 200 -->
#foreach ($asset in $folder.assets)
<img src="$asset.image(200,200)" alt="$asset.description">
- You can also add a navigation bar to an other folder or to an other
<!-- Add a link to the parent folder if needed -->
Parent folder: <a href="$folder.parent.getLink()"> $folder.parent.title <br>
<!-- Link to this file -->
This file: <a href="$folder.getLink()"> $folder.title <br>
<!-- Links to each subfolder -->
#foreach ($sub in $folder.subFolders)
Sub: <a href="$sub.getLink()"> $sub.title <br>
- Multipage: a template can be used to generate several pages. To specify
the number of pages, you have to set up " $engine.nPages ".
#set ($photoByPage = 12)
#set ($engine.nPages = ( $folder.assets.size() - 1) / ( $photoByPage ) + 1)
<!-- Index -->
#foreach ($i in [1..$engine.nPages])
#if($page == $i)
<a href="$folder.getLink($i)"> $i </a>
## The variables that can be set up are:
$engine.nPages: the number of pages generated by this template (default = 1)
## The variables that can be accessed directly from the template are:
$page : the page number (starts at 1)
$folder : the current Folder's object
$engine : the Engine object
## Folder's properties
$folder.title : either the folder title or the folder name (if title is null)
$folder.assets : the list of Photos contained in this folder
$folder.assets.size() : the number of assets
$folder.subFolders : the list of sub Folders' objects
$folder.parent : the parent Folder's object (may be null)
$folder.getLink() : the filename of the 2nd page generated by the current template
$folder.getLink("album") : the filename of the first page generated by the "album" template
$folder.getLink(2) : the filename of the 2nd page generated by the current template
$folder.getLink("album", 2) : the filename of the 2nd page generated by the "album" template
$folder.hasTemplate("album") : true if the folder uses the "album" for its generation
## Photo's properties
#foreach ($asset in $folder.assets)
$asset.date : the date of this photo formatted to the local format
$asset.description : the description of this photo
$asset.image() : the relative link to the original photo (copied to the target directory)
$asset.image(width, height) : the relative link to the resized photo (quality=75)
$asset.image(width, height, quality) : the relative link to the resized photo
## Engine's properties
$engine.nPages : the number of pages generated by this template
$engine.homepage : a link to this homepage
$engine.fullVersion : "WebAlbum version..."
$engine.version : the WebAlbum version
The WebAlbum Publication Tool