[gthumb: 6/57] added the album themes



commit 33105b6f870585c5b6acbf4202b12290fdafcace
Author: Paolo Bacchilega <paobac src gnome org>
Date:   Fri Jun 4 10:35:54 2010 +0200

    added the album themes

 configure.ac                                       |    7 +
 extensions/webalbums/data/Makefile.am              |    2 +-
 extensions/webalbums/data/albumthemes/.cvsignore   |    2 +
 .../webalbums/data/albumthemes/BestFit/.cvsignore  |    1 +
 .../webalbums/data/albumthemes/BestFit/BestFit.css |  369 ++++++++++++++++++++
 .../webalbums/data/albumthemes/BestFit/BestFit.js  |  260 ++++++++++++++
 .../webalbums/data/albumthemes/BestFit/Makefile.am |   21 ++
 .../webalbums/data/albumthemes/BestFit/back.png    |  Bin 0 -> 714 bytes
 .../data/albumthemes/BestFit/image.gthtml          |  282 +++++++++++++++
 .../data/albumthemes/BestFit/index.gthtml          |   92 +++++
 .../webalbums/data/albumthemes/BestFit/index.js    |  147 ++++++++
 .../webalbums/data/albumthemes/BestFit/lib.js      |  246 +++++++++++++
 .../webalbums/data/albumthemes/BestFit/next.png    |  Bin 0 -> 1110 bytes
 .../webalbums/data/albumthemes/BestFit/prev.png    |  Bin 0 -> 1152 bytes
 .../webalbums/data/albumthemes/BestFit/preview.png |  Bin 0 -> 19598 bytes
 .../data/albumthemes/BestFit/thumbnail.gthtml      |  163 +++++++++
 .../webalbums/data/albumthemes/Classic/.cvsignore  |    2 +
 .../webalbums/data/albumthemes/Classic/1.gif       |  Bin 0 -> 43 bytes
 .../webalbums/data/albumthemes/Classic/Makefile.am |   25 ++
 .../webalbums/data/albumthemes/Classic/back.png    |  Bin 0 -> 448 bytes
 .../data/albumthemes/Classic/background.gif        |  Bin 0 -> 43 bytes
 .../webalbums/data/albumthemes/Classic/bot.png     |  Bin 0 -> 331 bytes
 .../data/albumthemes/Classic/image.gthtml          |  194 ++++++++++
 .../data/albumthemes/Classic/index.gthtml          |  103 ++++++
 .../webalbums/data/albumthemes/Classic/layout.css  |  142 ++++++++
 .../webalbums/data/albumthemes/Classic/left.png    |  Bin 0 -> 119 bytes
 .../webalbums/data/albumthemes/Classic/next.png    |  Bin 0 -> 1040 bytes
 .../webalbums/data/albumthemes/Classic/prev.png    |  Bin 0 -> 1063 bytes
 .../webalbums/data/albumthemes/Classic/preview.png |  Bin 0 -> 37132 bytes
 .../webalbums/data/albumthemes/Classic/right.png   |  Bin 0 -> 182 bytes
 .../webalbums/data/albumthemes/Classic/style.css   |   93 +++++
 .../data/albumthemes/Classic/thumbnail.gthtml      |   71 ++++
 .../webalbums/data/albumthemes/Classic/top.png     |  Bin 0 -> 202 bytes
 .../data/albumthemes/ClassicClips/.cvsignore       |    2 +
 .../webalbums/data/albumthemes/ClassicClips/1.gif  |  Bin 0 -> 68 bytes
 .../data/albumthemes/ClassicClips/Makefile.am      |   26 ++
 .../data/albumthemes/ClassicClips/back.png         |  Bin 0 -> 774 bytes
 .../data/albumthemes/ClassicClips/background.gif   |  Bin 0 -> 43 bytes
 .../data/albumthemes/ClassicClips/bot.png          |  Bin 0 -> 738 bytes
 .../data/albumthemes/ClassicClips/image.gthtml     |  194 ++++++++++
 .../data/albumthemes/ClassicClips/index.gthtml     |  103 ++++++
 .../data/albumthemes/ClassicClips/layout.css       |  142 ++++++++
 .../data/albumthemes/ClassicClips/left.png         |  Bin 0 -> 452 bytes
 .../data/albumthemes/ClassicClips/next.png         |  Bin 0 -> 1174 bytes
 .../data/albumthemes/ClassicClips/prev.png         |  Bin 0 -> 1200 bytes
 .../data/albumthemes/ClassicClips/preview.png      |  Bin 0 -> 39785 bytes
 .../data/albumthemes/ClassicClips/right.png        |  Bin 0 -> 493 bytes
 .../data/albumthemes/ClassicClips/style.css        |   93 +++++
 .../data/albumthemes/ClassicClips/thumbnail.gthtml |   71 ++++
 .../data/albumthemes/ClassicClips/top.png          |  Bin 0 -> 653 bytes
 .../webalbums/data/albumthemes/Flicker/.cvsignore  |    2 +
 .../webalbums/data/albumthemes/Flicker/Makefile.am |   16 +
 .../data/albumthemes/Flicker/image.gthtml          |  213 +++++++++++
 .../data/albumthemes/Flicker/index.gthtml          |   85 +++++
 .../webalbums/data/albumthemes/Flicker/layout.css  |  118 +++++++
 .../webalbums/data/albumthemes/Flicker/preview.png |  Bin 0 -> 23944 bytes
 .../webalbums/data/albumthemes/Flicker/style.css   |  103 ++++++
 .../data/albumthemes/Flicker/thumbnail.gthtml      |   54 +++
 extensions/webalbums/data/albumthemes/Makefile.am  |    4 +
 .../data/albumthemes/NeatRound/.cvsignore          |    2 +
 .../webalbums/data/albumthemes/NeatRound/1.gif     |  Bin 0 -> 68 bytes
 .../data/albumthemes/NeatRound/Makefile.am         |   25 ++
 .../webalbums/data/albumthemes/NeatRound/back.png  |  Bin 0 -> 860 bytes
 .../data/albumthemes/NeatRound/background.gif      |  Bin 0 -> 43 bytes
 .../webalbums/data/albumthemes/NeatRound/bot.png   |  Bin 0 -> 721 bytes
 .../data/albumthemes/NeatRound/image.gthtml        |  194 ++++++++++
 .../data/albumthemes/NeatRound/index.gthtml        |  103 ++++++
 .../data/albumthemes/NeatRound/layout.css          |  141 ++++++++
 .../webalbums/data/albumthemes/NeatRound/left.png  |  Bin 0 -> 144 bytes
 .../webalbums/data/albumthemes/NeatRound/next.png  |  Bin 0 -> 1417 bytes
 .../webalbums/data/albumthemes/NeatRound/prev.png  |  Bin 0 -> 1443 bytes
 .../data/albumthemes/NeatRound/preview.png         |  Bin 0 -> 26197 bytes
 .../webalbums/data/albumthemes/NeatRound/right.png |  Bin 0 -> 210 bytes
 .../webalbums/data/albumthemes/NeatRound/style.css |   95 +++++
 .../data/albumthemes/NeatRound/thumbnail.gthtml    |   71 ++++
 .../webalbums/data/albumthemes/NeatRound/top.png   |  Bin 0 -> 459 bytes
 .../webalbums/data/albumthemes/Wiki/.cvsignore     |    2 +
 .../webalbums/data/albumthemes/Wiki/Makefile.am    |   16 +
 .../webalbums/data/albumthemes/Wiki/image.gthtml   |  156 +++++++++
 .../webalbums/data/albumthemes/Wiki/index.gthtml   |   70 ++++
 .../webalbums/data/albumthemes/Wiki/layout.css     |   90 +++++
 .../webalbums/data/albumthemes/Wiki/preview.png    |  Bin 0 -> 37324 bytes
 .../webalbums/data/albumthemes/Wiki/style.css      |   79 +++++
 .../data/albumthemes/Wiki/thumbnail.gthtml         |   64 ++++
 extensions/webalbums/data/albumthemes/text.h       |   42 +++
 85 files changed, 4597 insertions(+), 1 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index cfdc7a8..1a3b304 100644
--- a/configure.ac
+++ b/configure.ac
@@ -529,6 +529,13 @@ extensions/slideshow/data/Makefile
 extensions/slideshow/data/ui/Makefile
 extensions/webalbums/Makefile
 extensions/webalbums/data/Makefile
+extensions/webalbums/data/albumthemes/Makefile
+extensions/webalbums/data/albumthemes/BestFit/Makefile
+extensions/webalbums/data/albumthemes/Classic/Makefile
+extensions/webalbums/data/albumthemes/ClassicClips/Makefile
+extensions/webalbums/data/albumthemes/Flicker/Makefile
+extensions/webalbums/data/albumthemes/NeatRound/Makefile
+extensions/webalbums/data/albumthemes/Wiki/Makefile
 extensions/webalbums/data/ui/Makefile
 gthumb/Makefile
 gthumb/cursors/Makefile
diff --git a/extensions/webalbums/data/Makefile.am b/extensions/webalbums/data/Makefile.am
index c1713cf..9eda696 100644
--- a/extensions/webalbums/data/Makefile.am
+++ b/extensions/webalbums/data/Makefile.am
@@ -1,3 +1,3 @@
-SUBDIRS = ui
+SUBDIRS = albumthemes ui
 
 -include $(top_srcdir)/git.mk
diff --git a/extensions/webalbums/data/albumthemes/.cvsignore b/extensions/webalbums/data/albumthemes/.cvsignore
new file mode 100644
index 0000000..282522d
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/extensions/webalbums/data/albumthemes/BestFit/.cvsignore b/extensions/webalbums/data/albumthemes/BestFit/.cvsignore
new file mode 100644
index 0000000..14140f4
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/BestFit/.cvsignore
@@ -0,0 +1 @@
+*.in
diff --git a/extensions/webalbums/data/albumthemes/BestFit/BestFit.css b/extensions/webalbums/data/albumthemes/BestFit/BestFit.css
new file mode 100644
index 0000000..3888c15
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/BestFit/BestFit.css
@@ -0,0 +1,369 @@
+/*************************************************
+* BestFit.css
+* Copyright (C) 2005-2006 Free Software Foundation, Inc.
+* $Id$
+*
+* Stylesheet for DHTML photo album template
+*
+* NOTE: while the HTML component (template.html) should work with a different
+* stylesheet, the JavaScript component (pictureview.js) contains routines to 
+* correct rendering bugs with various browsers, and thus depends on this 
+* stylesheet.  If you modify the layout, you may also need to modify the 
+* JavaScript.
+*************************************************/
+
+html, body {
+  color: #FFFFFF;
+  background-color: #4b4b4b;
+  /*border-width: 1px;*/
+  margin: 0;
+  font-family: serif;
+  padding: 0;
+}
+
+h1 {
+  margin: 0;
+  font-size: 24pt;
+  font-family: sans-serif;
+  font-weight: bold;
+}
+
+a:link { 
+  font-weight: bold; 
+  text-decoration: none;
+  color: white;
+  background-color: inherit;   
+}
+
+a:visited { 
+  font-weight: bold; 
+  text-decoration: none;
+  color: white;
+  background-color: inherit;   
+}
+
+a:hover { 
+  font-weight: bold; 
+  text-decoration: none; 
+  color: yellow;
+  background-color: inherit;   
+}
+
+table {
+  border-style: none;
+}
+
+td {
+  color: white;
+  background-color: inherit;
+  font-size: 10pt;
+  line-height: 10pt;
+}
+
+img {
+  border-style: none;
+}
+
+img.navigation {
+  border-style: solid;
+  border-width: 3px;
+  border-color: white;
+}
+
+img.preview {
+  border-style: solid;
+  border-width: 3px;
+  border-color: black;
+}
+
+img.thumbnail {
+  vertical-align: middle;
+  margin-top: 7px;
+  margin-bottom: 7px;
+}
+
+div.thumbnail {
+  /*border-style: solid;*/
+  border-color: red;
+  border-width: 1px;
+  margin: 10px;
+  width: 183px;
+  text-align: center;       
+  float: none;
+  display: inline-block; /* Not supported by Mozilla */
+  display: -moz-inline-box; /* mozilla-specific, roughly equiv. to inline-block */
+}
+      
+div.thumbnailFrame {
+  /*border-style: solid;*/
+  border-color: blue;
+  border-width: 1px;
+  background: #CCCCCC;
+  width: 179px;
+  height: 135px;
+  
+  /* center image vertically. Doesn't work in MSIE, too low in Konqueror */
+  text-align: center;
+  line-height: 135px; 
+  font-size: 0px;
+  
+  /* drop shadow */
+  position: relative;
+  top: -3px;
+  left: -3px;
+        
+  /* rounded edges.  CSS3; not supported yet */
+  border-radius: 10px;
+  -moz-border-radius: 10px;
+}
+
+div.shadowbox {
+  position: relative;
+  top: 3px;
+  left: 3px;
+  background: #000000;
+  width: 180px;
+  
+  /* rounded edges.  CSS3; not supported yet */
+  border-radius: 10px;
+  -moz-border-radius: 10px;
+}
+
+/* see http://www.wpdfd.com/editorial/thebox/deadcentre4.html */
+div.center {
+  text-align: center;
+  position: relative;
+  top: 50%;
+  left: 0px;
+  width: 100%;
+  height: 1px;
+  overflow: visible;
+  /*background-color: #0ff; /* line across the center */
+}
+
+/* see http://www.wpdfd.com/editorial/thebox/deadcentre4.html */
+div.centerContent {
+  margin-left: -50%;
+  position: absolute;
+  left: 50%;
+  width: 100%;
+  height: 100%; /* needs to be the height of the minimum bounding box */
+  top: -50%; /* needs to be 50% of the height of the minimum bounding box */
+}
+
+div.caption, table.caption {
+  padding: 1ex;
+  font-size: 12pt;
+  line-height: 12pt;
+  text-align: left;
+}
+
+div.centerh {
+  height: 100%;
+  width: 100%;
+  margin-left: auto;
+  margin-right: auto;
+  text-align: center;
+}
+
+div.comments {
+}
+
+div.location {
+  padding-top: 1em;
+}
+
+div.time {
+  padding-top: 1em;
+}
+
+span.index {
+  font-weight: bold;
+  font-size: 10pt;
+  vertical-align: 9px;
+}
+
+span.property {
+  font-size: 10pt;
+  color: #AAAAAA;
+  background-color: inherit;
+  font-weight: bold;
+}
+
+div.tip {
+  padding: 2px;
+  background-color: #4b4b4b;
+  color: black;
+  font-size: 10pt;
+  line-height: 10pt;
+
+  /* display on top of everything else */
+  position: absolute;
+  display: none;
+  /*top: -60px;
+  left: 100%;*/
+  top: inherit;
+  left: inherit;
+  width: auto;
+  height: auto;
+  z-index: 100;
+  
+  /* draw a border */
+  border-style: solid;
+  border-color: black;
+  border-width: 1px;
+
+  /* rounded edges on border.  CSS3; not supported yet */
+  border-radius: 10px;
+  -moz-border-radius: 10px;
+}
+
+a + div.tip {
+  display: none;
+}
+
+a:hover + div.tip {
+  display: block;
+}
+
+div.tip table
+{
+  text-align: left;
+}
+
+div.tip > div.comments
+{
+  padding: 0;
+}
+
+#indexPanel, #navigationPanel, #prevThumbPanel, #nextThumbPanel {
+  text-align: center;
+  /*border-style: solid;*/
+  border-width: 1px;
+  border-color: blue;
+  position: absolute;
+  width: 20%;
+}
+
+#indexPanel {
+  top: 22px;
+  height: 30px;
+  left: 0;
+}
+
+#navigationPanel {
+  top: 22px;
+  height: 30px;
+  right: 0;
+}
+
+#prevThumbPanel {
+  top: 80px;
+  height: 106px;
+  left: 0;
+  line-height: 0px;
+}
+
+#nextThumbPanel {
+  top: 80px;
+  height: 106px;
+  right: 0;
+  line-height: 0px;
+}
+
+#captionPanel, #propertyPanel, #imagePanel
+{
+  position: absolute;
+}
+
+#titlePanel {
+  top: 0;
+  margin-left: 20%;
+  margin-right: 20%;
+  height: 80px;
+  border-color: #786345;
+}
+
+#captionPanel {
+  top: 190px;
+  left: 0;
+  width: 20%;
+  bottom: 0;
+  border-color: #98072b;
+}
+
+#propertyPanel {
+  top: 190px;
+  right: 0;
+  width: 20%;
+  bottom: 0;
+  border-color: #386698;
+}
+
+#imagePanel {
+  top: 80px;
+  left: 20%;
+  right: 20%;
+  bottom: 80px;
+  border-color: #178634;
+  text-align: center;
+  line-height: 0px;
+}
+
+#copyrightPanel {
+  position: absolute;
+  height: 80px;
+  bottom: 0;
+  right: 20%;
+  left: 20%;
+  width: 60%; /* hack for MSIE */
+  border-color: #e80972;
+}
+
+#fullsizenote, #jswarning {
+  height: 1.5em;
+  line-height: 1em;
+  /*border-style: solid;*/
+  border-width: 1px;
+  font-size: 10pt;
+  text-align: center;
+  vertical-align: top;
+}
+
+#fullsizenote {
+  color: #AAAAAA;
+  background-color: inherit;
+}
+
+#jswarning {
+  border-style: solid;
+  color: #7FFF00;
+  background-color: inherit;
+}
+
+#thumbnailPanel {
+  margin-left: 80px;
+  margin-right: 80px;
+  /*margin-bottom: 80px;*/ /* this is the best way, but breaks in Opera 8.0 */
+  padding-bottom: 80px; /* hack for Opera 8.0, breaks MSIE 6.0 */
+  border-color: #178634;
+  text-align: center;
+  line-height: 0px;
+}
+
+html, body, #contents {
+  min-height: 100%;
+  width: 100%;
+  height: 100%; /* hack for MSIE - should be auto */
+}
+
+/* hack for MSIE */
+html>body, html>body #contents {
+  height: auto;
+}
+
+#contents {
+  position: absolute;
+  top: 0;
+  left: 0;
+}
diff --git a/extensions/webalbums/data/albumthemes/BestFit/BestFit.js b/extensions/webalbums/data/albumthemes/BestFit/BestFit.js
new file mode 100644
index 0000000..10c08a7
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/BestFit/BestFit.js
@@ -0,0 +1,260 @@
+/*************************************************
+* BestFit.js
+* Copyright (C) 2005-2006 Free Software Foundation, Inc.
+* $Id$
+*
+* Scripts for DHTML photo album template
+* The script in this file runs every time the page is reloaded or resized, and
+* does the following:
+*  - corrects CSS rendering bugs found in Opera, Konqueror, and MSIE
+*  - resizes the image preview to the largest size that will fit in its 
+*    container, up to the actual size of the image, without losing aspect ratio
+*  - vertically centers several text blocks within the current dimensions of 
+*    their containers
+*
+* NOTE: if you change the layout in the stylesheet, you'll likely also have to 
+* change the correct() function in this script
+*************************************************/
+
+// globals
+var imageWidth;     // the base width of image, in pixels
+var imageHeight;    // the base height of image, in pixels
+
+// gets the first child of an element
+function getFirstChild ( obj )
+{
+    if (obj.children)
+    {
+        if (obj.children.length == 0)
+            return null;
+        return obj.children[0];
+    }
+    else
+    {
+        // childNodes contains all sorts of #text and #comment elements...
+        var i=0;
+        while (obj.childNodes[i].nodeName.charAt(0) == '#')
+        {
+            i++;
+        }
+    
+        if (i == 0)
+            return null;
+        return obj.childNodes[i];
+    }
+}
+        
+// resizes an image to the maximum size that will fit in its container, 
+// while preserving aspect ratio
+function resize ()
+{
+    var image;          // the image to be modified
+    var imageAspect;    // the width/height aspect ratio of image
+    var imagePanel;     // the panel to hold the image
+    var notePanel;      // the panel to hold the note
+    var noteHeight;     // the height of the note panel
+    var imageBorder;    // the width of the border on image, in pixels
+    var panelWidth;     // the current width of imagePanel, in pixels
+    var panelHeight;    // the current height of imagePanel, in pixels
+    var panelAspect;    // the current aspect ratio of imagePanel
+    
+    image = document.getElementById("image");
+    imageAspect = imageWidth/imageHeight;
+    imagePanel = document.getElementById("imagePanel");
+
+    notePanel = document.getElementById("fullsizenote");
+    noteHeight = 0;
+    if (notePanel != null)
+        noteHeight = getObjHeight(document.getElementById("fullsizenote"));
+            
+    imageBorder = getVBorder(image);
+    panelWidth = getObjWidth(imagePanel) - getHBorder(image);
+    panelHeight = getObjHeight(imagePanel) - noteHeight - getVBorder(image);
+    panelAspect = panelWidth/panelHeight;
+
+    // set the width and height of the image
+    if (imageAspect >= panelAspect)
+    {
+        // constrained by width
+        image.width = Math.min(panelWidth, imageWidth);
+        image.height = Math.min((imageHeight*panelWidth/imageWidth), imageHeight);
+    }
+    else
+    {
+        // constrained by height
+        image.height = Math.min(panelHeight, imageHeight);
+        image.width = Math.min((imageWidth*panelHeight/imageHeight), imageWidth);
+    }
+
+    // adjust right column if there's space
+    propertyWidth = getObjWidth(document.getElementById("propertyPanel"));
+    tableWidth = getObjWidth(document.getElementById("propertyTable")) + getHBorder(document.getElementById("propertyTable"));
+    if ((tableWidth > propertyWidth) && (image.width+(tableWidth-propertyWidth) < panelWidth))
+    {
+        setProperty(document.getElementById("propertyPanel"), "width", tableWidth+"px");
+    }
+}
+
+// corrects various browser rendering bugs
+function correct ()
+{
+    // correct center column width in Opera and MSIE
+    var centerWidth = getObjWidth(document.getElementById("imagePanel"));
+    var rightWidth = getObjWidth(document.getElementById("propertyPanel"));
+    var leftWidth = getObjWidth(document.getElementById("captionPanel"));
+    var bodyWidth = getWindowWidth();
+    var diff = bodyWidth - (centerWidth + rightWidth + leftWidth);
+    if (diff > 2 || diff < -2)
+    {
+        setProperty(document.getElementById("imagePanel"), "width", (bodyWidth - (rightWidth + leftWidth))+"px");
+    }
+    var titleWidth = getObjWidth(document.getElementById("titlePanel"));
+    var diff = bodyWidth - (titleWidth + rightWidth + leftWidth);
+    if (diff > 2 || diff < -2)
+    {
+        setProperty(document.getElementById("titlePanel"), "width", (bodyWidth - (rightWidth + leftWidth))+"px");
+    }
+    var copyrightWidth = getObjWidth(document.getElementById("copyrightPanel"));
+    var diff = bodyWidth - (copyrightWidth + rightWidth + leftWidth);
+    if (diff > 2 || diff < -2)
+    {
+        setProperty(document.getElementById("copyrightPanel"), "width", (bodyWidth - (rightWidth + leftWidth))+"px");
+    }
+
+    // correct center column height in Konqueror
+    var centerHeight = getObjHeight(document.getElementById("imagePanel"));
+    var titleHeight = getObjHeight(document.getElementById("titlePanel"));
+    var copyrightHeight = getObjHeight(document.getElementById("copyrightPanel"));
+    var bodyHeight = getWindowHeight();
+    diff = bodyHeight - (centerHeight + titleHeight + copyrightHeight);
+    if (diff > 2 || diff < -2)
+    {
+        setProperty(document.getElementById("imagePanel"), "height", (bodyHeight - (titleHeight + copyrightHeight))+"px");
+    }
+
+    // correct side panel heights in MSIE
+    var captionHeight = getObjHeight(document.getElementById("captionPanel"));
+    var propertyHeight = getObjHeight(document.getElementById("propertyPanel"));
+    var captionOffset = getTopOffset(document.getElementById("captionPanel"));
+    var propertyOffset = getTopOffset(document.getElementById("propertyPanel"));
+    var captionBorderHeight = getVBorder(document.getElementById("captionPanel"));
+    var propertyBorderHeight = getVBorder(document.getElementById("propertyPanel"));
+    diff = bodyHeight - captionHeight - captionBorderHeight - captionOffset;
+    if (diff != 0)
+    {
+        setProperty(document.getElementById("captionPanel"), "height", (bodyHeight-captionBorderHeight-captionOffset-2)+"px");
+    }
+    diff = bodyHeight - propertyHeight - propertyBorderHeight - propertyOffset;
+    if (diff != 0)
+    {
+        setProperty(document.getElementById("propertyPanel"), "height", (bodyHeight-propertyBorderHeight-propertyOffset-2)+"px");
+    }
+}
+
+// centers all DIVs of class "centerContent"
+function center ()
+{
+    // figure out what the variable for "margin-left" is
+    var left=0;
+    var marginLeft = "margin-left";
+    if (document.body.currentStyle && isNaN(document.body.currentStyle.margin-left))
+        marginLeft = "marginLeft";
+
+    // locate all DIVs of class "centerContent"
+    var objs = getElementsByClass("div", "centerContent");
+    var objHeight;
+    var objWidth;
+    for (var i=0; i<objs.length; i++)
+    {
+        // set their widths and heights according to the widths and heights of
+        // their contents
+        // NOTE: this will not work properly if a "centerContent" DIV contains 
+        // more than one element
+        objHeight = getObjHeight(getFirstChild(objs[i]));
+        objWidth = getObjWidth(getFirstChild(objs[i]));
+        if (objHeight != 0) // Opera doesn't have dimensions of inline objects
+        {
+            setProperty(objs[i], "height", (objHeight)+"px");
+            setProperty(objs[i], "top", (objHeight/(-2.0))+"px");
+        }
+        if (objWidth != 0)
+        {
+            setProperty(objs[i], "width", (objWidth)+"px");
+            setProperty(objs[i], marginLeft, (objWidth/(-2.0))+"px");
+        }
+    }
+}
+     
+function resizeAction ()
+{
+    // set initial image size to 1x1 so that the real size doesn't affect layout
+    document.getElementById("image").width = 1;
+    document.getElementById("image").height = 1;
+
+    // figure out what the variable for "margin-left" is
+    var left=0;
+    var marginLeft = "margin-left";
+    if (document.body.currentStyle && isNaN(document.body.currentStyle.margin-left))
+        marginLeft = "marginLeft";
+    
+    // reset all values that we play with, so that the browser can
+    // figure layout on its own as much as possible
+    setProperty(document.getElementById("imagePanel"), "width", "");
+    setProperty(document.getElementById("titlePanel"), "width", "");
+    setProperty(document.getElementById("copyrightPanel"), "width", "");
+    setProperty(document.getElementById("imagePanel"), "height", "");
+    setProperty(document.getElementById("captionPanel"), "height", "");
+    setProperty(document.getElementById("propertyPanel"), "height", "");
+    if (getObjHeight(document.getElementById("titleContent")) != 0)
+    {
+        setProperty(document.getElementById("titleContent").parentNode, "height", "");
+        setProperty(document.getElementById("titleContent").parentNode, "top", "");
+        setProperty(document.getElementById("titleContent").parentNode, "width", "");
+        setProperty(document.getElementById("titleContent").parentNode, marginLeft, "");
+    }
+    if (getObjHeight(document.getElementById("copyrightContent")) != 0)
+    {
+        setProperty(document.getElementById("copyrightContent").parentNode, "height", "");
+        setProperty(document.getElementById("copyrightContent").parentNode, "top", "");
+        setProperty(document.getElementById("copyrightContent").parentNode, "width", "");
+        setProperty(document.getElementById("copyrightContent").parentNode, marginLeft, "");
+    }
+
+    // make corrections to work around browser bugs
+    correct();
+    
+    // sleep briefly so that Konqueror gets properties correctly, then
+    // resize the image according to screen size
+    setTimeout("resize(); center()", 1);
+}
+
+// performs all initialization and calls the actual action
+function setup ()
+{
+    // save the original image dimensions in global variables
+    var image = document.getElementById("image");
+    if (image.naturalWidth)
+        imageWidth = image.naturalWidth;
+    else
+        imageWidth = image.width;
+    if (image.naturalHeight)
+        imageHeight = image.naturalHeight;
+    else
+        imageHeight = image.height;
+
+    resizeAction();
+
+    // the W3C event registration model doesn't seem to be completely 
+    // supported by Konqueror
+    //window.addEventListener('onresize', resizeAction, false);
+    window.onresize = resizeAction;
+    //window.attachEvent('resize', resizeAction);
+}
+
+// initial (load-time) entry point
+function start ()
+{
+    // sleep briefly.  If I don't do this, Konqueror doesn't get 
+    // computed style values correctly.
+    setTimeout("setup()", 1);
+}
diff --git a/extensions/webalbums/data/albumthemes/BestFit/Makefile.am b/extensions/webalbums/data/albumthemes/BestFit/Makefile.am
new file mode 100644
index 0000000..8668a6d
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/BestFit/Makefile.am
@@ -0,0 +1,21 @@
+gthtml_files =			\
+	image.gthtml		\
+	index.gthtml		\
+	thumbnail.gthtml
+
+themename  = BestFit
+themedir   = $(datadir)/gthumb/albumthemes/$(themename)
+theme_DATA =			\
+	back.png		\
+	BestFit.css		\
+	BestFit.js		\
+	index.js		\
+	lib.js			\
+	next.png		\
+	preview.png		\
+	prev.png		\
+	$(gthtml_files)
+
+EXTRA_DIST = $(theme_DATA) 
+
+-include $(top_srcdir)/git.mk
diff --git a/extensions/webalbums/data/albumthemes/BestFit/back.png b/extensions/webalbums/data/albumthemes/BestFit/back.png
new file mode 100644
index 0000000..681dc91
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/BestFit/back.png differ
diff --git a/extensions/webalbums/data/albumthemes/BestFit/image.gthtml b/extensions/webalbums/data/albumthemes/BestFit/image.gthtml
new file mode 100644
index 0000000..38b4cf7
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/BestFit/image.gthtml
@@ -0,0 +1,282 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
+<!--
+ index.ghtml
+ Copyright (C) 2005-2006 Free Software Foundation, Inc.
+ $Id: image.gthtml,v 1.2 2006/11/09 10:26:59 mjc Exp $
+ 
+ DHTML photo album template for use with gthumb - photo preview page
+-->
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+    <meta name="Author" content="Rennie deGraaf" />
+    <meta name="Generator" content="gThumb Image Viewer" />
+    <link rel="stylesheet" href="<gthumb:theme_link src='BestFit.css'/>" />
+    <style type="text/css">
+      <!--
+      -->
+    </style>
+    <!-- hack for MSIE, since it doesn't support inline-block properly -->
+    <!--[if IE]>
+      <style type="text/css">
+        div.thumbnail {
+          float: left;
+          display: inline;
+        }
+      </style>
+    <![endif]-->
+    <script type="text/javascript" src="<gthumb:theme_link src='lib.js'/>"></script>
+    <script type="text/javascript" src="<gthumb:theme_link src='BestFit.js'/>"></script>
+    <gthumb:if "images > 1" />
+      <title><gthumb:header/> (<gthumb:image_idx/>/<gthumb:images/>)</title>
+    <gthumb:else/>
+      <title><gthumb:header/></title>
+    <gthumb:end/>
+  </head>
+  <body onload="start();">
+  
+    <div id="titlePanel">
+      <noscript>
+        <div id="jswarning">
+          This page may not work correctly in your browser, because you have JavaScript disabled.
+        </div>
+      </noscript>
+      <div class="center">
+        <div class="centerContent" style="height: 3em; top: -1.5em;">
+          <h1 id="titleContent"><gthumb:header/></h1>
+        </div>
+      </div>
+    </div>
+    
+    <div id="copyrightPanel">
+      <div class="center">
+        <div class="centerContent" style="height: 1.5em; top: -0.75em;">
+          <div id="copyrightContent">
+            <gthumb:footer/>
+          </div>
+        </div>
+      </div>
+    </div>
+    
+    <div id="indexPanel">
+      <!-- back to menu -->
+      <a href="<gthumb:page_link idx_relative=0 image_idx="1"/>">
+        <img src="<gthumb:theme_link src='back.png'/>" width="30" height="30" alt="Back to menu"/>
+      </a>
+      <div class="tip" style="top: 100%; left: 0%;">
+        Return to thumbnail index
+      </div>
+    </div>
+    
+    <div id="navigationPanel">
+      <!-- previous/next image -->
+      <gthumb:if "image_idx > 1" />
+        <a href="<gthumb:image_link idx_relative=-1/>">
+          <img src="<gthumb:theme_link src='prev.png'/>" width="40" height="30" alt="Previous picture"/>
+        </a>
+        <div class="tip" style="top: 100%; left: 0%;">
+          Previous picture
+        </div>
+      <gthumb:end/>
+      <gthumb:if "images != 1" />
+        <span class="index"><gthumb:image_idx/> / <gthumb:images/></span>
+      <gthumb:end/>
+      <gthumb:if "image_idx < images" />
+        <a href="<gthumb:image_link idx_relative=+1/>">
+          <img src="<gthumb:theme_link src='next.png'/>" width="40" height="30" alt="Next picture"/>
+        </a>
+        <div class="tip" style="top: 100%; left: 0%;">
+          Next picture
+        </div>
+      <gthumb:end/>
+    </div>
+    
+    <div id="prevThumbPanel">
+      <!-- previous image thumbnail -->
+      <gthumb:if "image_idx > 1" />
+        <a href="<gthumb:image_link idx_relative="-1"/>">
+          <!--<img src="thumb-vertical.jpeg" alt="Previous image thumbnail" width="75" height="100" class="navigation" />-->
+          <gthumb:image thumbnail max_size="100" idx_relative="-1" class="navigation" alt="Previous picture thumbnail"/>
+        </a>
+        <div class="tip" style="top: 100%; left: 0%;">
+          Previous picture
+        </div>
+      <gthumb:end/>
+    </div>
+    
+    <div id="nextThumbPanel">
+      <!-- next image thumbnail -->
+      <gthumb:if "image_idx < images" />
+        <a href="<gthumb:image_link idx_relative="+1"/>">
+          <!--<img src="thumb-horizontal.jpeg" alt="Next image thumbnail" width="100" height="75" class="navigation" />-->
+          <gthumb:image thumbnail max_size="100" idx_relative="+1" class="navigation" alt="Next picture thumbnail"/>
+        </a>
+        <div class="tip" style="top: 100%; left: 0%;">
+          Next picture
+        </div>
+      <gthumb:end/>
+    </div>
+    
+    <div id="captionPanel">
+      <!-- Image comments -->
+      <div class="caption">
+        <gthumb:if "comment_visibility_image"/>
+        <div class="comments">
+          <gthumb:comment/>
+        </div>
+        <gthumb:end/>
+        <gthumb:if "place_visibility_image"/>
+        <div class="location">
+          <gthumb:place/>
+        </div>
+        <gthumb:end/>
+        <gthumb:if "date_time_visibility_image"/>
+        <div class="time">
+          <gthumb:date_time/>
+        </div>
+        <gthumb:end/>
+      </div>
+    </div>
+    
+    <div id="propertyPanel">
+      <gthumb:if "file_name_visibility_image || image_dim_visibility_image 
+        || file_size_visibility_image || exif_date_time_visibility_image
+        || exif_exposure_time_visibility_image || exif_exposure_mode_visibility_image
+        || exif_flash_visibility_image || exif_shutter_speed_visibility_image
+        || exif_aperture_value_visibility_image || exif_focal_length_visibility_image
+        || exif_camera_model_visibility_image" />
+        <table class="caption" id="propertyTable">
+          <col width="0*" />
+          <col width="100%" />
+          <gthumb:if "file_name_visibility_image"/>
+            <tr>
+              <td>
+                <span class="property"><gthumb:text>Image</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:file_name/>
+              </td>
+            </tr>
+          <gthumb:end/>
+          <gthumb:if "image_dim_visibility_image"/>
+            <tr>
+              <td>
+                <span class="property"><gthumb:text>Dimensions</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:image_dim/> <gthumb:text>pixels</gthumb:text>
+              </td>
+            </tr>
+          <gthumb:end/>
+          <gthumb:if "file_size_visibility_image"/>
+            <tr>
+              <td>
+                <span class="property"><gthumb:text>Bytes</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:file_size/>
+              </td>
+            </tr>
+          <gthumb:end/>
+          <gthumb:if "exif_date_time_visibility_image"/>
+            <tr>
+              <td>
+                <span class="property"><gthumb:text>Date</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:exif:date_time/>
+              </td>
+            </tr>
+          <gthumb:end/>
+          <gthumb:if "exif_exposure_time_visibility_image"/>
+            <tr align="left">
+              <td>
+                <span class="property"><gthumb:text>Exposure time</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:exif:exposure_time/>
+              </td>
+            </tr>
+          <gthumb:end/>
+          <gthumb:if "exif_exposure_mode_visibility_image"/>
+            <tr align="left">
+              <td>
+                <span class="property"><gthumb:text>Exposure mode</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:exif:exposure_mode/>
+              </td>
+            </tr>
+          <gthumb:end/>
+          <gthumb:if "exif_flash_visibility_image"/>
+            <tr align="left">
+              <td>
+                <span class="property"><gthumb:text>Flash</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:exif:flash/>
+              </td>
+            </tr>
+          <gthumb:end/>
+          <gthumb:if "exif_shutter_speed_visibility_image"/>
+            <tr align="left">
+              <td>
+                <span class="property"><gthumb:text>Shutter speed</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:exif:shutter_speed/>
+              </td>
+            </tr>
+          <gthumb:end/>
+          <gthumb:if "exif_aperture_value_visibility_image"/>
+            <tr align="left">
+              <td>
+                <span class="property"><gthumb:text>Aperture value</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:exif:aperture_value/>
+              </td>
+            </tr>
+          <gthumb:end/>
+          <gthumb:if "exif_focal_length_visibility_image"/>
+            <tr align="left">
+              <td>
+                <span class="property"><gthumb:text>Focal length</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:exif:focal_length/>
+              </td>
+            </tr>
+          <gthumb:end/>
+          <gthumb:if "exif_camera_model_visibility_image"/>
+            <tr align="left">
+              <td>
+                <span class="property"><gthumb:text>Camera model</gthumb:text></span>
+              </td>
+              <td>
+                <gthumb:exif:camera_model/>
+              </td>
+            </tr>
+          <gthumb:end/>
+        </table>
+      <gthumb:end/>
+    </div>
+    
+    <div id="imagePanel">
+      <gthumb:if "copy_originals"/>
+        <a href="<gthumb:file_name with_relative_path/>">
+      <gthumb:end/>
+          <gthumb:image preview id="image" class="preview" alt="Picture preview"/>
+          <!--<img src="<gthumb:file_name idx=page_idx/>" alt="image" id="image" class="preview" />-->
+      <gthumb:if "copy_originals"/>
+        </a>
+      <gthumb:end/>
+      <gthumb:if "copy_originals"/>
+        <div id="fullsizenote">
+         <gthumb:text>(click on the image to see it at the original size)</gthumb:text>
+        </div>
+      <gthumb:end/>
+    </div>
+  </body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/BestFit/index.gthtml b/extensions/webalbums/data/albumthemes/BestFit/index.gthtml
new file mode 100644
index 0000000..4599c73
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/BestFit/index.gthtml
@@ -0,0 +1,92 @@
+<gthumb:set_var thumbnail_width="159" thumbnail_height="120"/>
+<gthumb:set_var preview_width="800" preview_height="600"/>
+
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en">
+<!--
+ index.ghtml
+ Copyright (C) 2005-2006 Free Software Foundation, Inc.
+ $Id: index.gthtml,v 1.2 2006/11/09 10:26:59 mjc Exp $
+ 
+ DHTML photo album template for use with gthumb - thumbnail index page
+-->
+  <head>
+    <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=ISO-8859-1" />
+    <meta name="Author" content="Rennie deGraaf" />
+    <link rel="stylesheet" href="<gthumb:theme_link src='BestFit.css'/>" />
+    <style type="text/css">
+      <!--
+      -->
+    </style>
+    <!--[if IE]>
+      <style type="text/css">
+        div.thumbnail {
+          float: left;
+          display: block;
+        }
+        #thumbnailPanel {
+          /* unto Opera hack */
+          padding-bottom: 0px;
+          margin-bottom: 80px;
+        }
+      </style>
+    <![endif]-->
+    <script type="text/javascript" src="<gthumb:theme_link src='lib.js'/>"></script>
+    <script type="text/javascript" src="<gthumb:theme_link src='index.js'/>"></script>
+    <gthumb:if "pages > 1" />
+      <title><gthumb:header/> (<gthumb:page_idx/>/<gthumb:pages/>)</title>
+    <gthumb:else/>
+      <title><gthumb:header/></title>
+    <gthumb:end/>
+  </head>
+  <body onload="startIndex();">
+    <div id="contents">
+    
+      <div id="titlePanel">
+        <noscript>
+          <div id="jswarning">
+            This page may not work correctly in your browser, because you have JavaScript disabled.
+          </div>
+        </noscript>
+        <div class="center">
+          <div class="centerContent" style="height: 3em; top: -1.5em;">
+            <h1 id="titleContent"><gthumb:header/></h1>
+          </div>
+        </div>
+      </div>
+    
+      <div id="navigationPanel">
+        <!-- previous/next page -->
+        <gthumb:if "page_idx > 1" />
+          <a href="<gthumb:page_link idx_relative=-1/>">
+            <img src="<gthumb:theme_link src='prev.png'/>" width="40" height="30" alt="Previous page"/>
+            <span class="tip">Previous page</span>
+          </a>
+        <gthumb:end/>
+        <gthumb:if "pages != 1"/>
+          <span class="index"><gthumb:page_idx/> / <gthumb:pages/></span>
+        <gthumb:end/>
+        <gthumb:if "page_idx < pages" />
+          <a href="<gthumb:page_link idx_relative=+1/>">
+            <img src="<gthumb:theme_link src='next.png'/>" width="40" height="30" alt="Next page"/>
+            <span class="tip">Next page</span>
+          </a>
+        <gthumb:end/>
+      </div>
+    
+      <div id="thumbnailPanel">
+        <gthumb:thumbs/>
+      </div>
+    
+      <div id="copyrightPanel">
+        <div class="center">
+          <div class="centerContent" style="height: 3em; top: -1.5em;">
+            <div id="copyrightContent"><gthumb:footer/></div>
+          </div>
+        </div>
+      </div>
+
+    </div>
+  </body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/BestFit/index.js b/extensions/webalbums/data/albumthemes/BestFit/index.js
new file mode 100644
index 0000000..547ac1d
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/BestFit/index.js
@@ -0,0 +1,147 @@
+/*************************************************
+* index.js
+* Copyright (C) 2005-2006 Free Software Foundation, Inc.
+* $Id$
+*
+* Scripts for DHTML photo album template index page
+* The script in this file runs every time the page is reloaded or resized, and
+* does the following:
+*  - aligns and centers thumbnail pictures
+*************************************************/
+
+function getFirstChild ( obj )
+{
+    if (obj.children)
+    {
+        if (obj.children.length == 0)
+            return null;
+        return obj.children[0];
+    }
+    else
+    {
+        // childNodes contains all sorts of #text and #comment elements...
+        var i=0;
+        while (obj.childNodes[i].nodeName.charAt(0) == '#')
+        {
+            i++;
+        }
+    
+        if (i == 0)
+            return null;
+        return obj.childNodes[i];
+    }
+}
+        
+
+function getMaxContentWidth ( obj )
+{
+    var children = getChildren(obj);
+    var y = 0;
+    var contentWidth = 0;
+    var parentWidth = getObjWidth(obj); //.parentNode);
+    
+    if (children.length > 0)
+    {
+        var i=0;
+        while (i < children.length && contentWidth + getTotalWidth(children[i]) <= parentWidth)
+        {
+            contentWidth += getTotalWidth(children[i]);
+            i++;
+        }
+    }
+
+    return contentWidth;
+}
+
+// BUG: doesn't work in Konqueror
+//  - margin-left and margin-right don't have values
+//  - width doesn't update when page is resized
+function center ()
+{
+    // locate all DIVs of class "centerh"
+    var objs = getElementsByClass("div", "centerh");
+    var wid;
+    for (var i=0; i<objs.length; i++)
+    {
+        wid = getMaxContentWidth(objs[i]);
+        setProperty(objs[i], "width", (wid)+"px");
+    }
+}
+
+function align ()
+{
+    var children = getChildren(document.getElementById("thumbnailPanel"));
+    if (children.length > 0)
+    {
+        var rowTop;
+        var maxHeight;
+        var tmp;
+        
+        // iterate over all children
+        for (var i=0; i<children.length; i++)
+        {
+            rowTop = children[i].offsetTop;
+
+            // find the maximum height of all thumbnails in this row
+            maxHeight = -1;
+            for (var j=i; (j<children.length) && (children[j].offsetTop==rowTop); j++)
+            {
+                tmp = getObjHeight(children[j]);
+                if (tmp > maxHeight)
+                    maxHeight = tmp;
+            }
+            
+            // set the height on all thumbnails in this row to maxHeight
+            while ((i < children.length) && (children[i].offsetTop == rowTop))
+            {
+                setProperty(children[i], "height", (maxHeight)+"px");
+                setProperty(children[i], "marginBotton", (maxHeight - getObjHeight(children[i]))+"px");
+                i++;
+            }
+        }
+    }
+}
+            
+
+function resizeAction ()
+{
+    center();
+
+    /* if I'm using the floated block hack for thumbnail divs, then align them
+       into rows */
+    if (getProperty(getFirstChild(document.getElementById("thumbnailPanel")), "display") == "block")
+        align();
+}
+
+function setupIndex ()
+{
+    resizeAction();
+
+    window.onresize = resizeAction;
+}
+
+function startIndex ()
+{
+    // sleep briefly.  If I don't do this, Konqueror doesn't get 
+    // computed style values correctly.
+    setTimeout("setupIndex()", 1);
+}
+
+function showTip ( objid )
+{
+    var container = document.getElementById('thumb-' + objid);
+    var obj = document.getElementById('tip-' + objid);
+    if ( container != null && obj != null )
+    {
+        setProperty(obj, "top", (getTopOffset(container)-60)+"px");
+        setProperty(obj, "left", (getLeftOffset(container)+getObjWidth(container))+"px");
+        setProperty(obj, "display", "block");
+    }
+}
+
+function hideTip ( objid )
+{
+    var obj = document.getElementById('tip-' + objid);
+    if (obj != null)
+        setProperty(document.getElementById('tip-' + objid), "display", "none");
+}
diff --git a/extensions/webalbums/data/albumthemes/BestFit/lib.js b/extensions/webalbums/data/albumthemes/BestFit/lib.js
new file mode 100644
index 0000000..1ccc21b
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/BestFit/lib.js
@@ -0,0 +1,246 @@
+/*************************************************
+* lib.js
+* Copyright (C) 2005-2006 Free Software Foundation, Inc.
+* $Id$
+*
+* Scripts for DHTML photo album template
+* Various library routines used by other scripts
+*************************************************/
+
+// deleted an object from within its parent
+function deleteObject ( parentObj, obj )
+{
+    parentObj.removeChild(obj);
+}
+
+// returns all elements of a certain type (tag) and class
+function getElementsByClass ( tag, classname )
+{
+    var objs = new Array();
+    var all = document.getElementsByTagName(tag);
+    for (var i=0; i<all.length; i++)
+    {
+        if (all[i].className == classname)
+            objs[objs.length] = all[i];
+    }
+    return objs;
+}
+
+// set a property to a given value on an object
+function setProperty ( obj, prop, val )
+{
+    if (obj.style.setProperty) // W3C
+        obj.style.setProperty(prop, val, null);
+    else // MSIE
+        eval("obj.style." + prop + " = \"" + val + "\"");
+}
+ 
+// gets a style property for an object
+function getProperty ( obj, prop )
+{
+    if (document.defaultView && document.defaultView.getComputedStyle)
+    {
+        var val = document.defaultView.getComputedStyle(obj,null).getPropertyValue(prop)
+        if (val)
+            return val;
+        else
+            return eval("document.defaultView.getComputedStyle(obj,null)." + prop);
+    }
+    else if (window.getComputedStyle) // Konqueror
+        return window.getComputedStyle(obj,null).getPropertyValue(prop);
+    else if (obj.currentStyle) // MSIE
+        return eval('obj.currentStyle.' + prop);
+}
+
+function getChildren ( obj )
+{
+    if (obj.children)
+        return obj.children;
+    
+    var children = new Array();
+    for (var i=0; i<obj.childNodes.length; i++)
+    {
+        if (obj.childNodes[i].nodeName.charAt(0) != '#')
+            children[children.length] = obj.childNodes[i];
+    }
+    
+    return children;
+}
+
+function getPropertyPx ( obj, prop )
+{
+    var w = getProperty(obj, prop);
+
+    // find the begining of the number, after a space
+    var a = w.indexOf(" ");
+    if (a == -1)
+        a = 0;
+    // find the end of the number, before "px"
+    var b = w.indexOf("px");
+    
+    if (b != -1)
+        return parseInt(w.substr(a, b-a));
+    else
+        return 0;
+}
+        
+// gets the offset from the top of the screen to the top of an object
+function getTopOffset ( obj )
+{
+    var offset = getProperty(obj, "top");
+    
+    // find the beginning of the number, after a space
+    var a = offset.indexOf(" ");
+    if (a == -1)
+        a = 0;
+    // find the end of the number, before "px"
+    var b = offset.indexOf("px");
+    
+    if (b != -1)
+        return parseInt(offset.substr(a, b-a));
+    else // value not returned in pixels
+        return obj.offsetTop;
+}
+
+// gets the offset from the left of the screen to the left of an object
+function getLeftOffset ( obj )
+{
+    var offset = getProperty(obj, "left");
+    
+    // find the beginning of the number, after a space
+    var a = offset.indexOf(" ");
+    if (a == -1)
+        a = 0;
+    // find the end of the number, before "px"
+    var b = offset.indexOf("px");
+    
+    if (b != -1)
+        return parseInt(offset.substr(a, b-a));
+    else // value not returned in pixels
+        return obj.offsetLeft;
+}
+
+// gets the height of the current window, in pixels
+function getWindowHeight ()
+{
+    if (document.defaultView && document.defaultView.innerHeight)
+        return document.defaultView.innerHeight;
+    else if (window.innerHeight) // Konqueror
+        return window.innerHeight;
+    else if (document.body.offsetHeight) // MSIE
+        return document.body.offsetHeight;
+}
+
+// gets the width of the current window, in pixels
+function getWindowWidth ()
+{
+    if (document.defaultView && document.defaultView.innerWidth)
+        return document.defaultView.innerWidth;
+    else if (window.innerWidth) // Konqueror
+        return window.innerWidth;
+    else if (document.body.clientWidth) // MSIE
+        return document.body.clientWidth;
+}
+
+// gets the width of ab object, in pixels
+function getObjWidth ( obj )
+{
+    var w = getProperty(obj, "width");
+
+    // find the begining of the number, after a space
+    var a = w.indexOf(" ");
+    if (a == -1)
+        a = 0;
+    // find the end of the number, before "px"
+    var b = w.indexOf("px");
+    
+    if (b != -1)
+        return parseInt(w.substr(a, b-a));
+    else // value not returned in pixels
+        return obj.clientWidth;
+}
+        
+// gets the height of an object, in pixels
+function getObjHeight ( obj )
+{
+    var w = getProperty(obj, "height");
+
+    // find the begining of the number, after a space
+    var a = w.indexOf(" ");
+    if (a == -1)
+        a = 0;
+    // find the end of the number, before "px"
+    var b = w.indexOf("px");
+    
+    if (b != -1)
+        return parseInt(w.substr(a, b-a));
+    else // value not returned in pixels
+        return obj.clientHeight;
+}
+        
+// gets the total width of all horizontal borders and padding of an object
+function getHBorder ( obj )
+{
+    // this won't work if the units aren't pixels
+    var leftBorder = parseInt(getProperty(obj, "borderLeftWidth").replace(/[^0-9\.]/gi, ""));
+    var leftPad = parseInt(getProperty(obj, "paddingLeft").replace(/[^0-9\.]/gi, ""));
+    var rightPad = parseInt(getProperty(obj, "paddingRight").replace(/[^0-9\.]/gi, ""));
+    var rightBorder = parseInt(getProperty(obj, "borderRightWidth").replace(/[^0-9\.]/gi, ""));
+            
+    // assign a sane value if the unit wasn't in pixels
+    if (isNaN(leftBorder))
+        leftBorder = 0;
+    if (isNaN(leftPad))
+        leftPad = 0;
+    if (isNaN(rightPad))
+        rightPad = 0;
+    if (isNaN(rightBorder))
+        rightBorder = 0;
+    
+    return leftBorder + leftPad + rightPad + rightBorder;
+}
+        
+// gets the total width of all vertical borders and padding of an object
+function getVBorder ( obj )
+{
+    // this won't work if the units aren't pixels
+    var topBorder = parseInt(getProperty(obj, "borderTopWidth").replace(/[^0-9\.]/gi, ""));
+    var topPad = parseInt(getProperty(obj, "paddingTop").replace(/[^0-9\.]/gi, ""));
+    var bottomPad = parseInt(getProperty(obj, "paddingBottom").replace(/[^0-9\.]/gi, ""));
+    var bottomBorder = parseInt(getProperty(obj, "borderBottomWidth").replace(/[^0-9\.]/gi, ""));
+
+    // assign a sane value if the unit wasn't in pixels
+    if (isNaN(topBorder))
+        topBorder = 0;
+    if (isNaN(topPad))
+        topPad = 0;
+    if (isNaN(bottomPad))
+        bottomPad = 0;
+    if (isNaN(bottomBorder))
+        bottomBorder = 0;
+    
+    return topBorder + topPad + bottomPad + bottomBorder;
+}
+
+function getTotalWidth ( obj )
+{
+    var wid = 0;
+    if (obj.offsetWidth)
+        wid = obj.offsetWidth;
+    else
+    {
+        // need to add object, padding, and border widths
+        wid += getPropertyPx(obj, "border-left-width");
+        wid += getPropertyPx(obj, "padding-left");
+        wid += getPropertyPx(obj, "width");
+        wid += getPropertyPx(obj, "padding-right");
+        wid += getPropertyPx(obj, "border-right-width");
+    }
+    
+    // add margin widths
+    wid += getPropertyPx(obj, "margin-left");
+    wid += getPropertyPx(obj, "margin-right");
+    
+    return wid;
+}
+
diff --git a/extensions/webalbums/data/albumthemes/BestFit/next.png b/extensions/webalbums/data/albumthemes/BestFit/next.png
new file mode 100644
index 0000000..7369709
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/BestFit/next.png differ
diff --git a/extensions/webalbums/data/albumthemes/BestFit/prev.png b/extensions/webalbums/data/albumthemes/BestFit/prev.png
new file mode 100644
index 0000000..d5dfa71
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/BestFit/prev.png differ
diff --git a/extensions/webalbums/data/albumthemes/BestFit/preview.png b/extensions/webalbums/data/albumthemes/BestFit/preview.png
new file mode 100644
index 0000000..6682b45
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/BestFit/preview.png differ
diff --git a/extensions/webalbums/data/albumthemes/BestFit/thumbnail.gthtml b/extensions/webalbums/data/albumthemes/BestFit/thumbnail.gthtml
new file mode 100644
index 0000000..6a1d79f
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/BestFit/thumbnail.gthtml
@@ -0,0 +1,163 @@
+      <div class="thumbnail" id="thumb-<gthumb:image_idx/>">
+        <div style="width: inherit;"> <!-- necessary to make "display: -moz-inline-box" work properly -->
+          <div class="shadowbox">
+            <div class="thumbnailFrame">
+              <a href="<gthumb:image_link/>" onmouseover="showTip('<gthumb:image_idx/>');" onmouseout="hideTip('<gthumb:image_idx/>');">
+            
+                <!-- image thumbnail -->
+                <gthumb:image thumbnail class="thumbnail" alt="picture thumbnail"/>
+              </a>
+            </div>
+          </div>
+          
+          <!-- image comments -->
+          <gthumb:if "comment_visibility_index || place_visibility_index 
+            || date_time_visibility_index" />
+            <div class="caption">
+              <gthumb:if "comment_visibility_index"/>
+              <div class="comments">
+                <gthumb:comment/>
+              </div>
+              <gthumb:end/>
+              <gthumb:if "place_visibility_index"/>
+              <div class="location">
+                <gthumb:place/>
+              </div>
+              <gthumb:end/>
+              <gthumb:if "date_time_visibility_index"/>
+              <div class="time">
+                <gthumb:date_time/>
+              </div>
+              <gthumb:end/>
+            </div>
+          <gthumb:end/>
+        </div>
+            
+        <!-- open properties in a pop-up tool-tip -->
+        <!-- this didn't work properly with CSS, so I'm using JavaScript -->
+        <gthumb:if "file_name_visibility_index || image_dim_visibility_index 
+          || file_size_visibility_index || exif_date_time_visibility_index
+          || exif_exposure_time_visibility_index || exif_exposure_mode_visibility_index
+          || exif_flash_visibility_index || exif_shutter_speed_visibility_index
+          || exif_aperture_value_visibility_index || exif_focal_length_visibility_index
+          || exif_camera_model_visibility_index" />
+          <div class="tip" id="tip-<gthumb:image_idx/>" style="width: 200px;">
+            <div class="caption">
+              <table>
+                <col width="0*" />
+                <col width="100%" />
+                <gthumb:if "file_name_visibility_index"/>
+                  <tr>
+                    <td>
+                      <span class="property"><gthumb:text>Image</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:file_name/>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+                <gthumb:if "image_dim_visibility_index"/>
+                  <tr>
+                    <td>
+                      <span class="property"><gthumb:text>Dimensions</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:image_dim/>&nbsp;<gthumb:text>pixels</gthumb:text>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+                <gthumb:if "file_size_visibility_index"/>
+                  <tr>
+                    <td>
+                      <span class="property"><gthumb:text>Bytes</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:file_size/>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+                <gthumb:if "exif_date_time_visibility_index"/>
+                  <tr>
+                    <td>
+                      <span class="property"><gthumb:text>Date</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:exif:date_time/>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+                <gthumb:if "exif_exposure_time_visibility_index"/>
+                  <tr align="left">
+                    <td>
+                      <span class="property"><gthumb:text>Exposure time</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:exif:exposure_time/>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+                <gthumb:if "exif_exposure_mode_visibility_index"/>
+                  <tr align="left">
+                    <td>
+                      <span class="property"><gthumb:text>Exposure mode</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:exif:exposure_mode/>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+                <gthumb:if "exif_flash_visibility_index"/>
+                  <tr align="left">
+                    <td>
+                      <span class="property"><gthumb:text>Flash</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:exif:flash/>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+                <gthumb:if "exif_shutter_speed_visibility_index"/>
+                  <tr align="left">
+                    <td>
+                      <span class="property"><gthumb:text>Shutter speed</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:exif:shutter_speed/>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+                <gthumb:if "exif_aperture_value_visibility_index"/>
+                  <tr align="left">
+                    <td>
+                      <span class="property"><gthumb:text>Aperture value</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:exif:aperture_value/>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+                <gthumb:if "exif_focal_length_visibility_index"/>
+                  <tr align="left">
+                    <td>
+                      <span class="property"><gthumb:text>Focal length</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:exif:focal_length/>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+                <gthumb:if "exif_camera_model_visibility_index"/>
+                  <tr align="left">
+                    <td>
+                      <span class="property"><gthumb:text>Camera model</gthumb:text></span>
+                    </td>
+                    <td>
+                      <gthumb:exif:camera_model/>
+                    </td>
+                  </tr>
+                <gthumb:end/>
+              </table>
+            </div>
+          </div>
+        <gthumb:end />
+      </div>
diff --git a/extensions/webalbums/data/albumthemes/Classic/.cvsignore b/extensions/webalbums/data/albumthemes/Classic/.cvsignore
new file mode 100644
index 0000000..282522d
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Classic/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/extensions/webalbums/data/albumthemes/Classic/1.gif b/extensions/webalbums/data/albumthemes/Classic/1.gif
new file mode 100644
index 0000000..5138ff5
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Classic/1.gif differ
diff --git a/extensions/webalbums/data/albumthemes/Classic/Makefile.am b/extensions/webalbums/data/albumthemes/Classic/Makefile.am
new file mode 100644
index 0000000..7266e2a
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Classic/Makefile.am
@@ -0,0 +1,25 @@
+gthtml_files =			\
+	image.gthtml		\
+	index.gthtml		\
+	thumbnail.gthtml
+
+themename  = Classic
+themedir   = $(datadir)/gthumb/albumthemes/$(themename)
+theme_DATA =			\
+	1.gif			\
+	background.gif		\
+	back.png		\
+	bot.png			\
+	left.png		\
+	next.png		\
+	prev.png		\
+	preview.png		\
+	right.png		\
+	top.png                 \
+	layout.css		\
+	style.css		\
+	$(gthtml_files)
+
+EXTRA_DIST = $(theme_DATA) 
+
+-include $(top_srcdir)/git.mk
diff --git a/extensions/webalbums/data/albumthemes/Classic/back.png b/extensions/webalbums/data/albumthemes/Classic/back.png
new file mode 100644
index 0000000..194edb4
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Classic/back.png differ
diff --git a/extensions/webalbums/data/albumthemes/Classic/background.gif b/extensions/webalbums/data/albumthemes/Classic/background.gif
new file mode 100644
index 0000000..e565824
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Classic/background.gif differ
diff --git a/extensions/webalbums/data/albumthemes/Classic/bot.png b/extensions/webalbums/data/albumthemes/Classic/bot.png
new file mode 100644
index 0000000..28cfd15
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Classic/bot.png differ
diff --git a/extensions/webalbums/data/albumthemes/Classic/image.gthtml b/extensions/webalbums/data/albumthemes/Classic/image.gthtml
new file mode 100644
index 0000000..8d6d928
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Classic/image.gthtml
@@ -0,0 +1,194 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="<gthumb:language/>">
+<head>
+<gthumb:if images > 1 />
+  <title><gthumb:header/> (<gthumb:image_idx/>/<gthumb:images/>)</title>
+<gthumb:else/>
+  <title><gthumb:header/></title>
+<gthumb:end/>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta name="Generator" content="gThumb Image Viewer" />
+  <link href="<gthumb:theme_link src='layout.css'/>" rel="stylesheet" type="text/css" />
+  <link href="<gthumb:theme_link src='style.css'/>" rel="stylesheet" type="text/css" />
+</head>
+<body>
+
+<table class="full_size" summary="page body">
+<tr>
+<td class="title">
+
+<!-- Title -->
+<table class="title" summary="title bar">
+<tr>
+  <td>
+  <span class="title"><gthumb:header/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td class="nav_bar">
+
+<!-- Navigation Bar -->
+<table class="full_size" summary="navigation bar">
+<tr>
+  <td class="button">
+    <a href="<gthumb:page_link idx_relative=0 image_idx/>">
+        <img src="<gthumb:theme_link src='back.png'/>" alt="Back" />
+    </a>
+  </td>
+  <td>
+    &nbsp;
+  </td>
+  <td class="button">
+<gthumb:if image_idx == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:image_link idx_relative=-1/>">
+        <img src="<gthumb:theme_link src='prev.png'/>" alt="Previous" />
+    </a>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if images == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <span class="page_index"><gthumb:image_idx/> / <gthumb:images/></span>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if image_idx == images />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:image_link idx_relative=+1/>">
+        <img src="<gthumb:theme_link src='next.png'/>" alt="Next" />
+    </a>
+<gthumb:end/>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td>
+
+<!-- Thumbnails and preview -->
+<table class="row" summary="preview">
+<tr>
+  <td>
+    <a href="<gthumb:file_name with_relative_path/>"><gthumb:image preview class="preview"/>
+    </a>
+  </td>
+</tr>
+</table>
+
+<!-- Comment and Exif data -->
+<div class="properties">
+<div class="preview_comment">
+  <span class="comment">
+    <gthumb:if comment_visibility_image/>
+      <gthumb:comment/> <br />
+    <gthumb:end/>
+    <gthumb:if place_visibility_image/>
+      <gthumb:place/> <br />
+    <gthumb:end/>
+    <gthumb:if date_time_visibility_image/>
+      <gthumb:date_time/>
+    <gthumb:end/>
+  </span><br />
+</div>
+<table summary="image properties">
+<gthumb:if file_name_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Image</gthumb:text></span></td>
+  <td><span class="property_value file_name"><gthumb:file_name utf8="1" /></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if image_dim_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Dimensions</gthumb:text></span></td>
+  <td><span class="property_value image_dim"><gthumb:image_dim/> pixels</span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if file_size_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Bytes</gthumb:text></span></td>
+  <td><span class="property_value file_size"><gthumb:file_size/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_date_time_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Date</gthumb:text></span></td>
+  <td><span class="property_value date_time"><gthumb:exif:date_time/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_exposure_time_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Exposure time</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:exposure_time/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_exposure_mode_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Exposure mode</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:exposure_mode/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_flash_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Flash</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:flash/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_shutter_speed_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Shutter speed</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:shutter_speed/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_aperture_value_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Aperture value</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:aperture_value/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_focal_length_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Focal length</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:focal_length/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_camera_model_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Camera model</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:camera_model/></span></td>
+</tr>
+<gthumb:end/>
+</table>
+</div>
+
+</td>
+</tr>
+<tr>
+<td class="footer">
+
+<!-- Footer -->
+<table class="full_size" summary="copyright">
+<tr>
+  <td>
+  <span class="copyright"><gthumb:footer/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+</table>
+
+</body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/Classic/index.gthtml b/extensions/webalbums/data/albumthemes/Classic/index.gthtml
new file mode 100644
index 0000000..4f9254f
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Classic/index.gthtml
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="<gthumb:language/>">
+<head>
+<gthumb:if pages > 1 />
+  <title><gthumb:header/> (<gthumb:page_idx/>/<gthumb:pages/>)</title>
+<gthumb:else/>
+  <title><gthumb:header/></title>
+<gthumb:end/>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta name="Generator" content="gThumb Image Viewer" />
+  <link href="<gthumb:theme_link src='layout.css'/>" rel="stylesheet" type="text/css" />
+  <link href="<gthumb:theme_link src='style.css'/>" rel="stylesheet" type="text/css" />
+</head>
+<gthumb:set_var thumbnail_width="159" thumbnail_height="120" />
+<gthumb:set_var preview_width="450" preview_height="400" />
+<body>
+
+<table class="full_size" summary="page body">
+<tr>
+<td class="title">
+
+<!-- Title -->
+<table class="title" summary="title bar">
+<tr>
+  <td>
+  <span class="title"><gthumb:header/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td class="nav_bar">
+
+<!-- Navigation Bar -->
+<table class="full_size" summary="navigation bar">
+<tr>
+  <td>
+    &nbsp;
+  </td>
+  <td class="button">
+<gthumb:if page_idx == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:page_link idx_relative=-1/>">
+        <img src="<gthumb:theme_link src='prev.png'/>" alt="Previous" />
+    </a>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if pages == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <span class="page_index"><gthumb:page_idx/> / <gthumb:pages/></span>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if page_idx == pages />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:page_link idx_relative=+1/>">
+        <img src="<gthumb:theme_link src='next.png'/>" alt="Next" />
+    </a>
+<gthumb:end/>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td>
+
+<!-- Photos -->
+<div class="thumbnails">
+<table summary="thumbnails">
+<gthumb:table/>
+</table>
+</div>
+
+</td>
+</tr>
+<tr>
+<td class="footer">
+
+<!-- Footer -->
+<table class="full_size" summary="copyright">
+<tr>
+  <td>
+  <span class="copyright"><gthumb:footer/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+</table>
+
+</body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/Classic/layout.css b/extensions/webalbums/data/albumthemes/Classic/layout.css
new file mode 100644
index 0000000..93083c5
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Classic/layout.css
@@ -0,0 +1,142 @@
+/* Gthumb "Classic" layout, v. 2005-02-25 */
+
+html, body {
+	height: 100%;
+	padding: 0;
+	margin: 0;
+}
+
+table {
+	border-collapse: collapse;
+	border-width: 0;
+}
+
+td {
+	border-width: 0;
+	padding: 0;
+	vertical-align: middle;
+	text-align: center;
+}
+
+/* Title, header, footer */
+
+table.full_size {
+	width: 100%;
+	height: 100%;
+}
+
+table.row {
+	width: 100%;
+}
+
+td.title {
+	height: 4em;
+	vertical-align: middle; 
+}
+
+table.title {
+	height: 4em;
+	width: 100%;
+}
+
+td.nav_bar {
+	height: 30px;
+}
+
+td.button {
+	width: 60px;
+	white-space: nowrap;
+}
+
+td.button img,
+td.button a img {
+	border-style: none;
+}
+
+td.footer {
+	height: 3em;
+}
+
+
+/* image.gthtml */
+
+td.left_thumbnail {
+	width: 115px;
+	text-align: left;
+	padding-left: 10px;
+}
+
+td.right_thumbnail {
+	width: 115px;
+	text-align: right;
+	padding-right: 10px;
+}
+
+div.properties {
+	margin-top: 1em;
+	margin-left: 10%;
+	text-align: left;
+}
+
+div.preview_comment {
+	margin-bottom: 1em;
+}
+
+div.properties table td {
+	text-align: left;
+	padding: 0.2em 1em 0.2em 0em;
+}
+
+
+
+/* index.gthtml */
+
+div.thumbnails table {
+	margin:auto;
+}
+
+td.td_index {
+	width: 215px;
+	padding: 8px 5px 8px 5px;
+	vertical-align: top;
+}
+
+
+/* thumbnail.gthtml */
+
+table.photo {
+	cursor: pointer;
+}
+
+td.photo {
+	background-color: white;
+	width: 162px;
+	height: 122px;
+}
+
+img.photo_top {
+	border-style: none;
+	vertical-align: bottom;
+}
+
+img.photo_bottom {
+	border-style: none;
+	vertical-align: top;
+}
+
+img.photo_left {
+	border-style: none;
+	text-align: right;
+	vertical-align: top;
+}
+
+img.photo_right {
+	border-style: none;
+	text-align: left;
+	vertical-align: top;
+}
+
+img.photo_center {
+	border-style: none;
+	vertical-align: top;
+}
diff --git a/extensions/webalbums/data/albumthemes/Classic/left.png b/extensions/webalbums/data/albumthemes/Classic/left.png
new file mode 100644
index 0000000..a136b65
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Classic/left.png differ
diff --git a/extensions/webalbums/data/albumthemes/Classic/next.png b/extensions/webalbums/data/albumthemes/Classic/next.png
new file mode 100644
index 0000000..ae5a8e8
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Classic/next.png differ
diff --git a/extensions/webalbums/data/albumthemes/Classic/prev.png b/extensions/webalbums/data/albumthemes/Classic/prev.png
new file mode 100644
index 0000000..b340430
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Classic/prev.png differ
diff --git a/extensions/webalbums/data/albumthemes/Classic/preview.png b/extensions/webalbums/data/albumthemes/Classic/preview.png
new file mode 100644
index 0000000..9b14beb
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Classic/preview.png differ
diff --git a/extensions/webalbums/data/albumthemes/Classic/right.png b/extensions/webalbums/data/albumthemes/Classic/right.png
new file mode 100644
index 0000000..fcd11ab
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Classic/right.png differ
diff --git a/extensions/webalbums/data/albumthemes/Classic/style.css b/extensions/webalbums/data/albumthemes/Classic/style.css
new file mode 100644
index 0000000..a5e8eee
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Classic/style.css
@@ -0,0 +1,93 @@
+/* Gthumb "Classic" style, v. 2005-02-25 */
+
+/* Common */
+
+body {
+	background-color: #4B4B4B;
+	color: white;
+}
+
+span.title {
+	font-weight: bold;
+	font-size: 150%;
+}
+
+span.page_index {
+	font-weight: bold;
+	font-size: small;
+}
+
+span.file_name {
+	font-family: monospace;
+}
+
+span.copyright {
+	font-size: small;
+}
+
+
+/* image.gthtml */
+
+
+img.preview {
+	border: solid 2px white;
+}
+
+img.thumbnail {
+	border: solid 2px white;
+}
+
+div.preview_comment {
+	text-align: justify;
+}
+
+span.comment {
+	font-size: small;
+}
+
+div.properties {
+	width: 80%;
+}
+
+span.property {
+	font-size: small;
+	font-weight: bold;
+	color: #969696;
+}
+
+span.property_value {
+	font-size: small;
+	color: white;
+}
+
+/* index.gthtml */
+
+td.td_index {
+	color: #969696;
+}
+
+td.td_index span.image_dim {
+	font-weight: bold;
+}
+
+
+/* links */
+
+a:link { 
+	font-weight: bold;
+	text-decoration: none;
+	color: white;
+}
+
+a:visited { 
+	font-weight: bold;
+	text-decoration: none;
+	color: white;
+}
+
+a:hover {
+	font-weight: bold;
+	text-decoration: none;
+	color: #FFD700;
+}
+
diff --git a/extensions/webalbums/data/albumthemes/Classic/thumbnail.gthtml b/extensions/webalbums/data/albumthemes/Classic/thumbnail.gthtml
new file mode 100644
index 0000000..6eb7c29
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Classic/thumbnail.gthtml
@@ -0,0 +1,71 @@
+      <table class="photo" summary="photo">
+      <tr>
+        <td colspan="3"><img class="photo_top" src="<gthumb:theme_link src='top.png'/>" alt="Top" /></td>
+      </tr>
+      <tr>
+        <td><img class="photo_left" src="<gthumb:theme_link src='left.png'/>" alt="Left" /></td>
+        <td class="photo">
+          <a href="<gthumb:image_link/>">
+            <gthumb:image thumbnail class="photo_center" /></a>
+        </td>
+        <td><img class="photo_right" src="<gthumb:theme_link src='right.png'/>" alt="Right" /></td>
+      </tr>
+      <tr>
+        <td colspan="3"><img class="photo_bottom" src="<gthumb:theme_link src='bot.png'/>" alt="Bottom" /></td>
+      </tr>
+      </table>
+
+<span class="comment">
+  <gthumb:if comment_visibility_index/>
+    <gthumb:comment/> <br />
+  <gthumb:end/>
+  <gthumb:if place_visibility_index/>
+    <gthumb:place/> <br />
+  <gthumb:end/>
+  <gthumb:if date_time_visibility_index/>
+    <gthumb:date_time/>
+  <gthumb:end/>
+</span><br />
+
+<gthumb:if image_dim_visibility_index/>
+      <span class="property_value image_dim"><gthumb:image_dim/></span>
+<gthumb:if file_size_visibility_index/>
+      <span class="property_value file_size">(<gthumb:file_size/>)</span>
+<gthumb:end/>
+<gthumb:else/>
+<gthumb:if file_size_visibility_index/>
+      <span class="property_value file_size"><gthumb:file_size/></span>
+<gthumb:end/>
+<gthumb:end/>
+<gthumb:if image_dim_visibility_index || file_size_visibility_index/>
+      <br />
+<gthumb:end/>
+
+<gthumb:if file_name_visibility_index/>
+      <span class="property_value file_name"><gthumb:file_name utf8="1" /></span><br />
+<gthumb:end/>
+
+<gthumb:if exif_date_time_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:date_time/></span><br />
+<gthumb:end/>
+<gthumb:if exif_exposure_time_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:exposure_time/></span><br />
+<gthumb:end/>
+<gthumb:if exif_exposure_mode_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:exposure_mode/></span><br />
+<gthumb:end/>
+<gthumb:if exif_flash_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:flash/></span><br />
+<gthumb:end/>
+<gthumb:if exif_shutter_speed_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:shutter_speed/></span><br />
+<gthumb:end/>
+<gthumb:if exif_aperture_value_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:aperture_value/></span><br />
+<gthumb:end/>
+<gthumb:if exif_focal_length_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:focal_length/></span><br />
+<gthumb:end/>
+<gthumb:if exif_camera_model_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:camera_model/></span>
+<gthumb:end/>
diff --git a/extensions/webalbums/data/albumthemes/Classic/top.png b/extensions/webalbums/data/albumthemes/Classic/top.png
new file mode 100644
index 0000000..3759e01
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Classic/top.png differ
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/.cvsignore b/extensions/webalbums/data/albumthemes/ClassicClips/.cvsignore
new file mode 100644
index 0000000..282522d
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/ClassicClips/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/1.gif b/extensions/webalbums/data/albumthemes/ClassicClips/1.gif
new file mode 100644
index 0000000..59415ba
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/ClassicClips/1.gif differ
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/Makefile.am b/extensions/webalbums/data/albumthemes/ClassicClips/Makefile.am
new file mode 100644
index 0000000..ae2de5c
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/ClassicClips/Makefile.am
@@ -0,0 +1,26 @@
+gthtml_files =			\
+	image.gthtml		\
+	index.gthtml		\
+	thumbnail.gthtml
+
+themename  = ClassicClips
+themedir   = $(datadir)/gthumb/albumthemes/$(themename)
+theme_DATA =			\
+	1.gif			\
+	background.gif		\
+	back.png		\
+	bot.png			\
+	left.png		\
+	next.png		\
+	prev.png		\
+	preview.png		\
+	right.png		\
+	top.png			\
+	layout.css		\
+	style.css		\
+	$(gthtml_files)
+
+EXTRA_DIST = $(theme_DATA) 
+
+
+-include $(top_srcdir)/git.mk
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/back.png b/extensions/webalbums/data/albumthemes/ClassicClips/back.png
new file mode 100644
index 0000000..61fdd8b
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/ClassicClips/back.png differ
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/background.gif b/extensions/webalbums/data/albumthemes/ClassicClips/background.gif
new file mode 100644
index 0000000..e565824
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/ClassicClips/background.gif differ
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/bot.png b/extensions/webalbums/data/albumthemes/ClassicClips/bot.png
new file mode 100644
index 0000000..3a81148
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/ClassicClips/bot.png differ
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/image.gthtml b/extensions/webalbums/data/albumthemes/ClassicClips/image.gthtml
new file mode 100644
index 0000000..8d6d928
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/ClassicClips/image.gthtml
@@ -0,0 +1,194 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="<gthumb:language/>">
+<head>
+<gthumb:if images > 1 />
+  <title><gthumb:header/> (<gthumb:image_idx/>/<gthumb:images/>)</title>
+<gthumb:else/>
+  <title><gthumb:header/></title>
+<gthumb:end/>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta name="Generator" content="gThumb Image Viewer" />
+  <link href="<gthumb:theme_link src='layout.css'/>" rel="stylesheet" type="text/css" />
+  <link href="<gthumb:theme_link src='style.css'/>" rel="stylesheet" type="text/css" />
+</head>
+<body>
+
+<table class="full_size" summary="page body">
+<tr>
+<td class="title">
+
+<!-- Title -->
+<table class="title" summary="title bar">
+<tr>
+  <td>
+  <span class="title"><gthumb:header/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td class="nav_bar">
+
+<!-- Navigation Bar -->
+<table class="full_size" summary="navigation bar">
+<tr>
+  <td class="button">
+    <a href="<gthumb:page_link idx_relative=0 image_idx/>">
+        <img src="<gthumb:theme_link src='back.png'/>" alt="Back" />
+    </a>
+  </td>
+  <td>
+    &nbsp;
+  </td>
+  <td class="button">
+<gthumb:if image_idx == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:image_link idx_relative=-1/>">
+        <img src="<gthumb:theme_link src='prev.png'/>" alt="Previous" />
+    </a>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if images == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <span class="page_index"><gthumb:image_idx/> / <gthumb:images/></span>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if image_idx == images />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:image_link idx_relative=+1/>">
+        <img src="<gthumb:theme_link src='next.png'/>" alt="Next" />
+    </a>
+<gthumb:end/>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td>
+
+<!-- Thumbnails and preview -->
+<table class="row" summary="preview">
+<tr>
+  <td>
+    <a href="<gthumb:file_name with_relative_path/>"><gthumb:image preview class="preview"/>
+    </a>
+  </td>
+</tr>
+</table>
+
+<!-- Comment and Exif data -->
+<div class="properties">
+<div class="preview_comment">
+  <span class="comment">
+    <gthumb:if comment_visibility_image/>
+      <gthumb:comment/> <br />
+    <gthumb:end/>
+    <gthumb:if place_visibility_image/>
+      <gthumb:place/> <br />
+    <gthumb:end/>
+    <gthumb:if date_time_visibility_image/>
+      <gthumb:date_time/>
+    <gthumb:end/>
+  </span><br />
+</div>
+<table summary="image properties">
+<gthumb:if file_name_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Image</gthumb:text></span></td>
+  <td><span class="property_value file_name"><gthumb:file_name utf8="1" /></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if image_dim_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Dimensions</gthumb:text></span></td>
+  <td><span class="property_value image_dim"><gthumb:image_dim/> pixels</span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if file_size_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Bytes</gthumb:text></span></td>
+  <td><span class="property_value file_size"><gthumb:file_size/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_date_time_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Date</gthumb:text></span></td>
+  <td><span class="property_value date_time"><gthumb:exif:date_time/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_exposure_time_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Exposure time</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:exposure_time/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_exposure_mode_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Exposure mode</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:exposure_mode/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_flash_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Flash</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:flash/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_shutter_speed_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Shutter speed</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:shutter_speed/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_aperture_value_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Aperture value</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:aperture_value/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_focal_length_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Focal length</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:focal_length/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_camera_model_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Camera model</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:camera_model/></span></td>
+</tr>
+<gthumb:end/>
+</table>
+</div>
+
+</td>
+</tr>
+<tr>
+<td class="footer">
+
+<!-- Footer -->
+<table class="full_size" summary="copyright">
+<tr>
+  <td>
+  <span class="copyright"><gthumb:footer/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+</table>
+
+</body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/index.gthtml b/extensions/webalbums/data/albumthemes/ClassicClips/index.gthtml
new file mode 100644
index 0000000..2196660
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/ClassicClips/index.gthtml
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="<gthumb:language/>">
+<head>
+<gthumb:if pages > 1 />
+  <title><gthumb:header/> (<gthumb:page_idx/>/<gthumb:pages/>)</title>
+<gthumb:else/>
+  <title><gthumb:header/></title>
+<gthumb:end/>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta name="Generator" content="gThumb Image Viewer" />
+  <link href="<gthumb:theme_link src='layout.css'/>" rel="stylesheet" type="text/css" />
+  <link href="<gthumb:theme_link src='style.css'/>" rel="stylesheet" type="text/css" />
+</head>
+<gthumb:set_var thumbnail_width="159" thumbnail_height="120"/>
+<gthumb:set_var preview_width="450" preview_height="400"/>
+<body>
+
+<table class="full_size" summary="page body">
+<tr>
+<td class="title">
+
+<!-- Title -->
+<table class="title" summary="title bar">
+<tr>
+  <td>
+  <span class="title"><gthumb:header/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td class="nav_bar">
+
+<!-- Navigation Bar -->
+<table class="full_size" summary="navigation bar">
+<tr>
+  <td>
+    &nbsp;
+  </td>
+  <td class="button">
+<gthumb:if page_idx == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:page_link idx_relative=-1/>">
+        <img src="<gthumb:theme_link src='prev.png'/>" alt="Previous" />
+    </a>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if pages == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <span class="page_index"><gthumb:page_idx/> / <gthumb:pages/></span>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if page_idx == pages />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:page_link idx_relative=+1/>">
+        <img src="<gthumb:theme_link src='next.png'/>" alt="Next" />
+    </a>
+<gthumb:end/>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td>
+
+<!-- Photos -->
+<div class="thumbnails">
+<table summary="thumbnails">
+<gthumb:table/>
+</table>
+</div>
+
+</td>
+</tr>
+<tr>
+<td class="footer">
+
+<!-- Footer -->
+<table class="full_size" summary="copyright">
+<tr>
+  <td>
+  <span class="copyright"><gthumb:footer/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+</table>
+
+</body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/layout.css b/extensions/webalbums/data/albumthemes/ClassicClips/layout.css
new file mode 100644
index 0000000..93083c5
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/ClassicClips/layout.css
@@ -0,0 +1,142 @@
+/* Gthumb "Classic" layout, v. 2005-02-25 */
+
+html, body {
+	height: 100%;
+	padding: 0;
+	margin: 0;
+}
+
+table {
+	border-collapse: collapse;
+	border-width: 0;
+}
+
+td {
+	border-width: 0;
+	padding: 0;
+	vertical-align: middle;
+	text-align: center;
+}
+
+/* Title, header, footer */
+
+table.full_size {
+	width: 100%;
+	height: 100%;
+}
+
+table.row {
+	width: 100%;
+}
+
+td.title {
+	height: 4em;
+	vertical-align: middle; 
+}
+
+table.title {
+	height: 4em;
+	width: 100%;
+}
+
+td.nav_bar {
+	height: 30px;
+}
+
+td.button {
+	width: 60px;
+	white-space: nowrap;
+}
+
+td.button img,
+td.button a img {
+	border-style: none;
+}
+
+td.footer {
+	height: 3em;
+}
+
+
+/* image.gthtml */
+
+td.left_thumbnail {
+	width: 115px;
+	text-align: left;
+	padding-left: 10px;
+}
+
+td.right_thumbnail {
+	width: 115px;
+	text-align: right;
+	padding-right: 10px;
+}
+
+div.properties {
+	margin-top: 1em;
+	margin-left: 10%;
+	text-align: left;
+}
+
+div.preview_comment {
+	margin-bottom: 1em;
+}
+
+div.properties table td {
+	text-align: left;
+	padding: 0.2em 1em 0.2em 0em;
+}
+
+
+
+/* index.gthtml */
+
+div.thumbnails table {
+	margin:auto;
+}
+
+td.td_index {
+	width: 215px;
+	padding: 8px 5px 8px 5px;
+	vertical-align: top;
+}
+
+
+/* thumbnail.gthtml */
+
+table.photo {
+	cursor: pointer;
+}
+
+td.photo {
+	background-color: white;
+	width: 162px;
+	height: 122px;
+}
+
+img.photo_top {
+	border-style: none;
+	vertical-align: bottom;
+}
+
+img.photo_bottom {
+	border-style: none;
+	vertical-align: top;
+}
+
+img.photo_left {
+	border-style: none;
+	text-align: right;
+	vertical-align: top;
+}
+
+img.photo_right {
+	border-style: none;
+	text-align: left;
+	vertical-align: top;
+}
+
+img.photo_center {
+	border-style: none;
+	vertical-align: top;
+}
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/left.png b/extensions/webalbums/data/albumthemes/ClassicClips/left.png
new file mode 100644
index 0000000..917a236
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/ClassicClips/left.png differ
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/next.png b/extensions/webalbums/data/albumthemes/ClassicClips/next.png
new file mode 100644
index 0000000..c622fbf
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/ClassicClips/next.png differ
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/prev.png b/extensions/webalbums/data/albumthemes/ClassicClips/prev.png
new file mode 100644
index 0000000..2b438f2
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/ClassicClips/prev.png differ
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/preview.png b/extensions/webalbums/data/albumthemes/ClassicClips/preview.png
new file mode 100644
index 0000000..77d33e3
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/ClassicClips/preview.png differ
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/right.png b/extensions/webalbums/data/albumthemes/ClassicClips/right.png
new file mode 100644
index 0000000..8ef2c3a
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/ClassicClips/right.png differ
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/style.css b/extensions/webalbums/data/albumthemes/ClassicClips/style.css
new file mode 100644
index 0000000..a5e8eee
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/ClassicClips/style.css
@@ -0,0 +1,93 @@
+/* Gthumb "Classic" style, v. 2005-02-25 */
+
+/* Common */
+
+body {
+	background-color: #4B4B4B;
+	color: white;
+}
+
+span.title {
+	font-weight: bold;
+	font-size: 150%;
+}
+
+span.page_index {
+	font-weight: bold;
+	font-size: small;
+}
+
+span.file_name {
+	font-family: monospace;
+}
+
+span.copyright {
+	font-size: small;
+}
+
+
+/* image.gthtml */
+
+
+img.preview {
+	border: solid 2px white;
+}
+
+img.thumbnail {
+	border: solid 2px white;
+}
+
+div.preview_comment {
+	text-align: justify;
+}
+
+span.comment {
+	font-size: small;
+}
+
+div.properties {
+	width: 80%;
+}
+
+span.property {
+	font-size: small;
+	font-weight: bold;
+	color: #969696;
+}
+
+span.property_value {
+	font-size: small;
+	color: white;
+}
+
+/* index.gthtml */
+
+td.td_index {
+	color: #969696;
+}
+
+td.td_index span.image_dim {
+	font-weight: bold;
+}
+
+
+/* links */
+
+a:link { 
+	font-weight: bold;
+	text-decoration: none;
+	color: white;
+}
+
+a:visited { 
+	font-weight: bold;
+	text-decoration: none;
+	color: white;
+}
+
+a:hover {
+	font-weight: bold;
+	text-decoration: none;
+	color: #FFD700;
+}
+
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/thumbnail.gthtml b/extensions/webalbums/data/albumthemes/ClassicClips/thumbnail.gthtml
new file mode 100644
index 0000000..6eb7c29
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/ClassicClips/thumbnail.gthtml
@@ -0,0 +1,71 @@
+      <table class="photo" summary="photo">
+      <tr>
+        <td colspan="3"><img class="photo_top" src="<gthumb:theme_link src='top.png'/>" alt="Top" /></td>
+      </tr>
+      <tr>
+        <td><img class="photo_left" src="<gthumb:theme_link src='left.png'/>" alt="Left" /></td>
+        <td class="photo">
+          <a href="<gthumb:image_link/>">
+            <gthumb:image thumbnail class="photo_center" /></a>
+        </td>
+        <td><img class="photo_right" src="<gthumb:theme_link src='right.png'/>" alt="Right" /></td>
+      </tr>
+      <tr>
+        <td colspan="3"><img class="photo_bottom" src="<gthumb:theme_link src='bot.png'/>" alt="Bottom" /></td>
+      </tr>
+      </table>
+
+<span class="comment">
+  <gthumb:if comment_visibility_index/>
+    <gthumb:comment/> <br />
+  <gthumb:end/>
+  <gthumb:if place_visibility_index/>
+    <gthumb:place/> <br />
+  <gthumb:end/>
+  <gthumb:if date_time_visibility_index/>
+    <gthumb:date_time/>
+  <gthumb:end/>
+</span><br />
+
+<gthumb:if image_dim_visibility_index/>
+      <span class="property_value image_dim"><gthumb:image_dim/></span>
+<gthumb:if file_size_visibility_index/>
+      <span class="property_value file_size">(<gthumb:file_size/>)</span>
+<gthumb:end/>
+<gthumb:else/>
+<gthumb:if file_size_visibility_index/>
+      <span class="property_value file_size"><gthumb:file_size/></span>
+<gthumb:end/>
+<gthumb:end/>
+<gthumb:if image_dim_visibility_index || file_size_visibility_index/>
+      <br />
+<gthumb:end/>
+
+<gthumb:if file_name_visibility_index/>
+      <span class="property_value file_name"><gthumb:file_name utf8="1" /></span><br />
+<gthumb:end/>
+
+<gthumb:if exif_date_time_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:date_time/></span><br />
+<gthumb:end/>
+<gthumb:if exif_exposure_time_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:exposure_time/></span><br />
+<gthumb:end/>
+<gthumb:if exif_exposure_mode_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:exposure_mode/></span><br />
+<gthumb:end/>
+<gthumb:if exif_flash_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:flash/></span><br />
+<gthumb:end/>
+<gthumb:if exif_shutter_speed_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:shutter_speed/></span><br />
+<gthumb:end/>
+<gthumb:if exif_aperture_value_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:aperture_value/></span><br />
+<gthumb:end/>
+<gthumb:if exif_focal_length_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:focal_length/></span><br />
+<gthumb:end/>
+<gthumb:if exif_camera_model_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:camera_model/></span>
+<gthumb:end/>
diff --git a/extensions/webalbums/data/albumthemes/ClassicClips/top.png b/extensions/webalbums/data/albumthemes/ClassicClips/top.png
new file mode 100644
index 0000000..46b52c4
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/ClassicClips/top.png differ
diff --git a/extensions/webalbums/data/albumthemes/Flicker/.cvsignore b/extensions/webalbums/data/albumthemes/Flicker/.cvsignore
new file mode 100644
index 0000000..282522d
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Flicker/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/extensions/webalbums/data/albumthemes/Flicker/Makefile.am b/extensions/webalbums/data/albumthemes/Flicker/Makefile.am
new file mode 100644
index 0000000..f11697c
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Flicker/Makefile.am
@@ -0,0 +1,16 @@
+gthtml_files =			\
+	image.gthtml		\
+	index.gthtml		\
+	thumbnail.gthtml
+
+themename  = Flicker
+themedir   = $(datadir)/gthumb/albumthemes/$(themename)
+theme_DATA =			\
+	preview.png		\
+	layout.css		\
+	style.css		\
+	$(gthtml_files)
+
+EXTRA_DIST = $(theme_DATA) 
+
+-include $(top_srcdir)/git.mk
diff --git a/extensions/webalbums/data/albumthemes/Flicker/image.gthtml b/extensions/webalbums/data/albumthemes/Flicker/image.gthtml
new file mode 100644
index 0000000..c2b36fb
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Flicker/image.gthtml
@@ -0,0 +1,213 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="<gthumb:language/>">
+<head>
+<gthumb:if images > 1 />
+  <title><gthumb:header/> (<gthumb:image_idx/>/<gthumb:images/>)</title>
+<gthumb:else/>
+  <title><gthumb:header/></title>
+<gthumb:end/>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta name="Generator" content="gThumb Image Viewer" />
+  <link href="<gthumb:theme_link src='layout.css'/>" rel="stylesheet" type="text/css" />
+  <link href="<gthumb:theme_link src='style.css'/>" rel="stylesheet" type="text/css" />
+</head>
+<body>
+
+  <table style="margin: auto">
+  <tr>
+    <td colspan="2">
+
+  <!-- Header -->
+  <div class="title">
+    <gthumb:header/>
+  </div>
+
+    </td>
+  </tr>
+
+  <tr>
+    <td>
+
+  <!-- Image preview -->
+  <div class="preview">
+    <a href="<gthumb:file_name with_relative_path/>">
+      <gthumb:image preview class="preview"/>
+    </a>
+  </div>
+
+<div class="preview_comment">
+<span class="comment">
+  <gthumb:if comment_visibility_image/>
+    <gthumb:comment /> <br />
+  <gthumb:end/>
+  <gthumb:if place_visibility_image/>
+    <gthumb:place /> <br />
+  <gthumb:end/>
+  <gthumb:if date_time_visibility_image/>
+    <gthumb:date_time/>
+  <gthumb:end/>
+</span><br />
+</div>
+
+    </td>
+    <td valign="top">
+
+  <!-- Navigation Bar -->
+  <div class="nav_bar">
+
+    <table summary="navigation bar">
+    <tr>
+      <td colspan="2">
+        <div style="margin-bottom: 5px; text-align: left;">
+          <a href="<gthumb:page_link idx_relative=0 image_idx/>">
+            ^ <gthumb:text>Index</gthumb:text> 
+          </a>
+        </div>
+      </td>
+    </tr>
+    <tr>
+      <td align="left" valign="middle" style="width: 90px; height: 110px;">
+
+      <gthumb:if image_idx > 1 />
+        <table class="nav_thumb">
+          <tr><td>
+            <a href="<gthumb:image_link idx_relative="-1" />">
+              <gthumb:image idx_relative="-1" thumbnail="1" class="nav_img" />
+            </a>
+          </td></tr>
+        </table>
+        <a href="<gthumb:image_link idx_relative="-1" />">
+          &lt; <gthumb:text>Previous</gthumb:text>
+        </a>
+      <gthumb:else/>
+        <div class="no_thumb"></div>
+        <span style="color: #d3d3d3;">
+          &lt; <gthumb:text>Previous</gthumb:text> 
+        </span>
+      <gthumb:end/>
+
+      </td>
+      <td align="right" valign="middle" style="width: 90px; height: 110px;">
+
+      <gthumb:if image_idx < images />
+        <table class="nav_thumb">
+          <tr><td>
+            <a href="<gthumb:image_link idx_relative="+1"/>">
+              <gthumb:image idx_relative="+1" thumbnail="1" class="nav_img" />
+            </a>
+          </td></tr>
+        </table>
+        <a href="<gthumb:image_link idx_relative="+1" />">
+          &gt; <gthumb:text>Next</gthumb:text>
+        </a>
+      <gthumb:else/>
+        <div class="no_thumb"></div>
+        <span style="color: #d3d3d3;">
+          &gt; <gthumb:text>Next</gthumb:text>
+        </span>
+      <gthumb:end/>
+
+      </td>
+
+      <td style="color: #c3bebd; padding-left: 10px; vertical-align: middle;">
+        <span style="font-size: 14px; font-weight: bold; white-space: nowrap;">
+          <gthumb:image_idx/> / <gthumb:images/> 
+        </span>
+      </td>
+
+    </tr>
+    </table>
+
+  </div>
+
+
+<!-- Comment and Exif data -->
+
+<table class="properties" summary="image properties">
+<gthumb:if file_name_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Image</gthumb:text></span></td>
+  <td><span class="property_value file_name"><gthumb:file_name utf8="1" /></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if image_dim_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Dimensions</gthumb:text></span></td>
+  <td><span class="property_value image_dim"><gthumb:image_dim/> pixels</span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if file_size_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Bytes</gthumb:text></span></td>
+  <td><span class="property_value file_size"><gthumb:file_size/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_date_time_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Date</gthumb:text></span></td>
+  <td><span class="property_value date_time"><gthumb:exif:date_time/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_exposure_time_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Exposure time</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:exposure_time/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_exposure_mode_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Exposure mode</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:exposure_mode/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_flash_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Flash</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:flash/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_shutter_speed_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Shutter speed</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:shutter_speed/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_aperture_value_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Aperture value</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:aperture_value/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_focal_length_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Focal length</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:focal_length/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_camera_model_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Camera model</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:camera_model/></span></td>
+</tr>
+<gthumb:end/>
+</table>
+
+    </td>
+  </tr>
+
+  <tr>
+    <td colspan="2">
+
+  <!-- Footer -->
+  <div class="copyright">
+    <gthumb:footer/>
+  </div>
+
+    </td>
+  </tr>
+</table>
+
+</body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/Flicker/index.gthtml b/extensions/webalbums/data/albumthemes/Flicker/index.gthtml
new file mode 100644
index 0000000..cbdafa7
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Flicker/index.gthtml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="<gthumb:language/>">
+<head>
+<gthumb:if pages > 1 />
+  <title><gthumb:header/> (<gthumb:page_idx/>/<gthumb:pages/>)</title>
+<gthumb:else/>
+  <title><gthumb:header/></title>
+<gthumb:end/>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta name="Generator" content="gThumb Image Viewer" />
+  <link href="<gthumb:theme_link src='layout.css'/>" rel="stylesheet" type="text/css" />
+  <link href="<gthumb:theme_link src='style.css'/>" rel="stylesheet" type="text/css" />
+</head>
+<gthumb:set_var thumbnail_width="90" thumbnail_height="90"/>
+<gthumb:set_var preview_width="450" preview_height="450"/>
+<body>
+
+  <table style="width: 600px; margin: auto;">
+  <tr>
+    <td colspan="2">
+
+  <!-- Header -->
+  <div class="title">
+    <gthumb:header/>
+  </div>
+
+    </td>
+  </tr>
+
+  <tr>
+    <td>
+
+  <!-- Navigation Bar -->
+  <div class="page_nav_bar">
+  <gthumb:if pages > 1 />
+    <span class="link_prev">
+      <gthumb:if page_idx > 1 />
+        <a href="<gthumb:page_link idx_relative="-1"/>">
+          &lt; <gthumb:text>Previous</gthumb:text>
+        </a>
+      <gthumb:else/>
+        <span class="nolink">
+          &lt; <gthumb:text>Previous</gthumb:text>
+        </span>
+      <gthumb:end/>
+    </span>
+
+    <span class="link_next">
+      <gthumb:if page_idx < pages />
+        <a href="<gthumb:page_link idx_relative="+1"/>">
+          &gt; <gthumb:text>Next</gthumb:text>
+        </a>
+      <gthumb:else/>
+        <span class="nolink">
+          &gt; <gthumb:text>Next</gthumb:text>
+        </span>
+      <gthumb:end/>
+    </span>
+  <gthumb:end/>
+  </div>
+
+  <!-- Index -->
+  <table class="thumbnails" summary="thumbnails">
+    <gthumb:table/>
+  </table>
+
+    </td>
+  </tr>
+
+  <tr>
+    <td>
+
+  <!-- Footer -->
+  <div class="copyright">
+    <gthumb:footer/>
+  </div>
+
+    </td>
+  </tr>
+</table>
+
+</body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/Flicker/layout.css b/extensions/webalbums/data/albumthemes/Flicker/layout.css
new file mode 100644
index 0000000..34da048
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Flicker/layout.css
@@ -0,0 +1,118 @@
+/* Gthumb "Flicker" layout */
+
+  table.properties {
+    margin-top: 1em;
+    padding: 5px;
+    border: 1px solid #e3e3e3;
+    background: #f3f3f3;
+    font-size: 9pt;
+    color: #b7b3b3;
+    border-collapse: collapse;
+  }
+
+  table.properties tr td {
+    border-bottom: 1px solid #e3e3e3;
+    padding: 3px 4px 3px 4px;
+  }
+
+  table.thumbnails {
+    border-collapse: collapse;
+    padding: 0;
+    margin: 0px;
+  }
+
+  tr.tr_index {
+    text-align: center;
+    vertical-align: top;
+  }
+
+  td.td_index {
+    width: 95px;
+    text-align: center;
+    vertical-align: middle;
+    border: 1px solid #e3e3e3;
+    padding: 10px;
+  }
+
+  div.nav_bar {
+    padding: 10px;
+    border: 1px solid #e3e3e3;
+    background: #f3f3f3;
+  }
+
+  div.page_nav_bar {
+    text-align: left;
+    margin-bottom: 5px;
+  }
+
+  div.page_nav_bar, div.nav_bar, div.nav_bar table {
+    font-size: 7pt;
+  }
+
+  td.nav_button_preview, td.nav_button_up {
+    width: 50px; 
+    height: 50px; 
+    padding: 0px;
+    text-align: center;
+    vertical-align: middle;
+  }
+
+  div.copyright {
+    padding-top: 25px;
+  }
+
+  div.comment {
+    text-align: left;
+    padding: 5px;
+    border: 1px solid #e3e3e3;
+    background: #f3f3f3;
+    font-size: 9pt;   
+  }
+
+  div.preview_comment {
+    padding-top: 10px;
+    padding-bottom: 15px;
+    width: 500px;
+  }
+
+  td.title {
+    text-align: center;
+  }
+
+  div.title {
+    font-size: 12pt;
+    font-weight: bold;
+    margin-bottom: 20px;
+    padding-bottom: 5px;
+    border-bottom: 1px solid #e3e3e3;
+  }
+
+  span.page_index {
+    font-size: 9pt;
+    padding-left: 5px;
+    padding-right: 5px;
+  }
+
+  img.thumbnail {
+    border: 0px;
+  }
+
+  div.preview {
+  }
+
+  table.nav_thumb {
+    border-collapse: collapse;
+    width: 90px; 
+    height: 90px;
+    margin: auto;
+    padding: 0px;
+    border: 0px solid #e3e3e3;
+  }
+
+  table.nav_thumb tr, table.nav_thumb tr td {
+    text-align: center;
+    vertical-align: middle;
+    border: 0px;
+    margin: 0px;
+    padding: 0px;
+  }
diff --git a/extensions/webalbums/data/albumthemes/Flicker/preview.png b/extensions/webalbums/data/albumthemes/Flicker/preview.png
new file mode 100644
index 0000000..d079ec9
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Flicker/preview.png differ
diff --git a/extensions/webalbums/data/albumthemes/Flicker/style.css b/extensions/webalbums/data/albumthemes/Flicker/style.css
new file mode 100644
index 0000000..f73fab5
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Flicker/style.css
@@ -0,0 +1,103 @@
+/* Gthumb "Wiki" style */
+
+  body {
+    background: white;
+  }
+
+  table.photo {
+    border: 1px solid #e3e3e3;
+  }
+
+  table.nav_button {
+    border: 0px outset #bbb;
+  }
+
+  div.copyright {
+    font-size: 7pt;
+    color: #888;
+  }
+
+  img.photo_center {
+    border: 0px;
+  }
+
+  img.preview {
+    border: 1px solid #ccc;
+  }
+
+  img.nav_img {
+    border: 0px;
+  }
+
+  .comment, .property, .property_value {
+    font-size: 8pt;
+  }
+
+  .property, .property_value {
+    text-align: left;
+    color: #c3bebd;
+  }
+
+  .property_value file_name {
+    font-family: monospace;
+  }
+
+  .property {
+    font-weight: bold;
+    text-align: left;
+  }
+
+  .comment, .property_value {
+    font-size: 8pt;
+  }
+  
+  .comment {
+    font-style: italic;
+  }
+
+  div.title {
+    color: #000;
+  }
+
+  span.page_index {
+    color: #000;
+  }
+
+  /* links */
+
+  a:link { 
+    color: #0000FF;
+    text-decoration: none;
+  }
+
+  a:visited { 
+    color: #0000FF;
+    text-decoration: none;
+  }
+
+  a:hover {
+    color: #0000FF;
+    text-decoration: underline;
+  }
+
+  div.no_thumb {
+    border: 1px solid #e3e3e3;
+    width: 89px;
+    height: 89px;
+    margin: 0px;
+    padding: 0px;
+  }
+
+  span.nolink {
+    color: #AAA;
+  }
+
+  span.link_prev {
+    padding-right: 10px;
+    border: 0px;
+  }
+
+  span.link_next {
+    padding-left: 10px;
+    border: 0px;
+  }
diff --git a/extensions/webalbums/data/albumthemes/Flicker/thumbnail.gthtml b/extensions/webalbums/data/albumthemes/Flicker/thumbnail.gthtml
new file mode 100644
index 0000000..21f47f7
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Flicker/thumbnail.gthtml
@@ -0,0 +1,54 @@
+      <table class="nav_thumb">
+      <tr><td>
+        <a href="<gthumb:image_link/>">
+          <gthumb:image thumbnail class="photo_center" /></a></td></tr>
+      </table>
+
+<span class="comment">
+  <gthumb:if comment_visibility_index/>
+    <gthumb:comment max_size=100/> <br />
+  <gthumb:end/>
+  <gthumb:if place_visibility_index/>
+    <gthumb:place max_size=100/> <br />
+  <gthumb:end/>
+  <gthumb:if date_time_visibility_index/>
+    <gthumb:date_time/>
+  <gthumb:end/>
+</span><br />
+
+<gthumb:if image_dim_visibility_index/>
+      <span class="property_value image_dim"><gthumb:image_dim/></span><br />
+<gthumb:end/>
+
+<gthumb:if file_size_visibility_index/>
+      <span class="property_value file_size"><gthumb:file_size/></span><br />
+<gthumb:end/>
+
+<gthumb:if file_name_visibility_index/>
+      <span class="property_value file_name"><gthumb:file_name utf8="1" /></span><br />
+<gthumb:end/>
+
+<gthumb:if exif_date_time_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:date_time/></span><br />
+<gthumb:end/>
+<gthumb:if exif_exposure_time_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:exposure_time/></span><br />
+<gthumb:end/>
+<gthumb:if exif_exposure_mode_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:exposure_mode/></span><br />
+<gthumb:end/>
+<gthumb:if exif_flash_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:flash/></span><br />
+<gthumb:end/>
+<gthumb:if exif_shutter_speed_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:shutter_speed/></span><br />
+<gthumb:end/>
+<gthumb:if exif_aperture_value_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:aperture_value/></span><br />
+<gthumb:end/>
+<gthumb:if exif_focal_length_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:focal_length/></span><br />
+<gthumb:end/>
+<gthumb:if exif_camera_model_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:camera_model/></span>
+<gthumb:end/>
diff --git a/extensions/webalbums/data/albumthemes/Makefile.am b/extensions/webalbums/data/albumthemes/Makefile.am
new file mode 100644
index 0000000..8aa3d60
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Makefile.am
@@ -0,0 +1,4 @@
+SUBDIRS = BestFit Classic ClassicClips Flicker NeatRound Wiki 
+EXTRA_DIST = text.h
+
+-include $(top_srcdir)/git.mk
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/.cvsignore b/extensions/webalbums/data/albumthemes/NeatRound/.cvsignore
new file mode 100644
index 0000000..282522d
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/NeatRound/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/1.gif b/extensions/webalbums/data/albumthemes/NeatRound/1.gif
new file mode 100644
index 0000000..59415ba
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/NeatRound/1.gif differ
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/Makefile.am b/extensions/webalbums/data/albumthemes/NeatRound/Makefile.am
new file mode 100644
index 0000000..4b5e5ce
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/NeatRound/Makefile.am
@@ -0,0 +1,25 @@
+gthtml_files =			\
+	image.gthtml		\
+	index.gthtml		\
+	thumbnail.gthtml
+
+themename  = NeatRound
+themedir   = $(datadir)/gthumb/albumthemes/$(themename)
+theme_DATA =			\
+	1.gif			\
+	background.gif		\
+	back.png		\
+	bot.png			\
+	left.png		\
+	next.png		\
+	prev.png		\
+	preview.png		\
+	right.png		\
+	top.png                 \
+	layout.css		\
+	style.css		\
+	$(gthtml_files)
+
+EXTRA_DIST = $(theme_DATA) 
+
+-include $(top_srcdir)/git.mk
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/back.png b/extensions/webalbums/data/albumthemes/NeatRound/back.png
new file mode 100644
index 0000000..855d67e
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/NeatRound/back.png differ
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/background.gif b/extensions/webalbums/data/albumthemes/NeatRound/background.gif
new file mode 100644
index 0000000..e565824
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/NeatRound/background.gif differ
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/bot.png b/extensions/webalbums/data/albumthemes/NeatRound/bot.png
new file mode 100644
index 0000000..08c6683
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/NeatRound/bot.png differ
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/image.gthtml b/extensions/webalbums/data/albumthemes/NeatRound/image.gthtml
new file mode 100644
index 0000000..13234a0
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/NeatRound/image.gthtml
@@ -0,0 +1,194 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="<gthumb:language/>">
+<head>
+<gthumb:if images > 1 />
+  <title><gthumb:header/> (<gthumb:image_idx/>/<gthumb:images/>)</title>
+<gthumb:else/>
+  <title><gthumb:header/></title>
+<gthumb:end/>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta name="Generator" content="gThumb Image Viewer" />
+  <link href="<gthumb:theme_link src='layout.css'/>" rel="stylesheet" type="text/css" />
+  <link href="<gthumb:theme_link src='style.css'/>" rel="stylesheet" type="text/css" />
+</head>
+<body>
+
+<table class="full_size" summary="page body">
+<tr>
+<td class="title">
+
+<!-- Title -->
+<table class="title" summary="title bar">
+<tr>
+  <td>
+  <span class="title"><gthumb:header/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td class="nav_bar">
+
+<!-- Navigation Bar -->
+<table class="full_size" summary="navigation bar">
+<tr>
+  <td class="button">
+    <a href="<gthumb:page_link idx_relative=0 image_idx/>">
+        <img src="<gthumb:theme_link src='back.png'/>" alt="Back" />
+    </a>
+  </td>
+  <td>
+    &nbsp;
+  </td>
+  <td class="button">
+<gthumb:if image_idx == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:image_link idx_relative=-1/>">
+        <img src="<gthumb:theme_link src='prev.png'/>" alt="Previous" />
+    </a>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if images == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <span class="page_index"><gthumb:image_idx/> / <gthumb:images/></span>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if image_idx == images />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:image_link idx_relative=+1/>">
+        <img src="<gthumb:theme_link src='next.png'/>" alt="Next" />
+    </a>
+<gthumb:end/>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td>
+
+<!-- Thumbnails and preview -->
+<table class="row" summary="preview">
+<tr>
+  <td>
+    <a href="<gthumb:file_name with_relative_path/>"><gthumb:image preview class="preview"/>
+    </a>
+  </td>
+</tr>
+</table>
+
+<!-- Comment and Exif data -->
+<div class="properties">
+<div class="preview_comment">
+<span class="comment">
+  <gthumb:if comment_visibility_image/>
+    <gthumb:comment /> <br />
+  <gthumb:end/>
+  <gthumb:if place_visibility_image/>
+    <gthumb:place /> <br />
+  <gthumb:end/>
+  <gthumb:if date_time_visibility_image/>
+    <gthumb:date_time/>
+  <gthumb:end/>
+</span><br />
+</div>
+<table summary="image properties">
+<gthumb:if file_name_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Image</gthumb:text></span></td>
+  <td><span class="property_value file_name"><gthumb:file_name utf8="1" /></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if image_dim_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Dimensions</gthumb:text></span></td>
+  <td><span class="property_value image_dim"><gthumb:image_dim/> pixels</span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if file_size_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Bytes</gthumb:text></span></td>
+  <td><span class="property_value file_size"><gthumb:file_size/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_date_time_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Date</gthumb:text></span></td>
+  <td><span class="property_value date_time"><gthumb:exif:date_time/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_exposure_time_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Exposure time</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:exposure_time/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_exposure_mode_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Exposure mode</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:exposure_mode/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_flash_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Flash</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:flash/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_shutter_speed_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Shutter speed</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:shutter_speed/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_aperture_value_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Aperture value</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:aperture_value/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_focal_length_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Focal length</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:focal_length/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_camera_model_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Camera model</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:camera_model/></span></td>
+</tr>
+<gthumb:end/>
+</table>
+</div>
+
+</td>
+</tr>
+<tr>
+<td class="footer">
+
+<!-- Footer -->
+<table class="full_size" summary="copyright">
+<tr>
+  <td>
+  <span class="copyright"><gthumb:footer/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+</table>
+
+</body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/index.gthtml b/extensions/webalbums/data/albumthemes/NeatRound/index.gthtml
new file mode 100644
index 0000000..6124655
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/NeatRound/index.gthtml
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="<gthumb:language/>">
+<head>
+<gthumb:if pages > 1 />
+  <title><gthumb:header/> (<gthumb:page_idx/>/<gthumb:pages/>)</title>
+<gthumb:else/>
+  <title><gthumb:header/></title>
+<gthumb:end/>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta name="Generator" content="gThumb Image Viewer" />
+  <link href="<gthumb:theme_link src='layout.css'/>" rel="stylesheet" type="text/css" />
+  <link href="<gthumb:theme_link src='style.css'/>" rel="stylesheet" type="text/css" />
+</head>
+<gthumb:set_var thumbnail_width="120" thumbnail_height="100"/>
+<gthumb:set_var preview_width="450" preview_height="400"/>
+<body>
+
+<table class="full_size" summary="page body">
+<tr>
+<td class="title">
+
+<!-- Title -->
+<table class="title" summary="title bar">
+<tr>
+  <td>
+  <span class="title"><gthumb:header/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td class="nav_bar">
+
+<!-- Navigation Bar -->
+<table class="full_size" summary="navigation bar">
+<tr>
+  <td>
+    &nbsp;
+  </td>
+  <td class="button">
+<gthumb:if page_idx == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:page_link idx_relative=-1/>">
+        <img src="<gthumb:theme_link src='prev.png'/>" alt="Previous" />
+    </a>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if pages == 1 />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <span class="page_index"><gthumb:page_idx/> / <gthumb:pages/></span>
+<gthumb:end/>
+  </td>
+  <td class="button">
+<gthumb:if page_idx == pages />
+    <img src="<gthumb:theme_link src='background.gif'/>" alt="void" />
+<gthumb:else/>
+    <a href="<gthumb:page_link idx_relative=+1/>">
+        <img src="<gthumb:theme_link src='next.png'/>" alt="Next" />
+    </a>
+<gthumb:end/>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+<tr>
+<td>
+
+<!-- Photos -->
+<div class="thumbnails">
+<table summary="thumbnails">
+<gthumb:table/>
+</table>
+</div>
+
+</td>
+</tr>
+<tr>
+<td class="footer">
+
+<!-- Footer -->
+<table class="full_size" summary="copyright">
+<tr>
+  <td>
+  <span class="copyright"><gthumb:footer/></span>
+  </td>
+</tr>
+</table>
+
+</td>
+</tr>
+</table>
+
+</body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/layout.css b/extensions/webalbums/data/albumthemes/NeatRound/layout.css
new file mode 100644
index 0000000..1585c1b
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/NeatRound/layout.css
@@ -0,0 +1,141 @@
+/* Gthumb "NeatRound" layout, v. 2005-02-25 */
+
+html, body {
+	height: 100%;
+	padding: 0;
+	margin: 0;
+}
+
+table {
+	border-collapse: collapse;
+	border-width: 0;
+}
+
+td {
+	border-width: 0;
+	padding: 0;
+	vertical-align: middle;
+	text-align: center;
+}
+
+/* Title, header, footer */
+
+table.full_size {
+	width: 100%;
+	height: 100%;
+}
+
+table.row {
+	width: 100%;
+}
+
+td.title {
+	height: 4em;
+	vertical-align: middle; 
+}
+
+table.title {
+	height: 4em;
+	width: 100%;
+}
+
+td.nav_bar {
+	height: 30px;
+}
+
+td.button {
+	width: 60px;
+	white-space: nowrap;
+}
+
+td.button img,
+td.button a img {
+	border-style: none;
+}
+
+td.footer {
+	height: 3em;
+}
+
+
+/* image.gthtml */
+
+td.left_thumbnail {
+	width: 115px;
+	text-align: left;
+	padding-left: 10px;
+}
+
+td.right_thumbnail {
+	width: 115px;
+	text-align: right;
+	padding-right: 10px;
+}
+
+div.properties {
+	margin-top: 1em;
+	margin-left: 10%;
+	text-align: left;
+}
+
+div.preview_comment {
+	margin-bottom: 1em;
+}
+
+div.properties table td {
+	text-align: left;
+	padding: 0.2em 1em 0.2em 0em;
+}
+
+
+
+/* index.gthtml */
+
+div.thumbnails table {
+	margin:auto;
+}
+
+td.td_index {
+	width: 215px;
+	padding: 8px 5px 8px 5px;
+	vertical-align: top;
+}
+
+
+/* thumbnail.gthtml */
+
+table.photo {
+}
+
+td.photo {
+	background-color: white;
+	width: 122px;
+	height: 102px;
+}
+
+img.photo_top {
+	border-style: none;
+	vertical-align: bottom;
+}
+
+img.photo_bottom {
+	border-style: none;
+	vertical-align: top;
+}
+
+img.photo_left {
+	border-style: none;
+	text-align: right;
+	vertical-align: top;
+}
+
+img.photo_right {
+	border-style: none;
+	text-align: left;
+	vertical-align: top;
+}
+
+img.photo_center {
+	border-style: none;
+	vertical-align: top;
+}
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/left.png b/extensions/webalbums/data/albumthemes/NeatRound/left.png
new file mode 100644
index 0000000..3bd3aed
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/NeatRound/left.png differ
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/next.png b/extensions/webalbums/data/albumthemes/NeatRound/next.png
new file mode 100644
index 0000000..18ed939
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/NeatRound/next.png differ
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/prev.png b/extensions/webalbums/data/albumthemes/NeatRound/prev.png
new file mode 100644
index 0000000..5a8b2eb
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/NeatRound/prev.png differ
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/preview.png b/extensions/webalbums/data/albumthemes/NeatRound/preview.png
new file mode 100644
index 0000000..6a100aa
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/NeatRound/preview.png differ
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/right.png b/extensions/webalbums/data/albumthemes/NeatRound/right.png
new file mode 100644
index 0000000..3e655dc
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/NeatRound/right.png differ
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/style.css b/extensions/webalbums/data/albumthemes/NeatRound/style.css
new file mode 100644
index 0000000..cd86bb9
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/NeatRound/style.css
@@ -0,0 +1,95 @@
+/* Gthumb "NeatRound" style, v. 2005-02-25 */
+
+/* Common */
+
+body {
+	background-color: white;
+	color: black;
+}
+
+span.title {
+	font-weight: bold;
+	font-size: 150%;
+	color: #555555;
+}
+
+span.page_index {
+	font-weight: bold;
+	font-size: small;
+	color: #969696;
+}
+
+span.file_name {
+	font-family: monospace;
+}
+
+span.copyright {
+	font-size: small;
+	color: #969696;
+}
+
+
+/* image.gthtml */
+
+
+img.preview {
+	border-style: none;
+}
+
+img.thumbnail {
+	border-style: none;
+}
+
+div.preview_comment {
+	text-align: justify;
+}
+
+span.comment {
+	font-size: small;
+}
+
+div.properties {
+	width: 80%;
+}
+
+span.property {
+	font-size: small;
+	font-weight: bold;
+	color: #969696;
+}
+
+span.property_value {
+	font-size: small;
+}
+
+/* index.gthtml */
+
+td.td_index {
+	color: #969696;
+}
+
+td.td_index span.image_dim {
+	font-weight: bold;
+}
+
+
+/* links */
+
+a:link { 
+	font-weight: bold;
+	text-decoration: none;
+	color: black;
+}
+
+a:visited { 
+	font-weight: bold;
+	text-decoration: none;
+	color: black;
+}
+
+a:hover {
+	font-weight: bold;
+	text-decoration: none;
+	color: #FFD700;
+}
+
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/thumbnail.gthtml b/extensions/webalbums/data/albumthemes/NeatRound/thumbnail.gthtml
new file mode 100644
index 0000000..55b5725
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/NeatRound/thumbnail.gthtml
@@ -0,0 +1,71 @@
+      <table class="photo" summary="photo">
+      <tr>
+        <td colspan="3"><img class="photo_top" src="<gthumb:theme_link src='top.png'/>" alt="Top" /></td>
+      </tr>
+      <tr>
+        <td><img class="photo_left" src="<gthumb:theme_link src='left.png'/>" alt="Left" /></td>
+        <td class="photo">
+          <a href="<gthumb:image_link/>">
+            <gthumb:image thumbnail class="photo_center" /></a>
+        </td>
+        <td><img class="photo_right" src="<gthumb:theme_link src='right.png'/>" alt="Right" /></td>
+      </tr>
+      <tr>
+        <td colspan="3"><img class="photo_bottom" src="<gthumb:theme_link src='bot.png'/>" alt="Bottom" /></td>
+      </tr>
+      </table>
+
+<span class="comment">
+  <gthumb:if comment_visibility_index/>
+    <gthumb:comment max_size=100/> <br />
+  <gthumb:end/>
+  <gthumb:if place_visibility_index/>
+    <gthumb:place max_size=100/> <br />
+  <gthumb:end/>
+  <gthumb:if date_time_visibility_index/>
+    <gthumb:date_time/>
+  <gthumb:end/>
+</span><br />
+
+<gthumb:if image_dim_visibility_index/>
+      <span class="property_value image_dim"><gthumb:image_dim/></span>
+<gthumb:if file_size_visibility_index/>
+      <span class="property_value file_size">(<gthumb:file_size/>)</span>
+<gthumb:end/>
+<gthumb:else/>
+<gthumb:if file_size_visibility_index/>
+      <span class="property_value file_size"><gthumb:file_size/></span>
+<gthumb:end/>
+<gthumb:end/>
+<gthumb:if image_dim_visibility_index || file_size_visibility_index/>
+      <br />
+<gthumb:end/>
+
+<gthumb:if file_name_visibility_index/>
+      <span class="property_value file_name"><gthumb:file_name utf8="1" /></span><br />
+<gthumb:end/>
+
+<gthumb:if exif_date_time_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:date_time/></span><br />
+<gthumb:end/>
+<gthumb:if exif_exposure_time_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:exposure_time/></span><br />
+<gthumb:end/>
+<gthumb:if exif_exposure_mode_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:exposure_mode/></span><br />
+<gthumb:end/>
+<gthumb:if exif_flash_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:flash/></span><br />
+<gthumb:end/>
+<gthumb:if exif_shutter_speed_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:shutter_speed/></span><br />
+<gthumb:end/>
+<gthumb:if exif_aperture_value_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:aperture_value/></span><br />
+<gthumb:end/>
+<gthumb:if exif_focal_length_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:focal_length/></span><br />
+<gthumb:end/>
+<gthumb:if exif_camera_model_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:camera_model/></span>
+<gthumb:end/>
diff --git a/extensions/webalbums/data/albumthemes/NeatRound/top.png b/extensions/webalbums/data/albumthemes/NeatRound/top.png
new file mode 100644
index 0000000..d8d5866
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/NeatRound/top.png differ
diff --git a/extensions/webalbums/data/albumthemes/Wiki/.cvsignore b/extensions/webalbums/data/albumthemes/Wiki/.cvsignore
new file mode 100644
index 0000000..282522d
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Wiki/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
diff --git a/extensions/webalbums/data/albumthemes/Wiki/Makefile.am b/extensions/webalbums/data/albumthemes/Wiki/Makefile.am
new file mode 100644
index 0000000..0407944
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Wiki/Makefile.am
@@ -0,0 +1,16 @@
+gthtml_files =			\
+	image.gthtml		\
+	index.gthtml		\
+	thumbnail.gthtml
+
+themename  = Wiki
+themedir   = $(datadir)/gthumb/albumthemes/$(themename)
+theme_DATA =			\
+	preview.png		\
+	layout.css		\
+	style.css		\
+	$(gthtml_files)
+
+EXTRA_DIST = $(theme_DATA) 
+
+-include $(top_srcdir)/git.mk
diff --git a/extensions/webalbums/data/albumthemes/Wiki/image.gthtml b/extensions/webalbums/data/albumthemes/Wiki/image.gthtml
new file mode 100644
index 0000000..f1b82c8
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Wiki/image.gthtml
@@ -0,0 +1,156 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="<gthumb:language/>">
+<head>
+<gthumb:if images > 1 />
+  <title><gthumb:header/> (<gthumb:image_idx/>/<gthumb:images/>)</title>
+<gthumb:else/>
+  <title><gthumb:header/></title>
+<gthumb:end/>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta name="Generator" content="gThumb Image Viewer" />
+  <link href="<gthumb:theme_link src='layout.css'/>" rel="stylesheet" type="text/css" />
+  <link href="<gthumb:theme_link src='style.css'/>" rel="stylesheet" type="text/css" />
+</head>
+<body>
+
+  <!-- Header -->
+  <div class="title">
+    <gthumb:header/>
+  </div>
+
+  <!-- Navigation Bar -->
+  <div class="nav_bar">
+    <span class="link">
+      <gthumb:if image_idx > 1 />
+        <a href="<gthumb:image_link idx_relative="-1"/>">
+          <gthumb:text>Previous</gthumb:text>
+        </a>
+      <gthumb:else/>
+        <span class="nolink">
+          <gthumb:text>Previous</gthumb:text>
+        </span>
+      <gthumb:end/>
+    </span>
+
+    <span class="link">
+      <gthumb:if image_idx < images />
+        <a href="<gthumb:image_link idx_relative="+1"/>">
+          <gthumb:text>Next</gthumb:text>
+        </a>
+      <gthumb:else/>
+        <span class="nolink">
+          <gthumb:text>Next</gthumb:text>
+        </span>
+      <gthumb:end/>
+    </span>
+
+    <span class="link">
+      <a href="<gthumb:page_link idx_relative=0 image_idx/>">
+        <gthumb:text>Index</gthumb:text>
+      </a>
+    </span>
+  </div>
+
+  <!-- Image preview -->
+  <div class="preview">
+    <a href="<gthumb:file_name with_relative_path/>">
+      <gthumb:image preview class="preview"/>
+    </a>
+  </div>
+
+<!-- Comment and Exif data -->
+<div class="properties">
+
+<div class="preview_comment">
+<span class="comment">
+  <gthumb:if comment_visibility_image/>
+    <gthumb:comment /> <br />
+  <gthumb:end/>
+  <gthumb:if place_visibility_image/>
+    <gthumb:place /> <br />
+  <gthumb:end/>
+  <gthumb:if date_time_visibility_image/>
+    <gthumb:date_time/>
+  <gthumb:end/>
+</span><br />
+</div>
+
+<table class="properties" summary="image properties">
+<gthumb:if file_name_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Image</gthumb:text></span></td>
+  <td><span class="property_value file_name"><gthumb:file_name utf8="1" /></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if image_dim_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Dimensions</gthumb:text></span></td>
+  <td><span class="property_value image_dim"><gthumb:image_dim/> pixels</span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if file_size_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Bytes</gthumb:text></span></td>
+  <td><span class="property_value file_size"><gthumb:file_size/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_date_time_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Date</gthumb:text></span></td>
+  <td><span class="property_value date_time"><gthumb:exif:date_time/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_exposure_time_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Exposure time</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:exposure_time/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_exposure_mode_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Exposure mode</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:exposure_mode/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_flash_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Flash</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:flash/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_shutter_speed_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Shutter speed</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:shutter_speed/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_aperture_value_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Aperture value</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:aperture_value/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_focal_length_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Focal length</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:focal_length/></span></td>
+</tr>
+<gthumb:end/>
+<gthumb:if exif_camera_model_visibility_image/>
+<tr>
+  <td><span class="property"><gthumb:text>Camera model</gthumb:text></span></td>
+  <td><span class="property_value exif"><gthumb:exif:camera_model/></span></td>
+</tr>
+<gthumb:end/>
+</table>
+</div>
+
+  <!-- Footer -->
+  <div class="copyright">
+    <gthumb:footer/>
+  </div>
+
+</body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/Wiki/index.gthtml b/extensions/webalbums/data/albumthemes/Wiki/index.gthtml
new file mode 100644
index 0000000..c576b21
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Wiki/index.gthtml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
+  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd";>
+<html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="<gthumb:language/>">
+<head>
+<gthumb:if pages > 1 />
+  <title><gthumb:header/> (<gthumb:page_idx/>/<gthumb:pages/>)</title>
+<gthumb:else/>
+  <title><gthumb:header/></title>
+<gthumb:end/>
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+  <meta name="Generator" content="gThumb Image Viewer" />
+  <link href="<gthumb:theme_link src='layout.css'/>" rel="stylesheet" type="text/css" />
+  <link href="<gthumb:theme_link src='style.css'/>" rel="stylesheet" type="text/css" />
+</head>
+<gthumb:set_var thumbnail_width="140" thumbnail_height="140"/>
+<gthumb:set_var preview_width="550" preview_height="500"/>
+<body>
+
+  <!-- Header -->
+  <div class="title">
+    <gthumb:header/>
+  </div>
+
+
+  <!-- Navigation Bar -->
+  <gthumb:if pages > 1 />
+  <div class="nav_bar">
+    <span class="link">
+      <gthumb:if page_idx > 1 />
+        <a href="<gthumb:page_link idx_relative="-1"/>">
+          <gthumb:text>Previous</gthumb:text>
+        </a>
+      <gthumb:else/>
+        <span class="nolink">
+          <gthumb:text>Previous</gthumb:text>
+        </span>
+      <gthumb:end/>
+    </span>
+
+    <span class="link">
+      <gthumb:if page_idx < pages />
+        <a href="<gthumb:page_link idx_relative="+1"/>">
+          <gthumb:text>Next</gthumb:text>
+        </a>
+      <gthumb:else/>
+        <span class="nolink">
+          <gthumb:text>Next</gthumb:text>
+        </span>
+      <gthumb:end/>
+    </span>
+  </div>
+  <gthumb:end/>
+
+
+  <!-- Index -->
+  <div class="thumbnails">
+    <table class="thumbnails" summary="thumbnails">
+      <gthumb:table/>
+    </table>
+  </div>
+
+
+  <!-- Footer -->
+  <div class="copyright">
+    <gthumb:footer/>
+  </div>
+
+</body>
+</html>
diff --git a/extensions/webalbums/data/albumthemes/Wiki/layout.css b/extensions/webalbums/data/albumthemes/Wiki/layout.css
new file mode 100644
index 0000000..12db08e
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Wiki/layout.css
@@ -0,0 +1,90 @@
+/* Gthumb "Wiki" layout */
+
+  div.properties {
+    margin-top: 1em;
+    margin-left: 10px;
+    text-align: justify;
+  }
+
+  table.properties {
+    margin: 0px;
+    padding: 0px;
+  }
+
+  table.thumbnails {
+    border-spacing: 20px;
+  }
+
+  tr.tr_index {
+    text-align: center;
+    vertical-align: top;
+  }
+
+  td.td_index {
+    width: 165px;
+    text-align: center;
+    vertical-align: top;
+  }
+
+  table.photo {
+    width: 165px;
+    padding-bottom: 10px;
+  }
+
+  td.photo {
+    text-align: center;
+    vertical-align: middle;
+    height: 165px;
+  }
+
+  div.nav_bar {
+    padding: 5px 0px 10px 0px;
+    font-size: 9pt;
+  }
+
+  td.nav_button_preview, td.nav_button_up {
+    width: 50px; 
+    height: 50px; 
+    padding: 0px;
+    text-align: center;
+    vertical-align: center;
+  }
+
+  div.copyright {
+    padding-top: 25px;
+    padding-left: 10px;
+  }
+
+  div.comment {
+    text-align: left;
+  }
+
+  div.preview_comment {
+    padding-bottom: 15px;
+    width: 500px;
+  }
+
+  td.title {
+    text-align: center;
+  }
+
+  div.title {
+    font-size: 12pt;
+    font-weight: bold;
+    margin-left: 10px;
+    margin-bottom: 5px;
+  }
+
+  span.page_index {
+    font-size: 9pt;
+    padding-left: 5px;
+    padding-right: 5px;
+  }
+
+  img.thumbnail {
+    border: 0px;
+  }
+
+  div.preview {
+    padding-left: 10px;
+  }
diff --git a/extensions/webalbums/data/albumthemes/Wiki/preview.png b/extensions/webalbums/data/albumthemes/Wiki/preview.png
new file mode 100644
index 0000000..8eb68f6
Binary files /dev/null and b/extensions/webalbums/data/albumthemes/Wiki/preview.png differ
diff --git a/extensions/webalbums/data/albumthemes/Wiki/style.css b/extensions/webalbums/data/albumthemes/Wiki/style.css
new file mode 100644
index 0000000..d54b409
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Wiki/style.css
@@ -0,0 +1,79 @@
+/* Gthumb "Wiki" style */
+
+  body {
+    background: white;
+  }
+
+  td.photo {
+    border: 1px solid #ccc;
+  }
+
+  table.nav_button {
+    border: 0px outset #bbb;
+  }
+
+  div.copyright {
+    font-size: 8pt;
+    color: #888;
+  }
+
+  img.photo_center {
+    border: 1px solid #ccc;
+  }
+
+  img.preview {
+    border: 1px solid #ccc;
+  }
+
+  .comment, .property, .property_value {
+    font-size: 9pt;
+  }
+
+  .property_value file_name {
+    font-family: monospace;
+  }
+
+  .property {
+    font-weight: bold;
+  }
+
+  .comment, .property_value {
+    font-size: 9pt;
+  }
+  
+  .comment {
+    font-style: italic;
+  }
+
+  div.title {
+    color: #000;
+  }
+
+  span.page_index {
+    color: #000;
+  }
+
+  /* links */
+
+  a:link { 
+    color: #0000FF;
+    text-decoration: none;
+  }
+
+  a:visited { 
+    color: #0000FF;
+    text-decoration: none;
+  }
+
+  a:hover {
+    color: #0000FF;
+    text-decoration: underline;
+  }
+
+  span.nolink {
+    color: #AAA;
+  }
+
+  span.link {
+    padding: 10px;;
+  }
diff --git a/extensions/webalbums/data/albumthemes/Wiki/thumbnail.gthtml b/extensions/webalbums/data/albumthemes/Wiki/thumbnail.gthtml
new file mode 100644
index 0000000..5344585
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/Wiki/thumbnail.gthtml
@@ -0,0 +1,64 @@
+      <table class="photo" summary="photo">
+      <tr>
+        <td class="photo">
+          <a href="<gthumb:image_link/>">
+            <gthumb:image thumbnail class="photo_center" />
+          </a>
+        </td>
+      </tr>
+      </table>
+
+<span class="comment">
+  <gthumb:if comment_visibility_index/>
+    <gthumb:comment max_size=100/> <br />
+  <gthumb:end/>
+  <gthumb:if place_visibility_index/>
+    <gthumb:place max_size=100/> <br />
+  <gthumb:end/>
+  <gthumb:if date_time_visibility_index/>
+    <gthumb:date_time/>
+  <gthumb:end/>
+</span><br />
+
+<gthumb:if image_dim_visibility_index/>
+      <span class="property_value image_dim"><gthumb:image_dim/></span>
+<gthumb:if file_size_visibility_index/>
+      <span class="property_value file_size">(<gthumb:file_size/>)</span>
+<gthumb:end/>
+<gthumb:else/>
+<gthumb:if file_size_visibility_index/>
+      <span class="property_value file_size"><gthumb:file_size/></span>
+<gthumb:end/>
+<gthumb:end/>
+<gthumb:if image_dim_visibility_index || file_size_visibility_index/>
+      <br />
+<gthumb:end/>
+
+<gthumb:if file_name_visibility_index/>
+      <span class="property_value file_name"><gthumb:file_name utf8="1" /></span><br />
+<gthumb:end/>
+
+<gthumb:if exif_date_time_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:date_time/></span><br />
+<gthumb:end/>
+<gthumb:if exif_exposure_time_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:exposure_time/></span><br />
+<gthumb:end/>
+<gthumb:if exif_exposure_mode_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:exposure_mode/></span><br />
+<gthumb:end/>
+<gthumb:if exif_flash_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:flash/></span><br />
+<gthumb:end/>
+<gthumb:if exif_shutter_speed_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:shutter_speed/></span><br />
+<gthumb:end/>
+<gthumb:if exif_aperture_value_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:aperture_value/></span><br />
+<gthumb:end/>
+<gthumb:if exif_focal_length_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:focal_length/></span><br />
+<gthumb:end/>
+<gthumb:if exif_camera_model_visibility_index/>
+      <span class="property_value exif"><gthumb:exif:camera_model/></span>
+<gthumb:end/>
diff --git a/extensions/webalbums/data/albumthemes/text.h b/extensions/webalbums/data/albumthemes/text.h
new file mode 100644
index 0000000..9e8220d
--- /dev/null
+++ b/extensions/webalbums/data/albumthemes/text.h
@@ -0,0 +1,42 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+
+/*
+ *  GThumb
+ *
+ *  Copyright (C) 2004 Free Software Foundation, Inc.
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA.
+ */
+
+#include <config.h>
+#include <glib/gi18n.h>
+
+static char *text[] = {
+	N_("Previous"),
+	N_("Next"),
+	N_("Index"),
+	N_("Image"),
+	N_("Dimensions"),
+	N_("Bytes"),
+	N_("Date"),
+	N_("Exposure time"),
+	N_("Exposure mode"),
+	N_("Flash"),
+	N_("Shutter speed"),
+	N_("Aperture value"),
+	N_("Focal length"),
+	N_("Camera model")
+	N_("pixels")
+}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]