Index: /extensions/simple_themes/simple/.hg_archival.txt
===================================================================
--- /extensions/simple_themes/simple/.hg_archival.txt	(revision 13546)
+++ /extensions/simple_themes/simple/.hg_archival.txt	(revision 13546)
@@ -0,0 +1,5 @@
+repo: ad69c371136d0c4e387cc14fa610d6cbde0fb0e5
+node: 967e328424de5ac22882ee791b601eafef7a9107
+branch: Simple_Grey
+latesttag: 2.0
+latesttagdistance: 1
Index: /extensions/simple_themes/simple/.hgtags
===================================================================
--- /extensions/simple_themes/simple/.hgtags	(revision 13546)
+++ /extensions/simple_themes/simple/.hgtags	(revision 13546)
@@ -0,0 +1,3 @@
+b5227bd7d3521bfa041750548ca01fb6e336451b 1.4
+a4ac267f8391f8cf886de538119a5d3fc58d041d 1.3
+387248a694a7eaa7f05496717ed426ff9991dc1b 2.0
Index: /extensions/simple_themes/simple/README.markdown
===================================================================
--- /extensions/simple_themes/simple/README.markdown	(revision 13546)
+++ /extensions/simple_themes/simple/README.markdown	(revision 13546)
@@ -0,0 +1,28 @@
+Simple theme for Piwigo
+=======================
+
+*Simple* is a theme for *Piwigo* gallery software.
+
+This theme was inspired by *gally / Graphite* theme for Piwigo, and *Carbon*
+theme for Gallery, with the goal to simplify the design up to go to basics:
+the photos !
+
+You can also find some variants (Sunset, Black, White) in Piwigo extensions.
+
+Links
+-----
+
+* [Piwigo](http://piwigo.org/)
+* [Simple page](http://saimon.org/blog/pages/Theme-Simple-Grey-Piwigo)
+* [Development](http://bitbucket.org/saimon/simple-piwigo/)
+* [Download](http://fr.piwigo.org/ext/extension_view.php?eid=308)
+
+Install
+-------
+
+* for **Piwigo > 2.1.x**, use **Simple > 2.x** : download the archive and
+  extract it in ``your-gallery/theme/``. You can also use directly the theme
+  installer for the admin interface.
+* for **Piwigo 2.0.x**, use **Simple 1.4.1** : download the archive and
+  extract it in ``your-gallery/template/``.
+
Index: /extensions/simple_themes/simple/content.css
===================================================================
--- /extensions/simple_themes/simple/content.css	(revision 13546)
+++ /extensions/simple_themes/simple/content.css	(revision 13546)
@@ -0,0 +1,396 @@
+/*
+ CSS for all pages
+*/
+
+body {
+  font: 75% "Bitstream Vera Sans", "DejaVu Sans", "Trebuchet MS", Verdana, sans-serif;
+  margin: 0;
+  padding: 0;
+}
+
+img { border: 0; }
+a { text-decoration: none; }
+hr { border: 1px #999999 solid; }
+
+h1, h2, h3 {
+  margin: 0;
+  padding: 0;
+  font-size: 1em;
+}
+h1 { font-size: 1.6em; }
+
+#menuswitcher {
+  cursor: pointer;
+}
+
+/* Layout */
+
+#the_page {
+  width: 85%;
+  min-width: 900px;
+  margin: 0 auto;
+  padding: 0;
+}
+
+#theHeader h1 {
+  padding: 1em 0 0;
+}
+#theHeader p {
+  padding: 0;
+  margin: 0;
+}
+
+.titrePage {
+  margin: 1em 0;
+}
+
+.titrePage h2 {
+  margin: 1em 0;
+  padding: 0;
+  display: inline;
+}
+
+.titrePage .button {
+  float: none;
+}
+
+.titrePage img {
+  float: left;
+  max-height: 16px;
+  margin: 0 5px;
+}
+
+.titrePage .categoryActions {
+  float: right;
+  margin: 0;
+  padding: 0;
+  list-style: none;
+  width: auto;
+}
+
+.categoryActions li {
+  display: inline;
+}
+
+#content {
+  margin: 1em 0 0;
+  padding: 1em;
+}
+
+/* tags */
+
+.tagLevel5 { font-size: 130%; }
+.tagLevel4 { font-size: 120%; }
+.tagLevel3 { font-size: 110%; }
+.tagLevel2 { font-size: 100%; }
+.tagLevel1 { font-size: 90%; }
+
+#fullTagCloud {
+  text-align: center;
+  margin: 1em 2em;
+}
+
+#fullTagCloud span {
+  white-space: nowrap;
+  margin: 0 0.5em;
+}
+
+#fullTagCloud a {
+  padding: 2px;
+}
+
+.tagLetterContent {
+  width: 100%;
+}
+
+.tagSelection li {
+  display:  inline;
+}
+
+/* Messages */
+
+.errors, .infos {
+  color: #e04040;
+  border: 1px dashed;
+  margin: 0 1em;
+}
+
+/* Forms */
+
+form {
+  margin: 0;
+}
+
+#content form li, #subcontent form li {
+  list-style: none;
+  margin: 0.2em 0;
+}
+
+.property {
+  display: block;
+  min-width: 275px;
+  float: left;
+}
+
+/* Menubar */
+
+#menubar {
+  margin: 0;
+  padding: 0;
+  float: left;
+  width: 15%;
+  display: none;
+}
+
+#menubar ul {
+  margin: 0;
+  padding: 1em 0 1em 2em;
+}
+#menubar dd {
+  margin: 0;
+  padding: 0;
+}
+
+#menubar ul ul {
+ margin: 0;
+ padding: 0 0 0 1em;
+}
+
+/* images thumbnails */
+
+#thumbnails {
+  width: auto;
+  text-align: center;
+  padding: 1em 0;
+}
+
+#thumbnails ul, .middle_block > ul {
+  margin: 0;
+  padding: 0;
+  overflow: hidden;
+  list-style: none;
+}
+
+#thumbnails li, .middle_block > ul li {
+  margin: 0;
+  padding: 0;
+  float: right;
+  width: 200px;
+  height: 200px;
+}
+
+.nb-comments, .nb-hits {
+  font-weight: normal;
+  display: block;
+}
+.zero {
+  display: none;
+}
+
+/* categories thumbnails */
+
+.thumbnailCategories {
+  margin: 0;
+  padding: 1em;
+  overflow: hidden;
+  list-style: none;
+}
+
+.thumbnailCategories li {
+  float: left;
+  height: 160px;
+  overflow: hidden;
+  margin: 1em;
+  width: 45%;
+}
+
+.illustration {
+  float: left;
+  margin: 0.2em;
+  width: 150px;
+}
+
+.description {
+  overflow: auto;
+  padding-left: 1em;
+}
+
+.description h3 {
+  margin: 0;
+}
+
+.thumbCatDescNfoDate, .thumbCatDescNbImg {
+  margin: 0;
+  font-size: 80%;
+}
+
+.thumbCatDesc {
+  margin: 0;
+  padding-top: 4px;
+  word-wrap: break-word;
+}
+
+/* page : title bar */
+
+#additional_info {
+  margin: 1em 5em;
+}
+
+.navigationBar {
+  padding: 0.5em;
+  text-align: right;
+}
+
+/* pictures pages */
+
+#thePicturePage #theHeader, #thePicturePage #copyright {
+  display: none;
+}
+#thePicturePage #content {
+  margin-bottom: 1em;
+  padding: 1em 0 0;
+}
+
+.imageNumber {
+  float: right;
+  padding: 0 3px;
+  font-size: 0.9em;
+}
+
+.navButtons {
+  font-size: 1.5em;
+  text-align: center;
+}
+
+#navThumbPrev, #navThumbNext {
+  text-align: center;
+  margin: 1em auto;
+}
+
+#imageToolBar {
+  height: 25px;
+}
+
+#imageInfoBar {
+  float: right;
+  clear: right;
+  width: 20%;
+  margin: 0 1em 0;
+}
+
+#randomButtons ul {
+  padding: 0;
+  list-style-type: none;
+}
+
+#imageInfos dt, #imageMeta dt {
+  font-weight: bold;
+}
+#imageInfos dd, #imageMeta dd {
+  margin-left: 1em;
+  overflow: hidden;
+}
+
+#theImage {
+  text-align: center;
+  padding: 1em 0;
+  margin: auto;
+}
+
+#rateForm {
+  margin: 0;
+}
+#rateForm input, #rateForm input:active {
+  cursor: pointer;
+  border: none;
+  padding: 0;
+}
+#rateForm input.rateButtonStarFull  {
+  background:  url('icon/rating-stars.png') no-repeat scroll -16px center;
+  width: 16px;
+}
+#rateForm input.rateButtonStarEmpty {
+  background:  url('icon/rating-stars.png') no-repeat scroll 0 center;
+  width: 16px;
+}
+
+/* slideshow */
+
+#slideshow {
+  width: 656px;
+  margin: 1em auto 0;
+}
+
+#slideshow .navButtons {
+  display: inline;
+  font-size: 1em;
+  float: right;
+  margin-right: 1em;
+}
+
+/* comments */
+
+#theComments h3 {
+  height: 25px;
+  line-height: 25px;
+  padding-left: 1em;
+  cursor: pointer;
+}
+
+#theComments > div {
+  display: none;
+}
+
+#commentAdd, #commentList {
+  width: 48%;
+  padding: 1%;
+}
+#commentAdd  { float: left; }
+#commentList { float: right; }
+
+#commentAdd input[type="text"], #commentAdd textarea {
+  width: 400px;
+}
+
+#commentList ul {
+  list-style: none;
+  padding: 0;
+}
+#commentList li {
+  clear: both;
+  display: block;
+  border-top: 1px dotted #606060;
+  padding: 0.5em 0;
+}
+#commentList li ul {
+  list-style-type: none;
+  padding: 4px;
+}
+
+ul.actions {
+  float: right;
+}
+
+#commentList .author {
+  font-weight: bold;
+  font-variant: small-caps;
+}
+#commentList .date {
+  font-style: italic;
+}
+
+#theCommentsPage #comments li {
+  clear: left;
+  list-style: none;
+}
+
+/* Footer */
+
+#copyright {
+  padding: 2px;
+  clear: both;
+}
+
+/* PWG stuff */
+
+.personal_block { padding: 0 !important; }
Index: /extensions/simple_themes/simple/icon/index.php
===================================================================
--- /extensions/simple_themes/simple/icon/index.php	(revision 13546)
+++ /extensions/simple_themes/simple/icon/index.php	(revision 13546)
@@ -0,0 +1,30 @@
+<?php
+// +-----------------------------------------------------------------------+
+// | Piwigo - a PHP based picture gallery                                  |
+// +-----------------------------------------------------------------------+
+// | Copyright(C) 2008      Piwigo Team                  http://piwigo.org |
+// | Copyright(C) 2003-2008 PhpWebGallery Team    http://phpwebgallery.net |
+// | Copyright(C) 2002-2003 Pierrick LE GALL   http://le-gall.net/pierrick |
+// +-----------------------------------------------------------------------+
+// | 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                                          |
+// |                                                                       |
+// | 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 Place - Suite 330, Boston, MA 02111-1307, |
+// | USA.                                                                  |
+// +-----------------------------------------------------------------------+
+
+// Recursive call
+$url = '../';
+header( 'Request-URI: '.$url );
+header( 'Content-Location: '.$url );
+header( 'Location: '.$url );
+exit();
+?>
Index: /extensions/simple_themes/simple/index.php
===================================================================
--- /extensions/simple_themes/simple/index.php	(revision 13546)
+++ /extensions/simple_themes/simple/index.php	(revision 13546)
@@ -0,0 +1,30 @@
+<?php
+// +-----------------------------------------------------------------------+
+// | Piwigo - a PHP based picture gallery                                  |
+// +-----------------------------------------------------------------------+
+// | Copyright(C) 2008      Piwigo Team                  http://piwigo.org |
+// | Copyright(C) 2003-2008 PhpWebGallery Team    http://phpwebgallery.net |
+// | Copyright(C) 2002-2003 Pierrick LE GALL   http://le-gall.net/pierrick |
+// +-----------------------------------------------------------------------+
+// | 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                                          |
+// |                                                                       |
+// | 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 Place - Suite 330, Boston, MA 02111-1307, |
+// | USA.                                                                  |
+// +-----------------------------------------------------------------------+
+
+// Recursive call
+$url = '../';
+header( 'Request-URI: '.$url );
+header( 'Content-Location: '.$url );
+header( 'Location: '.$url );
+exit();
+?>
Index: /extensions/simple_themes/simple/js/jquery-1.3.2.min.js
===================================================================
--- /extensions/simple_themes/simple/js/jquery-1.3.2.min.js	(revision 13546)
+++ /extensions/simple_themes/simple/js/jquery-1.3.2.min.js	(revision 13546)
@@ -0,0 +1,19 @@
+/*
+ * jQuery JavaScript Library v1.3.2
+ * http://jquery.com/
+ *
+ * Copyright (c) 2009 John Resig
+ * Dual licensed under the MIT and GPL licenses.
+ * http://docs.jquery.com/License
+ *
+ * Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)
+ * Revision: 6246
+ */
+(function(){var l=this,g,y=l.jQuery,p=l.$,o=l.jQuery=l.$=function(E,F){return new o.fn.init(E,F)},D=/^[^<]*(<(.|\s)+>)[^>]*$|^#([\w-]+)$/,f=/^.[^:#\[\.,]*$/;o.fn=o.prototype={init:function(E,H){E=E||document;if(E.nodeType){this[0]=E;this.length=1;this.context=E;return this}if(typeof E==="string"){var G=D.exec(E);if(G&&(G[1]||!H)){if(G[1]){E=o.clean([G[1]],H)}else{var I=document.getElementById(G[3]);if(I&&I.id!=G[3]){return o().find(E)}var F=o(I||[]);F.context=document;F.selector=E;return F}}else{return o(H).find(E)}}else{if(o.isFunction(E)){return o(document).ready(E)}}if(E.selector&&E.context){this.selector=E.selector;this.context=E.context}return this.setArray(o.isArray(E)?E:o.makeArray(E))},selector:"",jquery:"1.3.2",size:function(){return this.length},get:function(E){return E===g?Array.prototype.slice.call(this):this[E]},pushStack:function(F,H,E){var G=o(F);G.prevObject=this;G.context=this.context;if(H==="find"){G.selector=this.selector+(this.selector?" ":"")+E}else{if(H){G.selector=this.selector+"."+H+"("+E+")"}}return G},setArray:function(E){this.length=0;Array.prototype.push.apply(this,E);return this},each:function(F,E){return o.each(this,F,E)},index:function(E){return o.inArray(E&&E.jquery?E[0]:E,this)},attr:function(F,H,G){var E=F;if(typeof F==="string"){if(H===g){return this[0]&&o[G||"attr"](this[0],F)}else{E={};E[F]=H}}return this.each(function(I){for(F in E){o.attr(G?this.style:this,F,o.prop(this,E[F],G,I,F))}})},css:function(E,F){if((E=="width"||E=="height")&&parseFloat(F)<0){F=g}return this.attr(E,F,"curCSS")},text:function(F){if(typeof F!=="object"&&F!=null){return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(F))}var E="";o.each(F||this,function(){o.each(this.childNodes,function(){if(this.nodeType!=8){E+=this.nodeType!=1?this.nodeValue:o.fn.text([this])}})});return E},wrapAll:function(E){if(this[0]){var F=o(E,this[0].ownerDocument).clone();if(this[0].parentNode){F.insertBefore(this[0])}F.map(function(){var G=this;while(G.firstChild){G=G.firstChild}return G}).append(this)}return this},wrapInner:function(E){return this.each(function(){o(this).contents().wrapAll(E)})},wrap:function(E){return this.each(function(){o(this).wrapAll(E)})},append:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.appendChild(E)}})},prepend:function(){return this.domManip(arguments,true,function(E){if(this.nodeType==1){this.insertBefore(E,this.firstChild)}})},before:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this)})},after:function(){return this.domManip(arguments,false,function(E){this.parentNode.insertBefore(E,this.nextSibling)})},end:function(){return this.prevObject||o([])},push:[].push,sort:[].sort,splice:[].splice,find:function(E){if(this.length===1){var F=this.pushStack([],"find",E);F.length=0;o.find(E,this[0],F);return F}else{return this.pushStack(o.unique(o.map(this,function(G){return o.find(E,G)})),"find",E)}},clone:function(G){var E=this.map(function(){if(!o.support.noCloneEvent&&!o.isXMLDoc(this)){var I=this.outerHTML;if(!I){var J=this.ownerDocument.createElement("div");J.appendChild(this.cloneNode(true));I=J.innerHTML}return o.clean([I.replace(/ jQuery\d+="(?:\d+|null)"/g,"").replace(/^\s*/,"")])[0]}else{return this.cloneNode(true)}});if(G===true){var H=this.find("*").andSelf(),F=0;E.find("*").andSelf().each(function(){if(this.nodeName!==H[F].nodeName){return}var I=o.data(H[F],"events");for(var K in I){for(var J in I[K]){o.event.add(this,K,I[K][J],I[K][J].data)}}F++})}return E},filter:function(E){return this.pushStack(o.isFunction(E)&&o.grep(this,function(G,F){return E.call(G,F)})||o.multiFilter(E,o.grep(this,function(F){return F.nodeType===1})),"filter",E)},closest:function(E){var G=o.expr.match.POS.test(E)?o(E):null,F=0;return this.map(function(){var H=this;while(H&&H.ownerDocument){if(G?G.index(H)>-1:o(H).is(E)){o.data(H,"closest",F);return H}H=H.parentNode;F++}})},not:function(E){if(typeof E==="string"){if(f.test(E)){return this.pushStack(o.multiFilter(E,this,true),"not",E)}else{E=o.multiFilter(E,this)}}var F=E.length&&E[E.length-1]!==g&&!E.nodeType;return this.filter(function(){return F?o.inArray(this,E)<0:this!=E})},add:function(E){return this.pushStack(o.unique(o.merge(this.get(),typeof E==="string"?o(E):o.makeArray(E))))},is:function(E){return !!E&&o.multiFilter(E,this).length>0},hasClass:function(E){return !!E&&this.is("."+E)},val:function(K){if(K===g){var E=this[0];if(E){if(o.nodeName(E,"option")){return(E.attributes.value||{}).specified?E.value:E.text}if(o.nodeName(E,"select")){var I=E.selectedIndex,L=[],M=E.options,H=E.type=="select-one";if(I<0){return null}for(var F=H?I:0,J=H?I+1:M.length;F<J;F++){var G=M[F];if(G.selected){K=o(G).val();if(H){return K}L.push(K)}}return L}return(E.value||"").replace(/\r/g,"")}return g}if(typeof K==="number"){K+=""}return this.each(function(){if(this.nodeType!=1){return}if(o.isArray(K)&&/radio|checkbox/.test(this.type)){this.checked=(o.inArray(this.value,K)>=0||o.inArray(this.name,K)>=0)}else{if(o.nodeName(this,"select")){var N=o.makeArray(K);o("option",this).each(function(){this.selected=(o.inArray(this.value,N)>=0||o.inArray(this.text,N)>=0)});if(!N.length){this.selectedIndex=-1}}else{this.value=K}}})},html:function(E){return E===g?(this[0]?this[0].innerHTML.replace(/ jQuery\d+="(?:\d+|null)"/g,""):null):this.empty().append(E)},replaceWith:function(E){return this.after(E).remove()},eq:function(E){return this.slice(E,+E+1)},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments),"slice",Array.prototype.slice.call(arguments).join(","))},map:function(E){return this.pushStack(o.map(this,function(G,F){return E.call(G,F,G)}))},andSelf:function(){return this.add(this.prevObject)},domManip:function(J,M,L){if(this[0]){var I=(this[0].ownerDocument||this[0]).createDocumentFragment(),F=o.clean(J,(this[0].ownerDocument||this[0]),I),H=I.firstChild;if(H){for(var G=0,E=this.length;G<E;G++){L.call(K(this[G],H),this.length>1||G>0?I.cloneNode(true):I)}}if(F){o.each(F,z)}}return this;function K(N,O){return M&&o.nodeName(N,"table")&&o.nodeName(O,"tr")?(N.getElementsByTagName("tbody")[0]||N.appendChild(N.ownerDocument.createElement("tbody"))):N}}};o.fn.init.prototype=o.fn;function z(E,F){if(F.src){o.ajax({url:F.src,async:false,dataType:"script"})}else{o.globalEval(F.text||F.textContent||F.innerHTML||"")}if(F.parentNode){F.parentNode.removeChild(F)}}function e(){return +new Date}o.extend=o.fn.extend=function(){var J=arguments[0]||{},H=1,I=arguments.length,E=false,G;if(typeof J==="boolean"){E=J;J=arguments[1]||{};H=2}if(typeof J!=="object"&&!o.isFunction(J)){J={}}if(I==H){J=this;--H}for(;H<I;H++){if((G=arguments[H])!=null){for(var F in G){var K=J[F],L=G[F];if(J===L){continue}if(E&&L&&typeof L==="object"&&!L.nodeType){J[F]=o.extend(E,K||(L.length!=null?[]:{}),L)}else{if(L!==g){J[F]=L}}}}}return J};var b=/z-?index|font-?weight|opacity|zoom|line-?height/i,q=document.defaultView||{},s=Object.prototype.toString;o.extend({noConflict:function(E){l.$=p;if(E){l.jQuery=y}return o},isFunction:function(E){return s.call(E)==="[object Function]"},isArray:function(E){return s.call(E)==="[object Array]"},isXMLDoc:function(E){return E.nodeType===9&&E.documentElement.nodeName!=="HTML"||!!E.ownerDocument&&o.isXMLDoc(E.ownerDocument)},globalEval:function(G){if(G&&/\S/.test(G)){var F=document.getElementsByTagName("head")[0]||document.documentElement,E=document.createElement("script");E.type="text/javascript";if(o.support.scriptEval){E.appendChild(document.createTextNode(G))}else{E.text=G}F.insertBefore(E,F.firstChild);F.removeChild(E)}},nodeName:function(F,E){return F.nodeName&&F.nodeName.toUpperCase()==E.toUpperCase()},each:function(G,K,F){var E,H=0,I=G.length;if(F){if(I===g){for(E in G){if(K.apply(G[E],F)===false){break}}}else{for(;H<I;){if(K.apply(G[H++],F)===false){break}}}}else{if(I===g){for(E in G){if(K.call(G[E],E,G[E])===false){break}}}else{for(var J=G[0];H<I&&K.call(J,H,J)!==false;J=G[++H]){}}}return G},prop:function(H,I,G,F,E){if(o.isFunction(I)){I=I.call(H,F)}return typeof I==="number"&&G=="curCSS"&&!b.test(E)?I+"px":I},className:{add:function(E,F){o.each((F||"").split(/\s+/),function(G,H){if(E.nodeType==1&&!o.className.has(E.className,H)){E.className+=(E.className?" ":"")+H}})},remove:function(E,F){if(E.nodeType==1){E.className=F!==g?o.grep(E.className.split(/\s+/),function(G){return !o.className.has(F,G)}).join(" "):""}},has:function(F,E){return F&&o.inArray(E,(F.className||F).toString().split(/\s+/))>-1}},swap:function(H,G,I){var E={};for(var F in G){E[F]=H.style[F];H.style[F]=G[F]}I.call(H);for(var F in G){H.style[F]=E[F]}},css:function(H,F,J,E){if(F=="width"||F=="height"){var L,G={position:"absolute",visibility:"hidden",display:"block"},K=F=="width"?["Left","Right"]:["Top","Bottom"];function I(){L=F=="width"?H.offsetWidth:H.offsetHeight;if(E==="border"){return}o.each(K,function(){if(!E){L-=parseFloat(o.curCSS(H,"padding"+this,true))||0}if(E==="margin"){L+=parseFloat(o.curCSS(H,"margin"+this,true))||0}else{L-=parseFloat(o.curCSS(H,"border"+this+"Width",true))||0}})}if(H.offsetWidth!==0){I()}else{o.swap(H,G,I)}return Math.max(0,Math.round(L))}return o.curCSS(H,F,J)},curCSS:function(I,F,G){var L,E=I.style;if(F=="opacity"&&!o.support.opacity){L=o.attr(E,"opacity");return L==""?"1":L}if(F.match(/float/i)){F=w}if(!G&&E&&E[F]){L=E[F]}else{if(q.getComputedStyle){if(F.match(/float/i)){F="float"}F=F.replace(/([A-Z])/g,"-$1").toLowerCase();var M=q.getComputedStyle(I,null);if(M){L=M.getPropertyValue(F)}if(F=="opacity"&&L==""){L="1"}}else{if(I.currentStyle){var J=F.replace(/\-(\w)/g,function(N,O){return O.toUpperCase()});L=I.currentStyle[F]||I.currentStyle[J];if(!/^\d+(px)?$/i.test(L)&&/^\d/.test(L)){var H=E.left,K=I.runtimeStyle.left;I.runtimeStyle.left=I.currentStyle.left;E.left=L||0;L=E.pixelLeft+"px";E.left=H;I.runtimeStyle.left=K}}}}return L},clean:function(F,K,I){K=K||document;if(typeof K.createElement==="undefined"){K=K.ownerDocument||K[0]&&K[0].ownerDocument||document}if(!I&&F.length===1&&typeof F[0]==="string"){var H=/^<(\w+)\s*\/?>$/.exec(F[0]);if(H){return[K.createElement(H[1])]}}var G=[],E=[],L=K.createElement("div");o.each(F,function(P,S){if(typeof S==="number"){S+=""}if(!S){return}if(typeof S==="string"){S=S.replace(/(<(\w+)[^>]*?)\/>/g,function(U,V,T){return T.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?U:V+"></"+T+">"});var O=S.replace(/^\s+/,"").substring(0,10).toLowerCase();var Q=!O.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!O.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||O.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!O.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!O.indexOf("<td")||!O.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!O.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||!o.support.htmlSerialize&&[1,"div<div>","</div>"]||[0,"",""];L.innerHTML=Q[1]+S+Q[2];while(Q[0]--){L=L.lastChild}if(!o.support.tbody){var R=/<tbody/i.test(S),N=!O.indexOf("<table")&&!R?L.firstChild&&L.firstChild.childNodes:Q[1]=="<table>"&&!R?L.childNodes:[];for(var M=N.length-1;M>=0;--M){if(o.nodeName(N[M],"tbody")&&!N[M].childNodes.length){N[M].parentNode.removeChild(N[M])}}}if(!o.support.leadingWhitespace&&/^\s/.test(S)){L.insertBefore(K.createTextNode(S.match(/^\s*/)[0]),L.firstChild)}S=o.makeArray(L.childNodes)}if(S.nodeType){G.push(S)}else{G=o.merge(G,S)}});if(I){for(var J=0;G[J];J++){if(o.nodeName(G[J],"script")&&(!G[J].type||G[J].type.toLowerCase()==="text/javascript")){E.push(G[J].parentNode?G[J].parentNode.removeChild(G[J]):G[J])}else{if(G[J].nodeType===1){G.splice.apply(G,[J+1,0].concat(o.makeArray(G[J].getElementsByTagName("script"))))}I.appendChild(G[J])}}return E}return G},attr:function(J,G,K){if(!J||J.nodeType==3||J.nodeType==8){return g}var H=!o.isXMLDoc(J),L=K!==g;G=H&&o.props[G]||G;if(J.tagName){var F=/href|src|style/.test(G);if(G=="selected"&&J.parentNode){J.parentNode.selectedIndex}if(G in J&&H&&!F){if(L){if(G=="type"&&o.nodeName(J,"input")&&J.parentNode){throw"type property can't be changed"}J[G]=K}if(o.nodeName(J,"form")&&J.getAttributeNode(G)){return J.getAttributeNode(G).nodeValue}if(G=="tabIndex"){var I=J.getAttributeNode("tabIndex");return I&&I.specified?I.value:J.nodeName.match(/(button|input|object|select|textarea)/i)?0:J.nodeName.match(/^(a|area)$/i)&&J.href?0:g}return J[G]}if(!o.support.style&&H&&G=="style"){return o.attr(J.style,"cssText",K)}if(L){J.setAttribute(G,""+K)}var E=!o.support.hrefNormalized&&H&&F?J.getAttribute(G,2):J.getAttribute(G);return E===null?g:E}if(!o.support.opacity&&G=="opacity"){if(L){J.zoom=1;J.filter=(J.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(K)+""=="NaN"?"":"alpha(opacity="+K*100+")")}return J.filter&&J.filter.indexOf("opacity=")>=0?(parseFloat(J.filter.match(/opacity=([^)]*)/)[1])/100)+"":""}G=G.replace(/-([a-z])/ig,function(M,N){return N.toUpperCase()});if(L){J[G]=K}return J[G]},trim:function(E){return(E||"").replace(/^\s+|\s+$/g,"")},makeArray:function(G){var E=[];if(G!=null){var F=G.length;if(F==null||typeof G==="string"||o.isFunction(G)||G.setInterval){E[0]=G}else{while(F){E[--F]=G[F]}}}return E},inArray:function(G,H){for(var E=0,F=H.length;E<F;E++){if(H[E]===G){return E}}return -1},merge:function(H,E){var F=0,G,I=H.length;if(!o.support.getAll){while((G=E[F++])!=null){if(G.nodeType!=8){H[I++]=G}}}else{while((G=E[F++])!=null){H[I++]=G}}return H},unique:function(K){var F=[],E={};try{for(var G=0,H=K.length;G<H;G++){var J=o.data(K[G]);if(!E[J]){E[J]=true;F.push(K[G])}}}catch(I){F=K}return F},grep:function(F,J,E){var G=[];for(var H=0,I=F.length;H<I;H++){if(!E!=!J(F[H],H)){G.push(F[H])}}return G},map:function(E,J){var F=[];for(var G=0,H=E.length;G<H;G++){var I=J(E[G],G);if(I!=null){F[F.length]=I}}return F.concat.apply([],F)}});var C=navigator.userAgent.toLowerCase();o.browser={version:(C.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1],safari:/webkit/.test(C),opera:/opera/.test(C),msie:/msie/.test(C)&&!/opera/.test(C),mozilla:/mozilla/.test(C)&&!/(compatible|webkit)/.test(C)};o.each({parent:function(E){return E.parentNode},parents:function(E){return o.dir(E,"parentNode")},next:function(E){return o.nth(E,2,"nextSibling")},prev:function(E){return o.nth(E,2,"previousSibling")},nextAll:function(E){return o.dir(E,"nextSibling")},prevAll:function(E){return o.dir(E,"previousSibling")},siblings:function(E){return o.sibling(E.parentNode.firstChild,E)},children:function(E){return o.sibling(E.firstChild)},contents:function(E){return o.nodeName(E,"iframe")?E.contentDocument||E.contentWindow.document:o.makeArray(E.childNodes)}},function(E,F){o.fn[E]=function(G){var H=o.map(this,F);if(G&&typeof G=="string"){H=o.multiFilter(G,H)}return this.pushStack(o.unique(H),E,G)}});o.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(E,F){o.fn[E]=function(G){var J=[],L=o(G);for(var K=0,H=L.length;K<H;K++){var I=(K>0?this.clone(true):this).get();o.fn[F].apply(o(L[K]),I);J=J.concat(I)}return this.pushStack(J,E,G)}});o.each({removeAttr:function(E){o.attr(this,E,"");if(this.nodeType==1){this.removeAttribute(E)}},addClass:function(E){o.className.add(this,E)},removeClass:function(E){o.className.remove(this,E)},toggleClass:function(F,E){if(typeof E!=="boolean"){E=!o.className.has(this,F)}o.className[E?"add":"remove"](this,F)},remove:function(E){if(!E||o.filter(E,[this]).length){o("*",this).add([this]).each(function(){o.event.remove(this);o.removeData(this)});if(this.parentNode){this.parentNode.removeChild(this)}}},empty:function(){o(this).children().remove();while(this.firstChild){this.removeChild(this.firstChild)}}},function(E,F){o.fn[E]=function(){return this.each(F,arguments)}});function j(E,F){return E[0]&&parseInt(o.curCSS(E[0],F,true),10)||0}var h="jQuery"+e(),v=0,A={};o.extend({cache:{},data:function(F,E,G){F=F==l?A:F;var H=F[h];if(!H){H=F[h]=++v}if(E&&!o.cache[H]){o.cache[H]={}}if(G!==g){o.cache[H][E]=G}return E?o.cache[H][E]:H},removeData:function(F,E){F=F==l?A:F;var H=F[h];if(E){if(o.cache[H]){delete o.cache[H][E];E="";for(E in o.cache[H]){break}if(!E){o.removeData(F)}}}else{try{delete F[h]}catch(G){if(F.removeAttribute){F.removeAttribute(h)}}delete o.cache[H]}},queue:function(F,E,H){if(F){E=(E||"fx")+"queue";var G=o.data(F,E);if(!G||o.isArray(H)){G=o.data(F,E,o.makeArray(H))}else{if(H){G.push(H)}}}return G},dequeue:function(H,G){var E=o.queue(H,G),F=E.shift();if(!G||G==="fx"){F=E[0]}if(F!==g){F.call(H)}}});o.fn.extend({data:function(E,G){var H=E.split(".");H[1]=H[1]?"."+H[1]:"";if(G===g){var F=this.triggerHandler("getData"+H[1]+"!",[H[0]]);if(F===g&&this.length){F=o.data(this[0],E)}return F===g&&H[1]?this.data(H[0]):F}else{return this.trigger("setData"+H[1]+"!",[H[0],G]).each(function(){o.data(this,E,G)})}},removeData:function(E){return this.each(function(){o.removeData(this,E)})},queue:function(E,F){if(typeof E!=="string"){F=E;E="fx"}if(F===g){return o.queue(this[0],E)}return this.each(function(){var G=o.queue(this,E,F);if(E=="fx"&&G.length==1){G[0].call(this)}})},dequeue:function(E){return this.each(function(){o.dequeue(this,E)})}});
+/*
+ * Sizzle CSS Selector Engine - v0.9.3
+ *  Copyright 2009, The Dojo Foundation
+ *  Released under the MIT, BSD, and GPL Licenses.
+ *  More information: http://sizzlejs.com/
+ */
+(function(){var R=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?/g,L=0,H=Object.prototype.toString;var F=function(Y,U,ab,ac){ab=ab||[];U=U||document;if(U.nodeType!==1&&U.nodeType!==9){return[]}if(!Y||typeof Y!=="string"){return ab}var Z=[],W,af,ai,T,ad,V,X=true;R.lastIndex=0;while((W=R.exec(Y))!==null){Z.push(W[1]);if(W[2]){V=RegExp.rightContext;break}}if(Z.length>1&&M.exec(Y)){if(Z.length===2&&I.relative[Z[0]]){af=J(Z[0]+Z[1],U)}else{af=I.relative[Z[0]]?[U]:F(Z.shift(),U);while(Z.length){Y=Z.shift();if(I.relative[Y]){Y+=Z.shift()}af=J(Y,af)}}}else{var ae=ac?{expr:Z.pop(),set:E(ac)}:F.find(Z.pop(),Z.length===1&&U.parentNode?U.parentNode:U,Q(U));af=F.filter(ae.expr,ae.set);if(Z.length>0){ai=E(af)}else{X=false}while(Z.length){var ah=Z.pop(),ag=ah;if(!I.relative[ah]){ah=""}else{ag=Z.pop()}if(ag==null){ag=U}I.relative[ah](ai,ag,Q(U))}}if(!ai){ai=af}if(!ai){throw"Syntax error, unrecognized expression: "+(ah||Y)}if(H.call(ai)==="[object Array]"){if(!X){ab.push.apply(ab,ai)}else{if(U.nodeType===1){for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&(ai[aa]===true||ai[aa].nodeType===1&&K(U,ai[aa]))){ab.push(af[aa])}}}else{for(var aa=0;ai[aa]!=null;aa++){if(ai[aa]&&ai[aa].nodeType===1){ab.push(af[aa])}}}}}else{E(ai,ab)}if(V){F(V,U,ab,ac);if(G){hasDuplicate=false;ab.sort(G);if(hasDuplicate){for(var aa=1;aa<ab.length;aa++){if(ab[aa]===ab[aa-1]){ab.splice(aa--,1)}}}}}return ab};F.matches=function(T,U){return F(T,null,null,U)};F.find=function(aa,T,ab){var Z,X;if(!aa){return[]}for(var W=0,V=I.order.length;W<V;W++){var Y=I.order[W],X;if((X=I.match[Y].exec(aa))){var U=RegExp.leftContext;if(U.substr(U.length-1)!=="\\"){X[1]=(X[1]||"").replace(/\\/g,"");Z=I.find[Y](X,T,ab);if(Z!=null){aa=aa.replace(I.match[Y],"");break}}}}if(!Z){Z=T.getElementsByTagName("*")}return{set:Z,expr:aa}};F.filter=function(ad,ac,ag,W){var V=ad,ai=[],aa=ac,Y,T,Z=ac&&ac[0]&&Q(ac[0]);while(ad&&ac.length){for(var ab in I.filter){if((Y=I.match[ab].exec(ad))!=null){var U=I.filter[ab],ah,af;T=false;if(aa==ai){ai=[]}if(I.preFilter[ab]){Y=I.preFilter[ab](Y,aa,ag,ai,W,Z);if(!Y){T=ah=true}else{if(Y===true){continue}}}if(Y){for(var X=0;(af=aa[X])!=null;X++){if(af){ah=U(af,Y,X,aa);var ae=W^!!ah;if(ag&&ah!=null){if(ae){T=true}else{aa[X]=false}}else{if(ae){ai.push(af);T=true}}}}}if(ah!==g){if(!ag){aa=ai}ad=ad.replace(I.match[ab],"");if(!T){return[]}break}}}if(ad==V){if(T==null){throw"Syntax error, unrecognized expression: "+ad}else{break}}V=ad}return aa};var I=F.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF_-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF_-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF_-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*_-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF_-]|\\.)+)(?:\((['"]*)((?:\([^\)]+\)|[^\2\(\)]*)+)\2\))?/},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(T){return T.getAttribute("href")}},relative:{"+":function(aa,T,Z){var X=typeof T==="string",ab=X&&!/\W/.test(T),Y=X&&!ab;if(ab&&!Z){T=T.toUpperCase()}for(var W=0,V=aa.length,U;W<V;W++){if((U=aa[W])){while((U=U.previousSibling)&&U.nodeType!==1){}aa[W]=Y||U&&U.nodeName===T?U||false:U===T}}if(Y){F.filter(T,aa,true)}},">":function(Z,U,aa){var X=typeof U==="string";if(X&&!/\W/.test(U)){U=aa?U:U.toUpperCase();for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){var W=Y.parentNode;Z[V]=W.nodeName===U?W:false}}}else{for(var V=0,T=Z.length;V<T;V++){var Y=Z[V];if(Y){Z[V]=X?Y.parentNode:Y.parentNode===U}}if(X){F.filter(U,Z,true)}}},"":function(W,U,Y){var V=L++,T=S;if(!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("parentNode",U,V,W,X,Y)},"~":function(W,U,Y){var V=L++,T=S;if(typeof U==="string"&&!U.match(/\W/)){var X=U=Y?U:U.toUpperCase();T=P}T("previousSibling",U,V,W,X,Y)}},find:{ID:function(U,V,W){if(typeof V.getElementById!=="undefined"&&!W){var T=V.getElementById(U[1]);return T?[T]:[]}},NAME:function(V,Y,Z){if(typeof Y.getElementsByName!=="undefined"){var U=[],X=Y.getElementsByName(V[1]);for(var W=0,T=X.length;W<T;W++){if(X[W].getAttribute("name")===V[1]){U.push(X[W])}}return U.length===0?null:U}},TAG:function(T,U){return U.getElementsByTagName(T[1])}},preFilter:{CLASS:function(W,U,V,T,Z,aa){W=" "+W[1].replace(/\\/g,"")+" ";if(aa){return W}for(var X=0,Y;(Y=U[X])!=null;X++){if(Y){if(Z^(Y.className&&(" "+Y.className+" ").indexOf(W)>=0)){if(!V){T.push(Y)}}else{if(V){U[X]=false}}}}return false},ID:function(T){return T[1].replace(/\\/g,"")},TAG:function(U,T){for(var V=0;T[V]===false;V++){}return T[V]&&Q(T[V])?U[1]:U[1].toUpperCase()},CHILD:function(T){if(T[1]=="nth"){var U=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(T[2]=="even"&&"2n"||T[2]=="odd"&&"2n+1"||!/\D/.test(T[2])&&"0n+"+T[2]||T[2]);T[2]=(U[1]+(U[2]||1))-0;T[3]=U[3]-0}T[0]=L++;return T},ATTR:function(X,U,V,T,Y,Z){var W=X[1].replace(/\\/g,"");if(!Z&&I.attrMap[W]){X[1]=I.attrMap[W]}if(X[2]==="~="){X[4]=" "+X[4]+" "}return X},PSEUDO:function(X,U,V,T,Y){if(X[1]==="not"){if(X[3].match(R).length>1||/^\w/.test(X[3])){X[3]=F(X[3],null,null,U)}else{var W=F.filter(X[3],U,V,true^Y);if(!V){T.push.apply(T,W)}return false}}else{if(I.match.POS.test(X[0])||I.match.CHILD.test(X[0])){return true}}return X},POS:function(T){T.unshift(true);return T}},filters:{enabled:function(T){return T.disabled===false&&T.type!=="hidden"},disabled:function(T){return T.disabled===true},checked:function(T){return T.checked===true},selected:function(T){T.parentNode.selectedIndex;return T.selected===true},parent:function(T){return !!T.firstChild},empty:function(T){return !T.firstChild},has:function(V,U,T){return !!F(T[3],V).length},header:function(T){return/h\d/i.test(T.nodeName)},text:function(T){return"text"===T.type},radio:function(T){return"radio"===T.type},checkbox:function(T){return"checkbox"===T.type},file:function(T){return"file"===T.type},password:function(T){return"password"===T.type},submit:function(T){return"submit"===T.type},image:function(T){return"image"===T.type},reset:function(T){return"reset"===T.type},button:function(T){return"button"===T.type||T.nodeName.toUpperCase()==="BUTTON"},input:function(T){return/input|select|textarea|button/i.test(T.nodeName)}},setFilters:{first:function(U,T){return T===0},last:function(V,U,T,W){return U===W.length-1},even:function(U,T){return T%2===0},odd:function(U,T){return T%2===1},lt:function(V,U,T){return U<T[3]-0},gt:function(V,U,T){return U>T[3]-0},nth:function(V,U,T){return T[3]-0==U},eq:function(V,U,T){return T[3]-0==U}},filter:{PSEUDO:function(Z,V,W,aa){var U=V[1],X=I.filters[U];if(X){return X(Z,W,V,aa)}else{if(U==="contains"){return(Z.textContent||Z.innerText||"").indexOf(V[3])>=0}else{if(U==="not"){var Y=V[3];for(var W=0,T=Y.length;W<T;W++){if(Y[W]===Z){return false}}return true}}}},CHILD:function(T,W){var Z=W[1],U=T;switch(Z){case"only":case"first":while(U=U.previousSibling){if(U.nodeType===1){return false}}if(Z=="first"){return true}U=T;case"last":while(U=U.nextSibling){if(U.nodeType===1){return false}}return true;case"nth":var V=W[2],ac=W[3];if(V==1&&ac==0){return true}var Y=W[0],ab=T.parentNode;if(ab&&(ab.sizcache!==Y||!T.nodeIndex)){var X=0;for(U=ab.firstChild;U;U=U.nextSibling){if(U.nodeType===1){U.nodeIndex=++X}}ab.sizcache=Y}var aa=T.nodeIndex-ac;if(V==0){return aa==0}else{return(aa%V==0&&aa/V>=0)}}},ID:function(U,T){return U.nodeType===1&&U.getAttribute("id")===T},TAG:function(U,T){return(T==="*"&&U.nodeType===1)||U.nodeName===T},CLASS:function(U,T){return(" "+(U.className||U.getAttribute("class"))+" ").indexOf(T)>-1},ATTR:function(Y,W){var V=W[1],T=I.attrHandle[V]?I.attrHandle[V](Y):Y[V]!=null?Y[V]:Y.getAttribute(V),Z=T+"",X=W[2],U=W[4];return T==null?X==="!=":X==="="?Z===U:X==="*="?Z.indexOf(U)>=0:X==="~="?(" "+Z+" ").indexOf(U)>=0:!U?Z&&T!==false:X==="!="?Z!=U:X==="^="?Z.indexOf(U)===0:X==="$="?Z.substr(Z.length-U.length)===U:X==="|="?Z===U||Z.substr(0,U.length+1)===U+"-":false},POS:function(X,U,V,Y){var T=U[2],W=I.setFilters[T];if(W){return W(X,V,U,Y)}}}};var M=I.match.POS;for(var O in I.match){I.match[O]=RegExp(I.match[O].source+/(?![^\[]*\])(?![^\(]*\))/.source)}var E=function(U,T){U=Array.prototype.slice.call(U);if(T){T.push.apply(T,U);return T}return U};try{Array.prototype.slice.call(document.documentElement.childNodes)}catch(N){E=function(X,W){var U=W||[];if(H.call(X)==="[object Array]"){Array.prototype.push.apply(U,X)}else{if(typeof X.length==="number"){for(var V=0,T=X.length;V<T;V++){U.push(X[V])}}else{for(var V=0;X[V];V++){U.push(X[V])}}}return U}}var G;if(document.documentElement.compareDocumentPosition){G=function(U,T){var V=U.compareDocumentPosition(T)&4?-1:U===T?0:1;if(V===0){hasDuplicate=true}return V}}else{if("sourceIndex" in document.documentElement){G=function(U,T){var V=U.sourceIndex-T.sourceIndex;if(V===0){hasDuplicate=true}return V}}else{if(document.createRange){G=function(W,U){var V=W.ownerDocument.createRange(),T=U.ownerDocument.createRange();V.selectNode(W);V.collapse(true);T.selectNode(U);T.collapse(true);var X=V.compareBoundaryPoints(Range.START_TO_END,T);if(X===0){hasDuplicate=true}return X}}}}(function(){var U=document.createElement("form"),V="script"+(new Date).getTime();U.innerHTML="<input name='"+V+"'/>";var T=document.documentElement;T.insertBefore(U,T.firstChild);if(!!document.getElementById(V)){I.find.ID=function(X,Y,Z){if(typeof Y.getElementById!=="undefined"&&!Z){var W=Y.getElementById(X[1]);return W?W.id===X[1]||typeof W.getAttributeNode!=="undefined"&&W.getAttributeNode("id").nodeValue===X[1]?[W]:g:[]}};I.filter.ID=function(Y,W){var X=typeof Y.getAttributeNode!=="undefined"&&Y.getAttributeNode("id");return Y.nodeType===1&&X&&X.nodeValue===W}}T.removeChild(U)})();(function(){var T=document.createElement("div");T.appendChild(document.createComment(""));if(T.getElementsByTagName("*").length>0){I.find.TAG=function(U,Y){var X=Y.getElementsByTagName(U[1]);if(U[1]==="*"){var W=[];for(var V=0;X[V];V++){if(X[V].nodeType===1){W.push(X[V])}}X=W}return X}}T.innerHTML="<a href='#'></a>";if(T.firstChild&&typeof T.firstChild.getAttribute!=="undefined"&&T.firstChild.getAttribute("href")!=="#"){I.attrHandle.href=function(U){return U.getAttribute("href",2)}}})();if(document.querySelectorAll){(function(){var T=F,U=document.createElement("div");U.innerHTML="<p class='TEST'></p>";if(U.querySelectorAll&&U.querySelectorAll(".TEST").length===0){return}F=function(Y,X,V,W){X=X||document;if(!W&&X.nodeType===9&&!Q(X)){try{return E(X.querySelectorAll(Y),V)}catch(Z){}}return T(Y,X,V,W)};F.find=T.find;F.filter=T.filter;F.selectors=T.selectors;F.matches=T.matches})()}if(document.getElementsByClassName&&document.documentElement.getElementsByClassName){(function(){var T=document.createElement("div");T.innerHTML="<div class='test e'></div><div class='test'></div>";if(T.getElementsByClassName("e").length===0){return}T.lastChild.className="e";if(T.getElementsByClassName("e").length===1){return}I.order.splice(1,0,"CLASS");I.find.CLASS=function(U,V,W){if(typeof V.getElementsByClassName!=="undefined"&&!W){return V.getElementsByClassName(U[1])}}})()}function P(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1&&!ac){T.sizcache=Y;T.sizset=W}if(T.nodeName===Z){X=T;break}T=T[U]}ad[W]=X}}}function S(U,Z,Y,ad,aa,ac){var ab=U=="previousSibling"&&!ac;for(var W=0,V=ad.length;W<V;W++){var T=ad[W];if(T){if(ab&&T.nodeType===1){T.sizcache=Y;T.sizset=W}T=T[U];var X=false;while(T){if(T.sizcache===Y){X=ad[T.sizset];break}if(T.nodeType===1){if(!ac){T.sizcache=Y;T.sizset=W}if(typeof Z!=="string"){if(T===Z){X=true;break}}else{if(F.filter(Z,[T]).length>0){X=T;break}}}T=T[U]}ad[W]=X}}}var K=document.compareDocumentPosition?function(U,T){return U.compareDocumentPosition(T)&16}:function(U,T){return U!==T&&(U.contains?U.contains(T):true)};var Q=function(T){return T.nodeType===9&&T.documentElement.nodeName!=="HTML"||!!T.ownerDocument&&Q(T.ownerDocument)};var J=function(T,aa){var W=[],X="",Y,V=aa.nodeType?[aa]:aa;while((Y=I.match.PSEUDO.exec(T))){X+=Y[0];T=T.replace(I.match.PSEUDO,"")}T=I.relative[T]?T+"*":T;for(var Z=0,U=V.length;Z<U;Z++){F(T,V[Z],W)}return F.filter(X,W)};o.find=F;o.filter=F.filter;o.expr=F.selectors;o.expr[":"]=o.expr.filters;F.selectors.filters.hidden=function(T){return T.offsetWidth===0||T.offsetHeight===0};F.selectors.filters.visible=function(T){return T.offsetWidth>0||T.offsetHeight>0};F.selectors.filters.animated=function(T){return o.grep(o.timers,function(U){return T===U.elem}).length};o.multiFilter=function(V,T,U){if(U){V=":not("+V+")"}return F.matches(V,T)};o.dir=function(V,U){var T=[],W=V[U];while(W&&W!=document){if(W.nodeType==1){T.push(W)}W=W[U]}return T};o.nth=function(X,T,V,W){T=T||1;var U=0;for(;X;X=X[V]){if(X.nodeType==1&&++U==T){break}}return X};o.sibling=function(V,U){var T=[];for(;V;V=V.nextSibling){if(V.nodeType==1&&V!=U){T.push(V)}}return T};return;l.Sizzle=F})();o.event={add:function(I,F,H,K){if(I.nodeType==3||I.nodeType==8){return}if(I.setInterval&&I!=l){I=l}if(!H.guid){H.guid=this.guid++}if(K!==g){var G=H;H=this.proxy(G);H.data=K}var E=o.data(I,"events")||o.data(I,"events",{}),J=o.data(I,"handle")||o.data(I,"handle",function(){return typeof o!=="undefined"&&!o.event.triggered?o.event.handle.apply(arguments.callee.elem,arguments):g});J.elem=I;o.each(F.split(/\s+/),function(M,N){var O=N.split(".");N=O.shift();H.type=O.slice().sort().join(".");var L=E[N];if(o.event.specialAll[N]){o.event.specialAll[N].setup.call(I,K,O)}if(!L){L=E[N]={};if(!o.event.special[N]||o.event.special[N].setup.call(I,K,O)===false){if(I.addEventListener){I.addEventListener(N,J,false)}else{if(I.attachEvent){I.attachEvent("on"+N,J)}}}}L[H.guid]=H;o.event.global[N]=true});I=null},guid:1,global:{},remove:function(K,H,J){if(K.nodeType==3||K.nodeType==8){return}var G=o.data(K,"events"),F,E;if(G){if(H===g||(typeof H==="string"&&H.charAt(0)==".")){for(var I in G){this.remove(K,I+(H||""))}}else{if(H.type){J=H.handler;H=H.type}o.each(H.split(/\s+/),function(M,O){var Q=O.split(".");O=Q.shift();var N=RegExp("(^|\\.)"+Q.slice().sort().join(".*\\.")+"(\\.|$)");if(G[O]){if(J){delete G[O][J.guid]}else{for(var P in G[O]){if(N.test(G[O][P].type)){delete G[O][P]}}}if(o.event.specialAll[O]){o.event.specialAll[O].teardown.call(K,Q)}for(F in G[O]){break}if(!F){if(!o.event.special[O]||o.event.special[O].teardown.call(K,Q)===false){if(K.removeEventListener){K.removeEventListener(O,o.data(K,"handle"),false)}else{if(K.detachEvent){K.detachEvent("on"+O,o.data(K,"handle"))}}}F=null;delete G[O]}}})}for(F in G){break}if(!F){var L=o.data(K,"handle");if(L){L.elem=null}o.removeData(K,"events");o.removeData(K,"handle")}}},trigger:function(I,K,H,E){var G=I.type||I;if(!E){I=typeof I==="object"?I[h]?I:o.extend(o.Event(G),I):o.Event(G);if(G.indexOf("!")>=0){I.type=G=G.slice(0,-1);I.exclusive=true}if(!H){I.stopPropagation();if(this.global[G]){o.each(o.cache,function(){if(this.events&&this.events[G]){o.event.trigger(I,K,this.handle.elem)}})}}if(!H||H.nodeType==3||H.nodeType==8){return g}I.result=g;I.target=H;K=o.makeArray(K);K.unshift(I)}I.currentTarget=H;var J=o.data(H,"handle");if(J){J.apply(H,K)}if((!H[G]||(o.nodeName(H,"a")&&G=="click"))&&H["on"+G]&&H["on"+G].apply(H,K)===false){I.result=false}if(!E&&H[G]&&!I.isDefaultPrevented()&&!(o.nodeName(H,"a")&&G=="click")){this.triggered=true;try{H[G]()}catch(L){}}this.triggered=false;if(!I.isPropagationStopped()){var F=H.parentNode||H.ownerDocument;if(F){o.event.trigger(I,K,F,true)}}},handle:function(K){var J,E;K=arguments[0]=o.event.fix(K||l.event);K.currentTarget=this;var L=K.type.split(".");K.type=L.shift();J=!L.length&&!K.exclusive;var I=RegExp("(^|\\.)"+L.slice().sort().join(".*\\.")+"(\\.|$)");E=(o.data(this,"events")||{})[K.type];for(var G in E){var H=E[G];if(J||I.test(H.type)){K.handler=H;K.data=H.data;var F=H.apply(this,arguments);if(F!==g){K.result=F;if(F===false){K.preventDefault();K.stopPropagation()}}if(K.isImmediatePropagationStopped()){break}}}},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(H){if(H[h]){return H}var F=H;H=o.Event(F);for(var G=this.props.length,J;G;){J=this.props[--G];H[J]=F[J]}if(!H.target){H.target=H.srcElement||document}if(H.target.nodeType==3){H.target=H.target.parentNode}if(!H.relatedTarget&&H.fromElement){H.relatedTarget=H.fromElement==H.target?H.toElement:H.fromElement}if(H.pageX==null&&H.clientX!=null){var I=document.documentElement,E=document.body;H.pageX=H.clientX+(I&&I.scrollLeft||E&&E.scrollLeft||0)-(I.clientLeft||0);H.pageY=H.clientY+(I&&I.scrollTop||E&&E.scrollTop||0)-(I.clientTop||0)}if(!H.which&&((H.charCode||H.charCode===0)?H.charCode:H.keyCode)){H.which=H.charCode||H.keyCode}if(!H.metaKey&&H.ctrlKey){H.metaKey=H.ctrlKey}if(!H.which&&H.button){H.which=(H.button&1?1:(H.button&2?3:(H.button&4?2:0)))}return H},proxy:function(F,E){E=E||function(){return F.apply(this,arguments)};E.guid=F.guid=F.guid||E.guid||this.guid++;return E},special:{ready:{setup:B,teardown:function(){}}},specialAll:{live:{setup:function(E,F){o.event.add(this,F[0],c)},teardown:function(G){if(G.length){var E=0,F=RegExp("(^|\\.)"+G[0]+"(\\.|$)");o.each((o.data(this,"events").live||{}),function(){if(F.test(this.type)){E++}});if(E<1){o.event.remove(this,G[0],c)}}}}}};o.Event=function(E){if(!this.preventDefault){return new o.Event(E)}if(E&&E.type){this.originalEvent=E;this.type=E.type}else{this.type=E}this.timeStamp=e();this[h]=true};function k(){return false}function u(){return true}o.Event.prototype={preventDefault:function(){this.isDefaultPrevented=u;var E=this.originalEvent;if(!E){return}if(E.preventDefault){E.preventDefault()}E.returnValue=false},stopPropagation:function(){this.isPropagationStopped=u;var E=this.originalEvent;if(!E){return}if(E.stopPropagation){E.stopPropagation()}E.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=u;this.stopPropagation()},isDefaultPrevented:k,isPropagationStopped:k,isImmediatePropagationStopped:k};var a=function(F){var E=F.relatedTarget;while(E&&E!=this){try{E=E.parentNode}catch(G){E=this}}if(E!=this){F.type=F.data;o.event.handle.apply(this,arguments)}};o.each({mouseover:"mouseenter",mouseout:"mouseleave"},function(F,E){o.event.special[E]={setup:function(){o.event.add(this,F,a,E)},teardown:function(){o.event.remove(this,F,a)}}});o.fn.extend({bind:function(F,G,E){return F=="unload"?this.one(F,G,E):this.each(function(){o.event.add(this,F,E||G,E&&G)})},one:function(G,H,F){var E=o.event.proxy(F||H,function(I){o(this).unbind(I,E);return(F||H).apply(this,arguments)});return this.each(function(){o.event.add(this,G,E,F&&H)})},unbind:function(F,E){return this.each(function(){o.event.remove(this,F,E)})},trigger:function(E,F){return this.each(function(){o.event.trigger(E,F,this)})},triggerHandler:function(E,G){if(this[0]){var F=o.Event(E);F.preventDefault();F.stopPropagation();o.event.trigger(F,G,this[0]);return F.result}},toggle:function(G){var E=arguments,F=1;while(F<E.length){o.event.proxy(G,E[F++])}return this.click(o.event.proxy(G,function(H){this.lastToggle=(this.lastToggle||0)%F;H.preventDefault();return E[this.lastToggle++].apply(this,arguments)||false}))},hover:function(E,F){return this.mouseenter(E).mouseleave(F)},ready:function(E){B();if(o.isReady){E.call(document,o)}else{o.readyList.push(E)}return this},live:function(G,F){var E=o.event.proxy(F);E.guid+=this.selector+G;o(document).bind(i(G,this.selector),this.selector,E);return this},die:function(F,E){o(document).unbind(i(F,this.selector),E?{guid:E.guid+this.selector+F}:null);return this}});function c(H){var E=RegExp("(^|\\.)"+H.type+"(\\.|$)"),G=true,F=[];o.each(o.data(this,"events").live||[],function(I,J){if(E.test(J.type)){var K=o(H.target).closest(J.data)[0];if(K){F.push({elem:K,fn:J})}}});F.sort(function(J,I){return o.data(J.elem,"closest")-o.data(I.elem,"closest")});o.each(F,function(){if(this.fn.call(this.elem,H,this.fn.data)===false){return(G=false)}});return G}function i(F,E){return["live",F,E.replace(/\./g,"`").replace(/ /g,"|")].join(".")}o.extend({isReady:false,readyList:[],ready:function(){if(!o.isReady){o.isReady=true;if(o.readyList){o.each(o.readyList,function(){this.call(document,o)});o.readyList=null}o(document).triggerHandler("ready")}}});var x=false;function B(){if(x){return}x=true;if(document.addEventListener){document.addEventListener("DOMContentLoaded",function(){document.removeEventListener("DOMContentLoaded",arguments.callee,false);o.ready()},false)}else{if(document.attachEvent){document.attachEvent("onreadystatechange",function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",arguments.callee);o.ready()}});if(document.documentElement.doScroll&&l==l.top){(function(){if(o.isReady){return}try{document.documentElement.doScroll("left")}catch(E){setTimeout(arguments.callee,0);return}o.ready()})()}}}o.event.add(l,"load",o.ready)}o.each(("blur,focus,load,resize,scroll,unload,click,dblclick,mousedown,mouseup,mousemove,mouseover,mouseout,mouseenter,mouseleave,change,select,submit,keydown,keypress,keyup,error").split(","),function(F,E){o.fn[E]=function(G){return G?this.bind(E,G):this.trigger(E)}});o(l).bind("unload",function(){for(var E in o.cache){if(E!=1&&o.cache[E].handle){o.event.remove(o.cache[E].handle.elem)}}});(function(){o.support={};var F=document.documentElement,G=document.createElement("script"),K=document.createElement("div"),J="script"+(new Date).getTime();K.style.display="none";K.innerHTML='   <link/><table></table><a href="/a" style="color:red;float:left;opacity:.5;">a</a><select><option>text</option></select><object><param/></object>';var H=K.getElementsByTagName("*"),E=K.getElementsByTagName("a")[0];if(!H||!H.length||!E){return}o.support={leadingWhitespace:K.firstChild.nodeType==3,tbody:!K.getElementsByTagName("tbody").length,objectAll:!!K.getElementsByTagName("object")[0].getElementsByTagName("*").length,htmlSerialize:!!K.getElementsByTagName("link").length,style:/red/.test(E.getAttribute("style")),hrefNormalized:E.getAttribute("href")==="/a",opacity:E.style.opacity==="0.5",cssFloat:!!E.style.cssFloat,scriptEval:false,noCloneEvent:true,boxModel:null};G.type="text/javascript";try{G.appendChild(document.createTextNode("window."+J+"=1;"))}catch(I){}F.insertBefore(G,F.firstChild);if(l[J]){o.support.scriptEval=true;delete l[J]}F.removeChild(G);if(K.attachEvent&&K.fireEvent){K.attachEvent("onclick",function(){o.support.noCloneEvent=false;K.detachEvent("onclick",arguments.callee)});K.cloneNode(true).fireEvent("onclick")}o(function(){var L=document.createElement("div");L.style.width=L.style.paddingLeft="1px";document.body.appendChild(L);o.boxModel=o.support.boxModel=L.offsetWidth===2;document.body.removeChild(L).style.display="none"})})();var w=o.support.cssFloat?"cssFloat":"styleFloat";o.props={"for":"htmlFor","class":"className","float":w,cssFloat:w,styleFloat:w,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",tabindex:"tabIndex"};o.fn.extend({_load:o.fn.load,load:function(G,J,K){if(typeof G!=="string"){return this._load(G)}var I=G.indexOf(" ");if(I>=0){var E=G.slice(I,G.length);G=G.slice(0,I)}var H="GET";if(J){if(o.isFunction(J)){K=J;J=null}else{if(typeof J==="object"){J=o.param(J);H="POST"}}}var F=this;o.ajax({url:G,type:H,dataType:"html",data:J,complete:function(M,L){if(L=="success"||L=="notmodified"){F.html(E?o("<div/>").append(M.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(E):M.responseText)}if(K){F.each(K,[M.responseText,L,M])}}});return this},serialize:function(){return o.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?o.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password|search/i.test(this.type))}).map(function(E,F){var G=o(this).val();return G==null?null:o.isArray(G)?o.map(G,function(I,H){return{name:F.name,value:I}}):{name:F.name,value:G}}).get()}});o.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(E,F){o.fn[F]=function(G){return this.bind(F,G)}});var r=e();o.extend({get:function(E,G,H,F){if(o.isFunction(G)){H=G;G=null}return o.ajax({type:"GET",url:E,data:G,success:H,dataType:F})},getScript:function(E,F){return o.get(E,null,F,"script")},getJSON:function(E,F,G){return o.get(E,F,G,"json")},post:function(E,G,H,F){if(o.isFunction(G)){H=G;G={}}return o.ajax({type:"POST",url:E,data:G,success:H,dataType:F})},ajaxSetup:function(E){o.extend(o.ajaxSettings,E)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:function(){return l.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest()},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(M){M=o.extend(true,M,o.extend(true,{},o.ajaxSettings,M));var W,F=/=\?(&|$)/g,R,V,G=M.type.toUpperCase();if(M.data&&M.processData&&typeof M.data!=="string"){M.data=o.param(M.data)}if(M.dataType=="jsonp"){if(G=="GET"){if(!M.url.match(F)){M.url+=(M.url.match(/\?/)?"&":"?")+(M.jsonp||"callback")+"=?"}}else{if(!M.data||!M.data.match(F)){M.data=(M.data?M.data+"&":"")+(M.jsonp||"callback")+"=?"}}M.dataType="json"}if(M.dataType=="json"&&(M.data&&M.data.match(F)||M.url.match(F))){W="jsonp"+r++;if(M.data){M.data=(M.data+"").replace(F,"="+W+"$1")}M.url=M.url.replace(F,"="+W+"$1");M.dataType="script";l[W]=function(X){V=X;I();L();l[W]=g;try{delete l[W]}catch(Y){}if(H){H.removeChild(T)}}}if(M.dataType=="script"&&M.cache==null){M.cache=false}if(M.cache===false&&G=="GET"){var E=e();var U=M.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+E+"$2");M.url=U+((U==M.url)?(M.url.match(/\?/)?"&":"?")+"_="+E:"")}if(M.data&&G=="GET"){M.url+=(M.url.match(/\?/)?"&":"?")+M.data;M.data=null}if(M.global&&!o.active++){o.event.trigger("ajaxStart")}var Q=/^(\w+:)?\/\/([^\/?#]+)/.exec(M.url);if(M.dataType=="script"&&G=="GET"&&Q&&(Q[1]&&Q[1]!=location.protocol||Q[2]!=location.host)){var H=document.getElementsByTagName("head")[0];var T=document.createElement("script");T.src=M.url;if(M.scriptCharset){T.charset=M.scriptCharset}if(!W){var O=false;T.onload=T.onreadystatechange=function(){if(!O&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){O=true;I();L();T.onload=T.onreadystatechange=null;H.removeChild(T)}}}H.appendChild(T);return g}var K=false;var J=M.xhr();if(M.username){J.open(G,M.url,M.async,M.username,M.password)}else{J.open(G,M.url,M.async)}try{if(M.data){J.setRequestHeader("Content-Type",M.contentType)}if(M.ifModified){J.setRequestHeader("If-Modified-Since",o.lastModified[M.url]||"Thu, 01 Jan 1970 00:00:00 GMT")}J.setRequestHeader("X-Requested-With","XMLHttpRequest");J.setRequestHeader("Accept",M.dataType&&M.accepts[M.dataType]?M.accepts[M.dataType]+", */*":M.accepts._default)}catch(S){}if(M.beforeSend&&M.beforeSend(J,M)===false){if(M.global&&!--o.active){o.event.trigger("ajaxStop")}J.abort();return false}if(M.global){o.event.trigger("ajaxSend",[J,M])}var N=function(X){if(J.readyState==0){if(P){clearInterval(P);P=null;if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}}else{if(!K&&J&&(J.readyState==4||X=="timeout")){K=true;if(P){clearInterval(P);P=null}R=X=="timeout"?"timeout":!o.httpSuccess(J)?"error":M.ifModified&&o.httpNotModified(J,M.url)?"notmodified":"success";if(R=="success"){try{V=o.httpData(J,M.dataType,M)}catch(Z){R="parsererror"}}if(R=="success"){var Y;try{Y=J.getResponseHeader("Last-Modified")}catch(Z){}if(M.ifModified&&Y){o.lastModified[M.url]=Y}if(!W){I()}}else{o.handleError(M,J,R)}L();if(X){J.abort()}if(M.async){J=null}}}};if(M.async){var P=setInterval(N,13);if(M.timeout>0){setTimeout(function(){if(J&&!K){N("timeout")}},M.timeout)}}try{J.send(M.data)}catch(S){o.handleError(M,J,null,S)}if(!M.async){N()}function I(){if(M.success){M.success(V,R)}if(M.global){o.event.trigger("ajaxSuccess",[J,M])}}function L(){if(M.complete){M.complete(J,R)}if(M.global){o.event.trigger("ajaxComplete",[J,M])}if(M.global&&!--o.active){o.event.trigger("ajaxStop")}}return J},handleError:function(F,H,E,G){if(F.error){F.error(H,E,G)}if(F.global){o.event.trigger("ajaxError",[H,F,G])}},active:0,httpSuccess:function(F){try{return !F.status&&location.protocol=="file:"||(F.status>=200&&F.status<300)||F.status==304||F.status==1223}catch(E){}return false},httpNotModified:function(G,E){try{var H=G.getResponseHeader("Last-Modified");return G.status==304||H==o.lastModified[E]}catch(F){}return false},httpData:function(J,H,G){var F=J.getResponseHeader("content-type"),E=H=="xml"||!H&&F&&F.indexOf("xml")>=0,I=E?J.responseXML:J.responseText;if(E&&I.documentElement.tagName=="parsererror"){throw"parsererror"}if(G&&G.dataFilter){I=G.dataFilter(I,H)}if(typeof I==="string"){if(H=="script"){o.globalEval(I)}if(H=="json"){I=l["eval"]("("+I+")")}}return I},param:function(E){var G=[];function H(I,J){G[G.length]=encodeURIComponent(I)+"="+encodeURIComponent(J)}if(o.isArray(E)||E.jquery){o.each(E,function(){H(this.name,this.value)})}else{for(var F in E){if(o.isArray(E[F])){o.each(E[F],function(){H(F,this)})}else{H(F,o.isFunction(E[F])?E[F]():E[F])}}}return G.join("&").replace(/%20/g,"+")}});var m={},n,d=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];function t(F,E){var G={};o.each(d.concat.apply([],d.slice(0,E)),function(){G[this]=F});return G}o.fn.extend({show:function(J,L){if(J){return this.animate(t("show",3),J,L)}else{for(var H=0,F=this.length;H<F;H++){var E=o.data(this[H],"olddisplay");this[H].style.display=E||"";if(o.css(this[H],"display")==="none"){var G=this[H].tagName,K;if(m[G]){K=m[G]}else{var I=o("<"+G+" />").appendTo("body");K=I.css("display");if(K==="none"){K="block"}I.remove();m[G]=K}o.data(this[H],"olddisplay",K)}}for(var H=0,F=this.length;H<F;H++){this[H].style.display=o.data(this[H],"olddisplay")||""}return this}},hide:function(H,I){if(H){return this.animate(t("hide",3),H,I)}else{for(var G=0,F=this.length;G<F;G++){var E=o.data(this[G],"olddisplay");if(!E&&E!=="none"){o.data(this[G],"olddisplay",o.css(this[G],"display"))}}for(var G=0,F=this.length;G<F;G++){this[G].style.display="none"}return this}},_toggle:o.fn.toggle,toggle:function(G,F){var E=typeof G==="boolean";return o.isFunction(G)&&o.isFunction(F)?this._toggle.apply(this,arguments):G==null||E?this.each(function(){var H=E?G:o(this).is(":hidden");o(this)[H?"show":"hide"]()}):this.animate(t("toggle",3),G,F)},fadeTo:function(E,G,F){return this.animate({opacity:G},E,F)},animate:function(I,F,H,G){var E=o.speed(F,H,G);return this[E.queue===false?"each":"queue"](function(){var K=o.extend({},E),M,L=this.nodeType==1&&o(this).is(":hidden"),J=this;for(M in I){if(I[M]=="hide"&&L||I[M]=="show"&&!L){return K.complete.call(this)}if((M=="height"||M=="width")&&this.style){K.display=o.css(this,"display");K.overflow=this.style.overflow}}if(K.overflow!=null){this.style.overflow="hidden"}K.curAnim=o.extend({},I);o.each(I,function(O,S){var R=new o.fx(J,K,O);if(/toggle|show|hide/.test(S)){R[S=="toggle"?L?"show":"hide":S](I)}else{var Q=S.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),T=R.cur(true)||0;if(Q){var N=parseFloat(Q[2]),P=Q[3]||"px";if(P!="px"){J.style[O]=(N||1)+P;T=((N||1)/R.cur(true))*T;J.style[O]=T+P}if(Q[1]){N=((Q[1]=="-="?-1:1)*N)+T}R.custom(T,N,P)}else{R.custom(T,S,"")}}});return true})},stop:function(F,E){var G=o.timers;if(F){this.queue([])}this.each(function(){for(var H=G.length-1;H>=0;H--){if(G[H].elem==this){if(E){G[H](true)}G.splice(H,1)}}});if(!E){this.dequeue()}return this}});o.each({slideDown:t("show",1),slideUp:t("hide",1),slideToggle:t("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(E,F){o.fn[E]=function(G,H){return this.animate(F,G,H)}});o.extend({speed:function(G,H,F){var E=typeof G==="object"?G:{complete:F||!F&&H||o.isFunction(G)&&G,duration:G,easing:F&&H||H&&!o.isFunction(H)&&H};E.duration=o.fx.off?0:typeof E.duration==="number"?E.duration:o.fx.speeds[E.duration]||o.fx.speeds._default;E.old=E.complete;E.complete=function(){if(E.queue!==false){o(this).dequeue()}if(o.isFunction(E.old)){E.old.call(this)}};return E},easing:{linear:function(G,H,E,F){return E+F*G},swing:function(G,H,E,F){return((-Math.cos(G*Math.PI)/2)+0.5)*F+E}},timers:[],fx:function(F,E,G){this.options=E;this.elem=F;this.prop=G;if(!E.orig){E.orig={}}}});o.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(o.fx.step[this.prop]||o.fx.step._default)(this);if((this.prop=="height"||this.prop=="width")&&this.elem.style){this.elem.style.display="block"}},cur:function(F){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var E=parseFloat(o.css(this.elem,this.prop,F));return E&&E>-10000?E:parseFloat(o.curCSS(this.elem,this.prop))||0},custom:function(I,H,G){this.startTime=e();this.start=I;this.end=H;this.unit=G||this.unit||"px";this.now=this.start;this.pos=this.state=0;var E=this;function F(J){return E.step(J)}F.elem=this.elem;if(F()&&o.timers.push(F)&&!n){n=setInterval(function(){var K=o.timers;for(var J=0;J<K.length;J++){if(!K[J]()){K.splice(J--,1)}}if(!K.length){clearInterval(n);n=g}},13)}},show:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.show=true;this.custom(this.prop=="width"||this.prop=="height"?1:0,this.cur());o(this.elem).show()},hide:function(){this.options.orig[this.prop]=o.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(H){var G=e();if(H||G>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var E=true;for(var F in this.options.curAnim){if(this.options.curAnim[F]!==true){E=false}}if(E){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(o.css(this.elem,"display")=="none"){this.elem.style.display="block"}}if(this.options.hide){o(this.elem).hide()}if(this.options.hide||this.options.show){for(var I in this.options.curAnim){o.attr(this.elem.style,I,this.options.orig[I])}}this.options.complete.call(this.elem)}return false}else{var J=G-this.startTime;this.state=J/this.options.duration;this.pos=o.easing[this.options.easing||(o.easing.swing?"swing":"linear")](this.state,J,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update()}return true}};o.extend(o.fx,{speeds:{slow:600,fast:200,_default:400},step:{opacity:function(E){o.attr(E.elem.style,"opacity",E.now)},_default:function(E){if(E.elem.style&&E.elem.style[E.prop]!=null){E.elem.style[E.prop]=E.now+E.unit}else{E.elem[E.prop]=E.now}}}});if(document.documentElement.getBoundingClientRect){o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}var G=this[0].getBoundingClientRect(),J=this[0].ownerDocument,F=J.body,E=J.documentElement,L=E.clientTop||F.clientTop||0,K=E.clientLeft||F.clientLeft||0,I=G.top+(self.pageYOffset||o.boxModel&&E.scrollTop||F.scrollTop)-L,H=G.left+(self.pageXOffset||o.boxModel&&E.scrollLeft||F.scrollLeft)-K;return{top:I,left:H}}}else{o.fn.offset=function(){if(!this[0]){return{top:0,left:0}}if(this[0]===this[0].ownerDocument.body){return o.offset.bodyOffset(this[0])}o.offset.initialized||o.offset.initialize();var J=this[0],G=J.offsetParent,F=J,O=J.ownerDocument,M,H=O.documentElement,K=O.body,L=O.defaultView,E=L.getComputedStyle(J,null),N=J.offsetTop,I=J.offsetLeft;while((J=J.parentNode)&&J!==K&&J!==H){M=L.getComputedStyle(J,null);N-=J.scrollTop,I-=J.scrollLeft;if(J===G){N+=J.offsetTop,I+=J.offsetLeft;if(o.offset.doesNotAddBorder&&!(o.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(J.tagName))){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}F=G,G=J.offsetParent}if(o.offset.subtractsBorderForOverflowNotVisible&&M.overflow!=="visible"){N+=parseInt(M.borderTopWidth,10)||0,I+=parseInt(M.borderLeftWidth,10)||0}E=M}if(E.position==="relative"||E.position==="static"){N+=K.offsetTop,I+=K.offsetLeft}if(E.position==="fixed"){N+=Math.max(H.scrollTop,K.scrollTop),I+=Math.max(H.scrollLeft,K.scrollLeft)}return{top:N,left:I}}}o.offset={initialize:function(){if(this.initialized){return}var L=document.body,F=document.createElement("div"),H,G,N,I,M,E,J=L.style.marginTop,K='<div style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;"><div></div></div><table style="position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;" cellpadding="0" cellspacing="0"><tr><td></td></tr></table>';M={position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"};for(E in M){F.style[E]=M[E]}F.innerHTML=K;L.insertBefore(F,L.firstChild);H=F.firstChild,G=H.firstChild,I=H.nextSibling.firstChild.firstChild;this.doesNotAddBorder=(G.offsetTop!==5);this.doesAddBorderForTableAndCells=(I.offsetTop===5);H.style.overflow="hidden",H.style.position="relative";this.subtractsBorderForOverflowNotVisible=(G.offsetTop===-5);L.style.marginTop="1px";this.doesNotIncludeMarginInBodyOffset=(L.offsetTop===0);L.style.marginTop=J;L.removeChild(F);this.initialized=true},bodyOffset:function(E){o.offset.initialized||o.offset.initialize();var G=E.offsetTop,F=E.offsetLeft;if(o.offset.doesNotIncludeMarginInBodyOffset){G+=parseInt(o.curCSS(E,"marginTop",true),10)||0,F+=parseInt(o.curCSS(E,"marginLeft",true),10)||0}return{top:G,left:F}}};o.fn.extend({position:function(){var I=0,H=0,F;if(this[0]){var G=this.offsetParent(),J=this.offset(),E=/^body|html$/i.test(G[0].tagName)?{top:0,left:0}:G.offset();J.top-=j(this,"marginTop");J.left-=j(this,"marginLeft");E.top+=j(G,"borderTopWidth");E.left+=j(G,"borderLeftWidth");F={top:J.top-E.top,left:J.left-E.left}}return F},offsetParent:function(){var E=this[0].offsetParent||document.body;while(E&&(!/^body|html$/i.test(E.tagName)&&o.css(E,"position")=="static")){E=E.offsetParent}return o(E)}});o.each(["Left","Top"],function(F,E){var G="scroll"+E;o.fn[G]=function(H){if(!this[0]){return null}return H!==g?this.each(function(){this==l||this==document?l.scrollTo(!F?H:o(l).scrollLeft(),F?H:o(l).scrollTop()):this[G]=H}):this[0]==l||this[0]==document?self[F?"pageYOffset":"pageXOffset"]||o.boxModel&&document.documentElement[G]||document.body[G]:this[0][G]}});o.each(["Height","Width"],function(I,G){var E=I?"Left":"Top",H=I?"Right":"Bottom",F=G.toLowerCase();o.fn["inner"+G]=function(){return this[0]?o.css(this[0],F,false,"padding"):null};o.fn["outer"+G]=function(K){return this[0]?o.css(this[0],F,false,K?"margin":"border"):null};var J=G.toLowerCase();o.fn[J]=function(K){return this[0]==l?document.compatMode=="CSS1Compat"&&document.documentElement["client"+G]||document.body["client"+G]:this[0]==document?Math.max(document.documentElement["client"+G],document.body["scroll"+G],document.documentElement["scroll"+G],document.body["offset"+G],document.documentElement["offset"+G]):K===g?(this.length?o.css(this[0],J):null):this.css(J,typeof K==="string"?K:K+"px")}})})();
Index: /extensions/simple_themes/simple/js/jquery.cookie.min.js
===================================================================
--- /extensions/simple_themes/simple/js/jquery.cookie.min.js	(revision 13546)
+++ /extensions/simple_themes/simple/js/jquery.cookie.min.js	(revision 13546)
@@ -0,0 +1,10 @@
+/**
+ * Cookie plugin
+ * Copyright (c) 2006 Klaus Hartl (stilbuero.de)
+ * Dual licensed under the MIT and GPL licenses:
+ */
+jQuery.cookie=function(name,value,options){if(typeof value!='undefined'){options=options||{};if(value===null){value='';options=$.extend({},options);options.expires=-1;}
+var expires='';if(options.expires&&(typeof options.expires=='number'||options.expires.toUTCString)){var date;if(typeof options.expires=='number'){date=new Date();date.setTime(date.getTime()+(options.expires*24*60*60*1000));}else{date=options.expires;}
+expires='; expires='+date.toUTCString();}
+var path=options.path?'; path='+(options.path):'';var domain=options.domain?'; domain='+(options.domain):'';var secure=options.secure?'; secure':'';document.cookie=[name,'=',encodeURIComponent(value),expires,path,domain,secure].join('');}else{var cookieValue=null;if(document.cookie&&document.cookie!=''){var cookies=document.cookie.split(';');for(var i=0;i<cookies.length;i++){var cookie=jQuery.trim(cookies[i]);if(cookie.substring(0,name.length+1)==(name+'=')){cookieValue=decodeURIComponent(cookie.substring(name.length+1));break;}}}
+return cookieValue;}};
Index: /extensions/simple_themes/simple/js/rating.js
===================================================================
--- /extensions/simple_themes/simple/js/rating.js	(revision 13546)
+++ /extensions/simple_themes/simple/js/rating.js	(revision 13546)
@@ -0,0 +1,100 @@
+var gRatingOptions, gRatingButtons, gUserRating;
+
+function makeNiceRatingForm(options)
+{
+	gRatingOptions = options || {};
+	var form = document.getElementById('rateForm');
+	if (!form) return; //? template changed
+
+	gRatingButtons = form.getElementsByTagName('input');
+	gUserRating = "";
+	for (var i=0; i<gRatingButtons.length; i++)
+	{
+		if ( gRatingButtons[i].type=="button" )
+		{
+			gUserRating = gRatingButtons[i].value;
+			break;
+		}
+	}
+
+	for (var i=0; i<gRatingButtons.length; i++)
+	{
+		var rateButton = gRatingButtons[i];
+		rateButton.initialRateValue = rateButton.value; // save it as a property
+		try { rateButton.type = "button"; } catch (e){}// avoid normal submit (use ajax); not working in IE6
+
+		if (navigator.userAgent.indexOf('AppleWebKit/')==-1 && navigator.userAgent.indexOf('MSIE 8')==-1) rateButton.value = ""; //hide the text IE<8/Opera - breaks safari
+		with (rateButton.style)
+		{
+			textIndent = "-50px"; //hide the text FF
+			marginLeft = marginRight = 0;
+		}
+
+		if (i!=gRatingButtons.length-1 && rateButton.nextSibling.nodeType == 3 /*TEXT_NODE*/)
+			rateButton.parentNode.removeChild(rateButton.nextSibling);
+		if (i>0 && rateButton.previousSibling.nodeType == 3 /*TEXT_NODE*/)
+			rateButton.parentNode.removeChild(rateButton.previousSibling);
+
+		if(window.addEventListener){ // Mozilla, Netscape, Firefox
+			rateButton.addEventListener("click", updateRating, false );
+			rateButton.addEventListener("mouseout", resetRatingStarDisplay, false );
+			rateButton.addEventListener("mouseover", updateRatingStarDisplayEvt, false );
+		}
+		else if(window.attachEvent) { // IE
+			rateButton.attachEvent("onclick", updateRating);
+			rateButton.attachEvent("onmouseout", resetRatingStarDisplay);
+			rateButton.attachEvent("onmouseover", updateRatingStarDisplayEvt);
+		}
+	}
+	resetRatingStarDisplay();
+}
+
+function resetRatingStarDisplay()
+{
+	updateRatingStarDisplay( gUserRating );
+}
+
+function updateRatingStarDisplay(userRating)
+{
+	for (var i=0; i<gRatingButtons.length; i++)
+		gRatingButtons[i].className = (userRating!=="" && userRating>=gRatingButtons[i].initialRateValue ) ? "rateButtonStarFull" : "rateButtonStarEmpty";
+}
+
+function updateRatingStarDisplayEvt(e)
+{
+	updateRatingStarDisplay(
+		e.target ? e.target.initialRateValue : e.srcElement.initialRateValue);
+}
+
+function updateRating(e)
+{
+	var rateButton = e.target || e.srcElement;
+	if (rateButton.initialRateValue == gUserRating)
+		return false; //nothing to do
+
+	for (var i=0; i<gRatingButtons.length; i++) gRatingButtons[i].disabled=true;
+	var y = new PwgWS(gRatingOptions.rootUrl);
+	y.callService(
+		"pwg.images.rate", {image_id: gRatingOptions.image_id, rate: rateButton.initialRateValue } ,
+		{
+			onFailure: function(num, text) {
+				alert(num + " " + text);
+				document.location = rateButton.form.action + "&rate="+rateButton.initialRateValue;
+			},
+			onSuccess: function(result) {
+				gUserRating = rateButton.initialRateValue;
+				for (var i=0; i<gRatingButtons.length; i++) gRatingButtons[i].disabled=false;
+				if (gRatingOptions.updateRateElement) gRatingOptions.updateRateElement.innerHTML = gRatingOptions.updateRateText;
+				if (gRatingOptions.ratingSummaryElement)
+				{
+					var t = gRatingOptions.ratingSummaryText;
+					var args =[result.average, result.count, result.stdev], idx = 0, rexp = new RegExp( /%\.?\d*[sdf]/ );
+					_xxx = t.match( rexp );
+					while (idx<args.length) t=t.replace(rexp, args[idx++]);
+					gRatingOptions.ratingSummaryElement.innerHTML = t;
+				}
+			}
+		}
+	);
+	return false;
+}
Index: /extensions/simple_themes/simple/js/rating.min.js
===================================================================
--- /extensions/simple_themes/simple/js/rating.min.js	(revision 13546)
+++ /extensions/simple_themes/simple/js/rating.min.js	(revision 13546)
@@ -0,0 +1,24 @@
+var gRatingOptions,gRatingButtons,gUserRating;function makeNiceRatingForm(options)
+{gRatingOptions=options||{};var form=document.getElementById('rateForm');if(!form)return;gRatingButtons=form.getElementsByTagName('input');gUserRating="";for(var i=0;i<gRatingButtons.length;i++)
+{if(gRatingButtons[i].type=="button")
+{gUserRating=gRatingButtons[i].value;break;}}
+for(var i=0;i<gRatingButtons.length;i++)
+{var rateButton=gRatingButtons[i];rateButton.initialRateValue=rateButton.value;try{rateButton.type="button";}catch(e){}
+if(navigator.userAgent.indexOf('AppleWebKit/')==-1&&navigator.userAgent.indexOf('MSIE 8')==-1)rateButton.value="";with(rateButton.style)
+{textIndent="-50px";marginLeft=marginRight=0;}
+if(i!=gRatingButtons.length-1&&rateButton.nextSibling.nodeType==3)
+rateButton.parentNode.removeChild(rateButton.nextSibling);if(i>0&&rateButton.previousSibling.nodeType==3)
+rateButton.parentNode.removeChild(rateButton.previousSibling);if(window.addEventListener){rateButton.addEventListener("click",updateRating,false);rateButton.addEventListener("mouseout",resetRatingStarDisplay,false);rateButton.addEventListener("mouseover",updateRatingStarDisplayEvt,false);}
+else if(window.attachEvent){rateButton.attachEvent("onclick",updateRating);rateButton.attachEvent("onmouseout",resetRatingStarDisplay);rateButton.attachEvent("onmouseover",updateRatingStarDisplayEvt);}}
+resetRatingStarDisplay();}
+function resetRatingStarDisplay()
+{updateRatingStarDisplay(gUserRating);}
+function updateRatingStarDisplay(userRating)
+{for(var i=0;i<gRatingButtons.length;i++)
+gRatingButtons[i].className=(userRating!==""&&userRating>=gRatingButtons[i].initialRateValue)?"rateButtonStarFull":"rateButtonStarEmpty";}
+function updateRatingStarDisplayEvt(e)
+{updateRatingStarDisplay(e.target?e.target.initialRateValue:e.srcElement.initialRateValue);}
+function updateRating(e)
+{var rateButton=e.target||e.srcElement;if(rateButton.initialRateValue==gUserRating)
+return false;for(var i=0;i<gRatingButtons.length;i++)gRatingButtons[i].disabled=true;var y=new PwgWS(gRatingOptions.rootUrl);y.callService("pwg.images.rate",{image_id:gRatingOptions.image_id,rate:rateButton.initialRateValue},{onFailure:function(num,text){alert(num+" "+text);document.location=rateButton.form.action+"&rate="+rateButton.initialRateValue;},onSuccess:function(result){gUserRating=rateButton.initialRateValue;for(var i=0;i<gRatingButtons.length;i++)gRatingButtons[i].disabled=false;if(gRatingOptions.updateRateElement)gRatingOptions.updateRateElement.innerHTML=gRatingOptions.updateRateText;if(gRatingOptions.ratingSummaryElement)
+{var t=gRatingOptions.ratingSummaryText;var args=[result.average,result.count,result.stdev],idx=0,rexp=new RegExp(/%\.?\d*[sdf]/);_xxx=t.match(rexp);while(idx<args.length)t=t.replace(rexp,args[idx++]);gRatingOptions.ratingSummaryElement.innerHTML=t;}}});return false;}
Index: /extensions/simple_themes/simple/js/scripts.js
===================================================================
--- /extensions/simple_themes/simple/js/scripts.js	(revision 13546)
+++ /extensions/simple_themes/simple/js/scripts.js	(revision 13546)
@@ -0,0 +1,89 @@
+jQuery.noConflict();
+
+jQuery(document).ready(function($){
+  $("#theComments h3").click(function () {
+    $("#theComments > div").toggle("slow");
+  });
+
+  $("#menuswitcher").click(function(){
+    if ($("#menubar").is(":hidden")) {
+      $("#menubar").show("slow");
+      $.cookie('side-menu', 'showing', {path: "/"});
+      return false;
+    } else {
+      $("#menubar").hide("slow");
+      $.cookie('side-menu', 'hiding', {path: "/"});
+      return false;
+    }
+  });
+
+  // creates a variable with the contents of the cookie side-menu
+  var sidemenu = $.cookie('side-menu');
+  // if cookie says the menu is hiding, keep it hidden!
+  if (sidemenu == 'hiding') {
+    $("#menubar").hide();
+  }
+  if (sidemenu == 'showing') {
+    $("#menubar").show();
+  };
+});
+
+/**
+ * Cookie plugin
+ * Copyright (c) 2006 Klaus Hartl (stilbuero.de)
+ * Dual licensed under the MIT and GPL licenses:
+ */
+jQuery.cookie=function(name,value,options){if(typeof value!='undefined'){options=options||{};if(value===null){value='';options=$.extend({},options);options.expires=-1;}
+var expires='';if(options.expires&&(typeof options.expires=='number'||options.expires.toUTCString)){var date;if(typeof options.expires=='number'){date=new Date();date.setTime(date.getTime()+(options.expires*24*60*60*1000));}else{date=options.expires;}
+expires='; expires='+date.toUTCString();}
+var path=options.path?'; path='+(options.path):'';var domain=options.domain?'; domain='+(options.domain):'';var secure=options.secure?'; secure':'';document.cookie=[name,'=',encodeURIComponent(value),expires,path,domain,secure].join('');}else{var cookieValue=null;if(document.cookie&&document.cookie!=''){var cookies=document.cookie.split(';');for(var i=0;i<cookies.length;i++){var cookie=jQuery.trim(cookies[i]);if(cookie.substring(0,name.length+1)==(name+'=')){cookieValue=decodeURIComponent(cookie.substring(name.length+1));break;}}}
+return cookieValue;}};
+
+/**
+ * Piwigo scripts
+ */
+function phpWGOpenWindow(theURL,winName,features)
+{img=new Image();img.src=theURL;if(img.complete)
+{var width=img.width+40;var height=img.height+40;}
+else
+{var width=640;var height=480;img.onload=resizeWindowToFit;}
+newWin=window.open(theURL,winName,features+',left=2,top=1,width='+width+',height='+height);}
+function resizeWindowToFit()
+{newWin.resizeTo(img.width+50,img.height+100);}
+function popuphelp(url)
+{window.open(url,'dc_popup','alwaysRaised=yes,dependent=yes,toolbar=no,height=420,width=500,menubar=no,resizable=yes,scrollbars=yes,status=no');}
+Function.prototype.pwgBind=function(){var __method=this,object=arguments[0],args=new Array();for(var i=1;i<arguments.length;i++)
+args[i-1]=arguments[i];return function(){return __method.apply(object,args);}}
+function PwgWS(urlRoot)
+{this.urlRoot=urlRoot;this.options={method:"GET",async:true,onFailure:null,onSuccess:null};};PwgWS.prototype={callService:function(method,parameters,options)
+{if(options)
+{for(var property in options)
+this.options[property]=options[property];}
+try{this.transport=new XMLHttpRequest();}
+catch(e){try{this.transport=new ActiveXObject('Msxml2.XMLHTTP');}
+catch(e){try{this.transport=new ActiveXObject('Microsoft.XMLHTTP');}
+catch(e){dispatchError(0,"Cannot create request object");}}}
+this.transport.onreadystatechange=this.onStateChange.pwgBind(this);var url=this.urlRoot+"ws.php?format=json";var body="method="+method;if(parameters)
+{for(var property in parameters)
+{if(typeof parameters[property]=='object'&&parameters[property])
+{for(var i=0;i<parameters[property].length;i++)
+body+="&"+property+"[]="+encodeURIComponent(parameters[property][i]);}
+else
+body+="&"+property+"="+encodeURIComponent(parameters[property]);}}
+if(this.options.method=="POST")
+{this.transport.open(this.options.method,url,this.options.async);this.transport.setRequestHeader("Content-Type","application/x-www-form-urlencoded");this.transport.send(body);}
+else
+{url+="&"+body;this.transport.open(this.options.method,url,this.options.async);this.transport.send(null);}},onStateChange:function(){var readyState=this.transport.readyState;if(readyState==4)
+this.respondToReadyState(this.transport.readyState);},dispatchError:function(httpCode,text)
+{!this.options.onFailure||this.options.onFailure(httpCode,text);},respondToReadyState:function(readyState)
+{var transport=this.transport;if(readyState==4&&transport.status==200)
+{var resp;try{eval('resp = '+transport.responseText);}
+catch(e){this.dispatchError(200,e.message+'\n'+transport.responseText.substr(0,512));}
+if(resp!=null)
+{if(resp.stat==null)
+this.dispatchError(200,"Invalid response");else if(resp.stat=='ok')
+{if(this.options.onSuccess)this.options.onSuccess(resp.result);}
+else
+this.dispatchError(200,resp.err+" "+resp.message);}}
+if(readyState==4&&transport.status!=200)
+this.dispatchError(transport.status,transport.statusText);},transport:null,urlRoot:null,options:{}}
Index: /extensions/simple_themes/simple/print.css
===================================================================
--- /extensions/simple_themes/simple/print.css	(revision 13546)
+++ /extensions/simple_themes/simple/print.css	(revision 13546)
@@ -0,0 +1,16 @@
+body {
+    margin: 0;
+    color: #000000;
+    background: #ffffff;
+}
+
+#content {
+    margin: 0;
+}
+
+#menubar, #content .navigationBar, ul.categoryActions,
+#content div.calendarViews, .calendarBar, #imageToolBar, #addComment {
+    display: none;
+}
+
+
Index: /extensions/simple_themes/simple/template/about.tpl
===================================================================
--- /extensions/simple_themes/simple/template/about.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/about.tpl	(revision 13546)
@@ -0,0 +1,14 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'About'|@translate}</h2>
+</div>
+<div id="content">
+  {$ABOUT_MESSAGE}
+  {if isset($THEME_ABOUT) }
+  <ul>
+   <li>{$THEME_ABOUT}</li>
+  </ul>
+  {/if}
+</div>
Index: /extensions/simple_themes/simple/template/comment_list.tpl
===================================================================
--- /extensions/simple_themes/simple/template/comment_list.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/comment_list.tpl	(revision 13546)
@@ -0,0 +1,54 @@
+<ul>
+  {foreach from=$comments item=comment name=comment_loop}
+  <li>
+    {if isset($comment.TN_SRC)}
+    <div class="illustration">
+      <a href="{$comment.U_PICTURE}"><img src="{$comment.TN_SRC}" alt="{$comment.ALT}" /></a>
+    </div>
+    {/if}
+    <div class="description">
+      {if isset($comment.U_DELETE) or isset($comment.U_VALIDATE) or isset($comment.U_EDIT) }
+      <ul class="actions">
+	{if isset($comment.U_DELETE)}
+	<li>
+		<a href="{$comment.U_DELETE}" title="{'delete this comment'|@translate}" onclick="return confirm('{'Are you sure?'|@translate|@escape:javascript}');">
+			[delete]
+		</a>
+	</li>
+	{/if}
+    {if isset($comment.U_EDIT) and !isset($comment.IN_EDIT)}
+    <li>
+      <a class="editComment" href="{$comment.U_EDIT}#edit_comment" title="{'edit this comment'|@translate}">
+        [edit]
+      </a>
+    </li>
+    {/if}
+	{if isset($comment.U_VALIDATE)}
+	<li>
+		<a href="{$comment.U_VALIDATE}" title="{'validate this comment'|@translate}">
+			[validate]
+		</a>
+	</li>
+	{/if}
+      </ul>
+      {/if}
+      <span class="author">{$comment.AUTHOR}</span> - <span class="date">{$comment.DATE}</span>
+      {if isset($comment.IN_EDIT)}
+      <a name="edit_comment"></a>
+      <form  method="post" action="{$comment.U_EDIT}" class="filter" id="editComment">
+	  <fieldset>
+		<legend>{'Edit a comment'|@translate}</legend>
+		<label>{'Comment'|@translate}<textarea name="content" id="contenteditid" rows="5" cols="80">{$comment.CONTENT|@escape}</textarea></label>
+		<input type="hidden" name="key" value="{$comment.KEY}">
+		<input type="hidden" name="image_id" value="{$comment.IMAGE_ID|@default:$current.id}">
+		<input class="submit" type="submit" value="{'Submit'|@translate}">
+	  </fieldset>
+      </form>
+      {else}
+      <blockquote><div>{$comment.CONTENT}</div></blockquote>
+      {/if}
+    </div>
+  </li>
+  {/foreach}
+</ul>
+<div style="clear: both;"></div>
Index: /extensions/simple_themes/simple/template/comments.tpl
===================================================================
--- /extensions/simple_themes/simple/template/comments.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/comments.tpl	(revision 13546)
@@ -0,0 +1,56 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a class="button" href="{$U_HOME}" title="{'Home'|@translate}">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'User comments'|@translate}</h2>
+</div>
+<div id="content">
+  <form class="filter" action="{$F_ACTION}" method="get">
+    <fieldset>
+    <legend>{'Filter'|@translate}</legend>
+    <label>{'Keyword'|@translate}<input type="text" name="keyword" value="{$F_KEYWORD}"></label>
+    <label>{'Author'|@translate}<input type="text" name="author" value="{$F_AUTHOR}"></label>
+    <label>
+      {'Category'|@translate}
+      <select name="cat">
+        <option value="0">------------</option>
+        {html_options options=$categories selected=$categories_selected}
+      </select>
+    </label>
+    <label>
+      {'Since'|@translate}
+          <select name="since">
+            {html_options options=$since_options selected=$since_options_selected}
+          </select>
+    </label>
+    </fieldset>
+    <fieldset>
+      <legend>{'Display'|@translate}</legend>
+    <label>
+      {'Sort by'|@translate}
+          <select name="sort_by">
+            {html_options options=$sort_by_options selected=$sort_by_options_selected}
+          </select>
+    </label>
+    <label>
+      {'Sort order'|@translate}
+          <select name="sort_order">
+            {html_options options=$sort_order_options selected=$sort_order_options_selected}
+          </select>
+    </label>
+    <label>
+      {'Number of items'|@translate}
+          <select name="items_number">
+            {html_options options=$item_number_options selected=$item_number_options_selected}
+          </select>
+    </label>
+    </fieldset>
+    <p><input class="submit" type="submit" value="{'Filter and display'|@translate}"></p>
+  </form>
+  {if !empty($navbar) }{include file='navigation_bar.tpl'|@get_extent:'navbar'}{/if}
+  {if isset($comments)}
+  <div id="comments">
+    {include file='comment_list.tpl'}
+  </div>
+  {/if}
+</div> <!-- content -->
Index: /extensions/simple_themes/simple/template/footer.tpl
===================================================================
--- /extensions/simple_themes/simple/template/footer.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/footer.tpl	(revision 13546)
@@ -0,0 +1,27 @@
+  <div id="copyright">
+    {if isset($debug.TIME)}
+    {'Page generated in'|@translate} {$debug.TIME} ({$debug.NB_QUERIES} {'SQL queries in'|@translate} {$debug.SQL_TIME}) -
+    {/if}
+    {'Powered by'|@translate} <a href="{$PHPWG_URL}">Piwigo</a>
+     - <a href="{$themeconf.url}">{$themeconf.name}</a>
+    {if isset($CONTACT_MAIL)}
+    - {'Contact'|@translate}
+    <a href="mailto:{$CONTACT_MAIL}?subject={'A comment on your site'|@translate|@escape:url}">{'Webmaster'|@translate}</a>
+    {/if}
+  </div> <!-- copyright -->
+  {if isset($footer_elements)}
+  {foreach from=$footer_elements item=v}
+  {$v}
+  {/foreach}
+  {/if}
+</div> <!-- the_page -->
+<script type="text/javascript" src="{$ROOT_URL}themes/{$themeconf.theme_dir}/scripts.js"></script>
+<script type="text/javascript" src="{$ROOT_URL}themes/{$themeconf.theme_dir}/js/jquery-1.3.2.min.js"></script>
+<script type="text/javascript" src="{$ROOT_URL}themes/{$themeconf.theme_dir}/js/scripts.js"></script>
+{if isset($debug.QUERIES_LIST)}
+<div id="debug">
+{$debug.QUERIES_LIST}
+</div>
+{/if}
+</body>
+</html>
Index: /extensions/simple_themes/simple/template/header.tpl
===================================================================
--- /extensions/simple_themes/simple/template/header.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/header.tpl	(revision 13546)
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html lang="{$lang_info.code}" dir="{$lang_info.direction}">
+<head>
+  <meta http-equiv="Content-Type" content="text/html; charset={$CONTENT_ENCODING}">
+  <meta name="generator" content="Piwigo (aka PWG), see piwigo.org">
+{if isset($meta_ref) } 
+{if isset($INFO_AUTHOR)}
+<meta name="author" content="{$INFO_AUTHOR|@replace:'"':' '}">
+{/if}
+{if isset($related_tags)}
+<meta name="keywords" content="{foreach from=$related_tags item=tag name=tag_loop}{if !$smarty.foreach.tag_loop.first}, {/if}{$tag.name}{/foreach}">
+{/if}
+{if isset($COMMENT_IMG)}
+<meta name="description" content="{$COMMENT_IMG|@strip_tags:false|@replace:'"':' '}{if isset($INFO_FILE)} - {$INFO_FILE}{/if}">
+{else}
+<meta name="description" content="{$PAGE_TITLE}{if isset($INFO_FILE)} - {$INFO_FILE}{/if}">
+{/if}
+{/if}
+  <title>{$PAGE_TITLE} - {$GALLERY_TITLE}</title>
+  <link rel="shortcut icon" type="image/x-icon" href="{$ROOT_URL}{$themeconf.icon_dir}/favicon.ico">
+  <link rel="start" title="{'Home'|@translate}" href="{$U_HOME}" >
+  <link rel="search" title="{'Search'|@translate}" href="{$ROOT_URL}search.php" >
+  {if isset($first.U_IMG)   }<link rel="first" title="{'First'|@translate}" href="{$first.U_IMG}" >{/if}
+  {if isset($previous.U_IMG)}<link rel="prev" title="{'Previous'|@translate}" href="{$previous.U_IMG}" >{/if}
+  {if isset($next.U_IMG)    }<link rel="next" title="{'Next'|@translate}" href="{$next.U_IMG}" >{/if}
+  {if isset($last.U_IMG)    }<link rel="last" title="{'Last'|@translate}" href="{$last.U_IMG}" >{/if}
+  {if isset($U_UP)          }<link rel="up" title="{'Thumbnails'|@translate}" href="{$U_UP}" >{/if}
+
+  {foreach from=$themes item=theme}
+  {if $theme.load_css}
+  <link rel="stylesheet" type="text/css" href="{$ROOT_URL}themes/{$theme.id}/content.css">
+  <link rel="stylesheet" type="text/css" href="{$ROOT_URL}themes/{$theme.id}/theme.css">
+  {/if}
+  {if isset($theme.local_head)}{include file=$theme.local_head}{/if}
+  {/foreach}
+
+  {if isset($U_PREFETCH)}<link rel="prefetch" href="{$U_PREFETCH}">{/if}
+  {if not empty($page_refresh)}<meta http-equiv="refresh" content="{$page_refresh.TIME};url={$page_refresh.U_REFRESH}">{/if}
+  {if isset($U_FEED)}
+  <link rel="alternate" type="application/rss+xml" title="{'Image only RSS feed'|@translate}" href="{$U_FEED_IMAGE_ONLY}">
+  <link rel="alternate" type="application/rss+xml" title="{'Complete RSS feed (images, comments)'|@translate}" href="{$U_FEED}">
+  {/if}
+  <noscript><style type="text/css">
+      {literal}#menubar {display: block;} #theComments div {display: block;}{/literal}
+  </style></noscript>
+  {if not empty($head_elements)}
+    {foreach from=$head_elements item=elt}{$elt}
+    {/foreach}
+  {/if}
+</head>
+<body id="{$BODY_ID}">
+<div id="the_page">
+  {if not empty($header_msgs)}
+  <div class="header_msgs">
+    {foreach from=$header_msgs item=elt}
+    <p>{$elt}</p>
+    {/foreach}
+  </div>
+  {/if}
+  <div id="theHeader">{$PAGE_BANNER|@regex_replace:'#<h1>(.*?)</h1>#is':"<h1><a href=\"$U_HOME\">\\1</a></h1>"}</div>
+  <!--  <div id="theHeader">{$PAGE_BANNER}</div>-->
+  {if isset($theSwiftHeader)}{$theSwiftHeader}{/if}
+  {if not empty($header_notes)}
+  <div class="header_notes">
+    {foreach from=$header_notes item=elt}
+    <p>{$elt}</p>
+    {/foreach}
+  </div>
+  {/if}
Index: /extensions/simple_themes/simple/template/identification.tpl
===================================================================
--- /extensions/simple_themes/simple/template/identification.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/identification.tpl	(revision 13546)
@@ -0,0 +1,55 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a href="{$U_HOME}" title="{'Go through the gallery as a visitor'|@translate}">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'Identification'|@translate}</h2>
+</div>
+<div id="content">
+  {if isset($errors) }
+  <div class="errors">
+    <ul>
+      {foreach from=$errors item=error}
+      <li>{$error}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+  <form action="{$F_LOGIN_ACTION}" method="post" name="login_form">
+    <fieldset>
+      <legend>{'Connection settings'|@translate}</legend>
+    <input type="hidden" name="redirect" value="{$U_REDIRECT|urlencode}">
+      <ul>
+        <li>
+        <span class="property">
+            <label for="username">{'Username'|@translate}</label>
+        </span>
+        <input tabindex="1" class="login" type="text" name="username" id="username" size="25" maxlength="40">
+        </li>
+        <li>
+        <span class="property">
+            <label for="password">{'Password'|@translate}</label>
+        </span>
+        <input tabindex="2" class="login" type="password" name="password" id="password" size="25" maxlength="25">
+        </li>
+        {if $authorize_remembering }
+        <li>
+        <span class="property">
+          <label for="Auto login">{'Auto login'|@translate}</label>
+        </span>
+          <input tabindex="3" type="checkbox" name="remember_me" id="remember_me" value="1">
+        </li>
+        {/if}
+      </ul>
+    </fieldset>
+    <p><input class="submit" tabindex="4" type="submit" name="login" value="{'Submit'|@translate}"></p>
+  <p>
+    {if isset($U_REGISTER) }
+    <a href="{$U_REGISTER}" title="{'Register'|@translate}">{'Register'|@translate}</a>
+    {/if}
+    <a href="{$U_LOST_PASSWORD}" title="{'Forgot your password?'|@translate}">{'Forgot your password?'|@translate}</a>
+  </p>
+  </form>
+<script type="text/javascript"><!--
+       document.login_form.username.focus();
+//--></script>
+</div> <!-- content -->
Index: /extensions/simple_themes/simple/template/index.tpl
===================================================================
--- /extensions/simple_themes/simple/template/index.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/index.tpl	(revision 13546)
@@ -0,0 +1,49 @@
+{if !empty($PLUGIN_INDEX_CONTENT_BEFORE)}{$PLUGIN_INDEX_CONTENT_BEFORE}{/if}
+<div class="titrePage">
+  <span id="menuswitcher" title="Afficher/cacher le menu">Menu</span> »
+  {if isset($U_EDIT) or isset($U_SLIDESHOW) or !empty($PLUGIN_INDEX_ACTIONS)}
+  <ul class="categoryActions">
+    {if isset($U_EDIT)}
+    <li><a href="{$U_EDIT}" title="{'edit category informations'|@translate}">{'edit'|@translate}</a></li>
+    {/if}
+    {if isset($U_SLIDESHOW)}
+    <li><a href="{$U_SLIDESHOW}" title="{'slideshow'|@translate}" rel="nofollow">{'slideshow'|@translate}</a></li>
+    {/if}
+    {if !empty($PLUGIN_INDEX_ACTIONS)}{$PLUGIN_INDEX_ACTIONS}{/if}
+  </ul>
+  {/if}
+  <h2>{$TITLE}</h2>
+</div>
+<div id="content">
+  {$MENUBAR}
+  <div id="subcontent">
+    {if !empty($PLUGIN_INDEX_CONTENT_BEGIN)}{$PLUGIN_INDEX_CONTENT_BEGIN}{/if}
+    {if !empty($category_search_results) }
+    <div>{'Category results for'|@translate} <strong>{$QUERY_SEARCH}</strong> :
+      {foreach from=$category_search_results item=res name=res_loop}
+      {if !$smarty.foreach.res_loop.first} &mdash; {/if}
+      {$res}
+      {/foreach}
+    </div>
+    {/if}
+    {if !empty($tag_search_results) }
+    <div>{'Tag results for'|@translate} <strong>{$QUERY_SEARCH}</strong> :
+      {foreach from=$tag_search_results item=res name=res_loop}
+      {if !$smarty.foreach.res_loop.first} &mdash; {/if}
+      {$res}
+      {/foreach}
+    </div>
+    {/if}
+    {if !empty($CONTENT_DESCRIPTION) }
+    <p id="additional_info">
+      {$CONTENT_DESCRIPTION}
+    </p>
+    {/if}
+    {if !empty($CATEGORIES) }{$CATEGORIES}{/if}
+    {if !empty($THUMBNAILS) }<div id="thumbnails">{$THUMBNAILS}</div>{/if}
+    {if !empty($navbar) }{include file='navigation_bar.tpl'|@get_extent:'navbar'}{/if}
+    {if !empty($PLUGIN_INDEX_CONTENT_END) }{$PLUGIN_INDEX_CONTENT_END}{/if}
+  </div> <!-- subContent -->
+  <div style="clear: both;"></div>
+</div> <!-- content -->
+{if !empty($PLUGIN_INDEX_CONTENT_AFTER)}{$PLUGIN_INDEX_CONTENT_AFTER}{/if}
Index: /extensions/simple_themes/simple/template/mainpage_categories.tpl
===================================================================
--- /extensions/simple_themes/simple/template/mainpage_categories.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/mainpage_categories.tpl	(revision 13546)
@@ -0,0 +1,27 @@
+<ul class="thumbnailCategories">
+  {foreach from=$category_thumbnails item=cat}
+  <li>
+    <div class="illustration">
+      <a href="{$cat.URL}">
+        <img src="{$cat.TN_SRC}" alt="{$cat.TN_ALT}" title="{'shows images at the root of this category'|@translate}">
+      </a>
+    </div>
+    <div class="description">
+      <h3>
+		<a href="{$cat.URL}">{$cat.NAME}</a>
+		{if !empty($cat.icon_ts)}
+  		  <img title="{$cat.icon_ts.TITLE}" src="{$ROOT_URL}{$themeconf.icon_dir}/recent{if $cat.icon_ts.IS_CHILD_DATE}_by_child{/if}.png" class="icon" alt="(!)">
+		{/if}
+	  </h3>
+      {if isset($cat.INFO_DATES) }
+      <p class="thumbCatDescNfoDate">{$cat.INFO_DATES}</p>
+      {/if}
+
+      <p class="thumbCatDescNbImg">{$cat.CAPTION_NB_IMAGES}</p>
+      {if not empty($cat.DESCRIPTION)}
+      <p class="thumbCatDesc">{$cat.DESCRIPTION}</p>
+      {/if}
+    </div>
+  </li>
+  {/foreach}
+</ul>
Index: /extensions/simple_themes/simple/template/menubar.tpl
===================================================================
--- /extensions/simple_themes/simple/template/menubar.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/menubar.tpl	(revision 13546)
@@ -0,0 +1,15 @@
+{if !empty($blocks) }
+<div id="menubar">
+  {foreach from=$blocks key=id item=block}
+  {if ( not empty($block->template) or not empty($block->raw_content) )}
+  <div id="{$id}">
+    {if not empty($block->template)}
+    {include file=$block->template|@get_extent:$id }
+    {else}
+    {$block->raw_content}
+    {/if}
+  </div>
+  {/if}
+  {/foreach}
+</div>
+{/if}
Index: /extensions/simple_themes/simple/template/menubar_categories.tpl
===================================================================
--- /extensions/simple_themes/simple/template/menubar_categories.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/menubar_categories.tpl	(revision 13546)
@@ -0,0 +1,30 @@
+<h3><a href="{$block->data.U_CATEGORIES}">{'Categories'|@translate}</a></h3>
+
+{assign var='ref_level' value=0}
+{foreach from=$block->data.MENU_CATEGORIES item=cat}
+  {if $cat.LEVEL > $ref_level}
+  <ul>
+  {else}
+    </li>
+    {'</ul></li>'|@str_repeat:$ref_level-$cat.LEVEL}
+  {/if}
+    <li {if $cat.SELECTED}class="selected"{/if}>
+      <a href="{$cat.URL}" {if $cat.IS_UPPERCAT}rel="up"{/if} title="{$cat.TITLE}">{$cat.NAME}</a>
+      {if $cat.count_images > 0}
+      <span class="{if $cat.nb_images > 0}menuInfoCat{else}menuInfoCatByChild{/if}" title="{$cat.TITLE}">[{$cat.count_images}]</span>
+      {/if}
+      {if !empty($cat.icon_ts)}
+      <img title="{$cat.icon_ts.TITLE}" src="{$ROOT_URL}{$themeconf.icon_dir}/recent{if $cat.icon_ts.IS_CHILD_DATE}_by_child{/if}.png" class="icon" alt="(!)">
+      {/if}
+  {assign var='ref_level' value=$cat.LEVEL}
+{/foreach}
+{'</li></ul>'|@str_repeat:$ref_level}
+
+	{if isset($block->data.U_UPLOAD)}
+	<ul>
+		<li>
+			<a href="{$block->data.U_UPLOAD}">{'Upload a picture'|@translate}</a>
+		</li>
+	</ul>
+	{/if}
+	<p class="totalImages">{$pwg->l10n_dec('%d image', '%d images', $block->data.NB_PICTURE)}</p>
Index: /extensions/simple_themes/simple/template/menubar_identification.tpl
===================================================================
--- /extensions/simple_themes/simple/template/menubar_identification.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/menubar_identification.tpl	(revision 13546)
@@ -0,0 +1,18 @@
+<h3>{'Identification'|@translate}</h3>
+<ul>
+  {if isset($U_REGISTER)}
+  <li><a href="{$U_REGISTER}" title="{'Create a new account'|@translate}" rel="nofollow">{'Register'|@translate}</a></li>
+  {/if}
+  {if isset($U_LOGIN)}
+  <li><a href="{$U_LOGIN}" rel="nofollow">{'Login'|@translate}</a></li>
+  {/if}
+  {if isset($U_LOGOUT)}
+  <li><a href="{$U_LOGOUT}">{'Logout'|@translate}</a></li>
+  {/if}
+  {if isset($U_PROFILE)}
+  <li><a href="{$U_PROFILE}" title="{'customize the appareance of the gallery'|@translate}">{'Customize'|@translate}</a></li>
+  {/if}
+  {if isset($U_ADMIN)}
+  <li><a href="{$U_ADMIN}" title="{'available for administrators only'|@translate}">{'Administration'|@translate}</a></li>
+  {/if}
+</ul>
Index: /extensions/simple_themes/simple/template/menubar_links.tpl
===================================================================
--- /extensions/simple_themes/simple/template/menubar_links.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/menubar_links.tpl	(revision 13546)
@@ -0,0 +1,6 @@
+<h3>{'Links'|@translate}</h3>
+<ul>
+  {foreach from=$block->data item=link}
+  <li><a href="{$link.URL}">{$link.LABEL}</a></li>
+  {/foreach}
+</ul>
Index: /extensions/simple_themes/simple/template/menubar_menu.tpl
===================================================================
--- /extensions/simple_themes/simple/template/menubar_menu.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/menubar_menu.tpl	(revision 13546)
@@ -0,0 +1,8 @@
+<h3>{'Menu'|@translate}</h3>
+<ul>
+{foreach from=$block->data item=link}
+  {if is_array($link)}
+  <li><a href="{$link.URL}" title="{$link.TITLE}" {if isset($link.REL)}{$link.REL}{/if}>{$link.NAME}</a></li>
+  {/if}
+{/foreach}
+</ul>
Index: /extensions/simple_themes/simple/template/menubar_specials.tpl
===================================================================
--- /extensions/simple_themes/simple/template/menubar_specials.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/menubar_specials.tpl	(revision 13546)
@@ -0,0 +1,6 @@
+<h3>{'Specials'|@translate}</h3>
+<ul>
+  {foreach from=$block->data item=link}
+  <li><a href="{$link.URL}" title="{$link.TITLE}" {if isset($link.REL)}{$link.REL}{/if}>{$link.NAME}</a></li>
+  {/foreach}
+</ul>
Index: /extensions/simple_themes/simple/template/menubar_tags.tpl
===================================================================
--- /extensions/simple_themes/simple/template/menubar_tags.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/menubar_tags.tpl	(revision 13546)
@@ -0,0 +1,17 @@
+<h3>{'Related tags'|@translate}</h3>
+<ul id="menuTagCloud">
+  {foreach from=$block->data item=tag}
+  <li>
+	<a class="tagLevel{$tag.level}"
+	{if isset($tag.U_ADD)}
+		href="{$tag.U_ADD}"
+		title="{$pwg->l10n_dec('%d image is also linked to current tags', '%d images are also linked to current tags', $tag.counter)}"
+		rel="nofollow">+
+	{else}
+		href="{$tag.URL}"
+		title="{'See elements linked to this tag only'|@translate}">
+	{/if}
+		{$tag.name}</a>
+  </li>
+  {/foreach}
+</ul>
Index: /extensions/simple_themes/simple/template/navigation_bar.tpl
===================================================================
--- /extensions/simple_themes/simple/template/navigation_bar.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/navigation_bar.tpl	(revision 13546)
@@ -0,0 +1,28 @@
+<div class="navigationBar">
+  {if isset($navbar.URL_FIRST)}
+  <a href="{$navbar.URL_FIRST}" rel="first">{'First'|@translate}</a> |
+  <a href="{$navbar.URL_PREV}" rel="prev">{'Previous'|@translate}</a> |
+  {else}
+  {'First'|@translate} |
+  {'Previous'|@translate} |
+  {/if}
+
+  {assign var='prev_page' value=0}
+  {foreach from=$navbar.pages key=page item=url}
+    {if $page > $prev_page+1}...{/if}
+    {if $page == $navbar.CURRENT_PAGE}
+    <span class="pageNumberSelected">{$page}</span>
+    {else}
+    <a href="{$url}">{$page}</a>
+    {/if}
+    {assign var='prev_page' value=$page}
+  {/foreach}
+
+  {if isset($navbar.URL_NEXT)}
+  | <a href="{$navbar.URL_NEXT}" rel="next">{'Next'|@translate}</a>
+  | <a href="{$navbar.URL_LAST}" rel="last">{'Last'|@translate}</a>
+  {else}
+  | {'Next'|@translate}
+  | {'Last'|@translate}
+  {/if}
+</div>
Index: /extensions/simple_themes/simple/template/nbm.tpl
===================================================================
--- /extensions/simple_themes/simple/template/nbm.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/nbm.tpl	(revision 13546)
@@ -0,0 +1,26 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a href="{$U_HOME}" title="{'Go through the gallery as a visitor'|@translate}">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'Notification'|@translate}</h2>
+</div>
+<div id="content">
+  {if not empty($errors)}
+  <div class="errors">
+    <ul>
+      {foreach from=$errors item=error}
+      <li>{$error}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+  {if not empty($infos)}
+  <div class="infos">
+    <ul>
+      {foreach from=$infos item=info}
+      <li>{$info}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+</div>
Index: /extensions/simple_themes/simple/template/notification.tpl
===================================================================
--- /extensions/simple_themes/simple/template/notification.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/notification.tpl	(revision 13546)
@@ -0,0 +1,13 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'Notification'|@translate}</h2>
+</div>
+<div id="content">
+  <p>{'The RSS notification feed provides notification on news from this website : new pictures, updated categories, new comments. Use a RSS feed reader.'|@translate}</p>
+  <ul>
+    <li><a href="{$U_FEED_IMAGE_ONLY}">{'Image only RSS feed'|@translate}</a></li>
+    <li><a href="{$U_FEED}">{'Complete RSS feed (images, comments)'|@translate}</a></li>
+  </ul>
+</div>
Index: /extensions/simple_themes/simple/template/password.tpl
===================================================================
--- /extensions/simple_themes/simple/template/password.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/password.tpl	(revision 13546)
@@ -0,0 +1,46 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a class="button" href="{$U_HOME}" title="{'Go through the gallery as a visitor'|@translate}">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'Password forgotten'|@translate}</h2>
+</div>
+<div id="content">
+  {if count($errors)}
+  <div class="errors">
+    <ul>
+      {foreach from=$errors item=error}
+      <li>{$error}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+  {if count($infos)}
+  <div class="infos">
+    <ul>
+      {foreach from=$infos item=info}
+      <li>{$info}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+  <form action="{$F_ACTION}" method="post" class="properties">
+    <fieldset>
+      <legend>{'Retrieve password'|@translate}</legend>
+      <ul>
+        <li>
+        <span class="property">
+            <label for="mail_address">{'Email address'|@translate}</label>
+        </span>
+        <input class="login" type="text" name="mail_address" id="mail_address" size="40" maxlength="40" >
+        </li>
+        <li>
+        <span class="property">
+            <label for="no_mail_address">{'No email address'|@translate}</label>
+        </span>
+          <input type="checkbox" id="no_mail_address" name="no_mail_address" value="1">
+        </li>
+      </ul>
+    </fieldset>
+    <p><input class="submit" type="submit" name="submit" value="{'Send new password'|@translate}"></p>
+  </form>
+</div> <!-- content -->
Index: /extensions/simple_themes/simple/template/picture.tpl
===================================================================
--- /extensions/simple_themes/simple/template/picture.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/picture.tpl	(revision 13546)
@@ -0,0 +1,182 @@
+<div class="titrePage">
+  <div class="imageNumber">{$PHOTO}</div>
+    {$SECTION_TITLE}
+  » <h2>{$current.TITLE}</h2>
+</div> <!-- imageHeaderBar -->
+{if !empty($PLUGIN_PICTURE_BEFORE)}{$PLUGIN_PICTURE_BEFORE}{/if}
+<div id="content">
+  {if isset($errors)}
+  <div class="errors">
+    <ul>
+      {foreach from=$errors item=error}
+      <li>{$error}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+  {if isset($infos)}
+  <div class="infos">
+    <ul>
+      {foreach from=$infos item=info}
+      <li>{$info}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+  <div id="imageInfoBar">
+    <div id="imageToolBar">
+      {include file='picture_nav_buttons.tpl'|@get_extent:'picture_nav_buttons'}
+    </div>
+	{if $DISPLAY_NAV_THUMB}
+    {if isset($previous) }
+    <div id="navThumbPrev">
+      <a class="navThumb" href="{$previous.U_IMG}" title="{'Previous'|@translate} : {$previous.TITLE}" rel="prev">
+        <img src="{$previous.THUMB_SRC}" alt="{$previous.TITLE}"></a>
+    </div>
+    {/if}
+    {if isset($next) }
+    <div id="navThumbNext">
+      <a class="navThumb" href="{$next.U_IMG}" title="{'Next'|@translate} : {$next.TITLE}" rel="next">
+        <img src="{$next.THUMB_SRC}" alt="{$next.TITLE}"></a>
+    </div>
+    {/if}
+	{/if}
+    <div id="randomButtons">
+      <ul>
+        {if isset($U_SLIDESHOW_START) }
+        <li><a href="{$U_SLIDESHOW_START}" title="{'slideshow'|@translate}" rel="nofollow">{'slideshow'|@translate}</a></li>
+        {/if}
+        {if isset($PLUGIN_PICTURE_ACTIONS)}{$PLUGIN_PICTURE_ACTIONS}{/if}
+        {if !empty($U_SET_AS_REPRESENTATIVE) }
+        <li><a href="{$U_SET_AS_REPRESENTATIVE}" title="{'set as category representative'|@translate}">{'representative'|@translate}</a></li>
+        {/if}
+        {if isset($U_ADMIN) }
+        <li><a href="{$U_ADMIN}" title="{'Modify information'|@translate}">{'Modify information'|@translate}</a></li>
+        {/if}
+        <li><a href="{$U_METADATA}" title="{'Show file metadata'|@translate}" rel="nofollow">{'Show file metadata'|@translate}</a></li>
+      </ul>
+    </div>
+    {if isset($metadata)}
+    <div id="imageMeta">
+      {foreach from=$metadata item=meta}
+      <h3>{$meta.TITLE}</h3>
+      <dl>
+        {foreach from=$meta.lines item=value key=label}
+        <dt>{$label}</dt>
+        <dd>{$value}</dd>
+        {/foreach}
+      </dl>
+      {/foreach}
+    </div> <!-- imageMeta -->
+    {/if}
+    <div id="imageInfos">
+      <dl>
+        {if $display_info.author}
+        <dt>{'Author'|@translate}</dt>
+        <dd>{$INFO_AUTHOR}</dd>
+        {/if}
+         {if $display_info.created_on}
+        <dt>{'Created on'|@translate}</dt>
+        <dd>{$INFO_CREATION_DATE}</dd>
+        {/if}
+		 {if $display_info.posted_on}
+        <dt>{'Posted on'|@translate}</dt>
+        <dd>{$INFO_POSTED_DATE}</dd>
+		{/if}
+        {if isset($related_tags)}
+        <dt>{'Tags'|@translate}</dt>
+        <dd>{foreach from=$related_tags item=tag name=tag_loop}
+          {if !$smarty.foreach.tag_loop.first}, {/if}
+          <a href="{$tag.URL}">{$tag.name}</a>{/foreach}</dd>
+        {/if}
+         {if $display_info.tags}
+        <dt>{'Categories'|@translate}</dt>
+        <dd>
+          {foreach from=$related_categories item=cat name=tag_loop}
+          {if !$smarty.foreach.tag_loop.first}, {/if} {'&nbsp;'|@str_ireplace:'&#32;':$cat}{/foreach}
+        </dd>
+        {/if}
+		 {if $display_info.visits}
+        <dt>{'Visits'|@translate}</dt>
+        <dd>{$INFO_VISITS}</dd>
+		 {/if}
+        {if isset($rate_summary)}
+        <dt>{'Average rate'|@translate}</dt>
+        <dd id="ratingSummary">
+          {if $rate_summary.count}
+          {assign var='rate_text' value='%.2f (rated %d times, standard deviation = %.2f)'|@translate }
+          {$pwg->sprintf($rate_text, $rate_summary.average, $rate_summary.count, $rate_summary.std) }
+          {else}
+          {'no rate'|@translate}
+          {/if}
+        </dd>
+        {/if}
+        {if isset($rating)}
+        <dt><span id="updateRate">{if isset($rating.USER_RATE)}{'Update your rating'|@translate}{else}{'Rate this picture'|@translate}{/if}</span></dt>
+        <dd>
+          <form action="{$rating.F_ACTION}" method="post" id="rateForm">
+            <div>&nbsp;
+              {foreach from=$rating.marks item=mark name=rate_loop}
+              {if !$smarty.foreach.rate_loop.first} | {/if}
+              {if isset($rating.USER_RATE) && $mark==$rating.USER_RATE}
+              <input type="button" name="rate" value="{$mark}" class="rateButtonSelected" title="{$mark}" />
+              {else}
+              <input type="submit" name="rate" value="{$mark}" class="rateButton" title="{$mark}" />
+              {/if}
+              {/foreach}
+              <script type="text/javascript" src="{$ROOT_URL}themes/{$themeconf.theme_dir}/js/rating.min.js"></script>
+              <script type="text/javascript">
+                makeNiceRatingForm( {ldelim}rootUrl: '{$ROOT_URL|@escape:"javascript"}',
+                image_id: {$current.id},
+                updateRateText: "{'Update your rating'|@translate|@escape:'javascript'}",
+                updateRateElement: document.getElementById("updateRate"),
+                ratingSummaryText: "{'%.2f (rated %d times, standard deviation = %.2f)'|@translate|@escape:'javascript'}",
+                ratingSummaryElement: document.getElementById("ratingSummary") {rdelim} );
+              </script>
+            </div>
+          </form>
+        </dd>
+        {/if}
+      </dl>
+    </div> <!-- imageInfos -->
+  </div>
+  <div id="theImage">
+    {$ELEMENT_CONTENT}
+    {if isset($COMMENT_IMG)}
+    <p>{$COMMENT_IMG}</p>
+    {/if}
+  </div> <!-- theImage -->
+  <div style="clear: both;"></div>
+
+  {if (isset($COMMENT_COUNT) and ($COMMENT_COUNT>0)) or isset($comment_add) }
+  <div id="theComments">
+    <h3 title="{'Add a comment'|@translate}">{$pwg->l10n_dec('%d comment', '%d comments',$COMMENT_COUNT)}</h3>
+      {if !empty($COMMENT_NAV_BAR)}
+      <div class="navigationBar">{$COMMENT_NAV_BAR}</div>
+      {/if}
+      {if isset($comment_add)}
+      <div id="commentAdd">
+        <h4>{'Add a comment'|@translate}</h4>
+        <form  method="post" action="{$comment_add.F_ACTION}" class="filter">
+          {if $comment_add.SHOW_AUTHOR}
+          <p><label>{'Author'|@translate}&nbsp;:</label></p>
+          <p><input type="text" name="author" /></p>
+          {/if}
+          <p><label>{'Comment'|@translate}&nbsp;:</label></p>
+          <p><textarea name="content" id="contentid" rows="5" cols="50">{$comment_add.CONTENT}</textarea></p>
+          <p><input type="hidden" name="key" value="{$comment_add.KEY}" />
+            <input class="submit" type="submit" value="{'Submit'|@translate}"></p>
+        </form>
+      </div>
+      {/if}
+      {if !empty($navbar) }{include file='navigation_bar.tpl'|@get_extent:'navbar'}{/if}
+      {if isset($comments)}
+      <div id="commentList">
+        {include file='comment_list.tpl'}
+      </div>
+      {/if}
+  </div>
+  {/if} {*comments*}
+  <div style="clear: both;"></div>
+</div>
+{if !empty($PLUGIN_PICTURE_AFTER)}{$PLUGIN_PICTURE_AFTER}{/if}
Index: /extensions/simple_themes/simple/template/picture_content.tpl
===================================================================
--- /extensions/simple_themes/simple/template/picture_content.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/picture_content.tpl	(revision 13546)
@@ -0,0 +1,11 @@
+{if isset($high) }
+<a href="javascript:phpWGOpenWindow('{$high.U_HIGH}','{$high.UUID}','scrollbars=yes,toolbar=no,status=no,resizable=yes')">
+{/if}
+  <img src="{$SRC_IMG}" style="width:{$WIDTH_IMG}px;height:{$HEIGHT_IMG}px;" alt="{$ALT_IMG}" 
+	{if isset($COMMENT_IMG)}
+		title="{$COMMENT_IMG|@strip_tags:false|@replace:'"':' '}" {else} title="{$current.TITLE|@replace:'"':' '} - {$ALT_IMG}"
+	{/if}>
+{if isset($high) }
+</a>
+  <p>{'Click on the picture to see it in high definition'|@translate}</p>
+{/if}
Index: /extensions/simple_themes/simple/template/picture_nav_buttons.tpl
===================================================================
--- /extensions/simple_themes/simple/template/picture_nav_buttons.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/picture_nav_buttons.tpl	(revision 13546)
@@ -0,0 +1,71 @@
+<div class="navButtons">
+{if isset($U_SLIDESHOW_STOP)}
+  <a href="{$U_SLIDESHOW_STOP}" title="{'stop the slideshow'|@translate}">{'Stop'|@translate}</a>
+{/if}
+{if isset($slideshow.U_START_PLAY)}
+  <a href="{$slideshow.U_START_PLAY}" title="{'Play of slideshow'|@translate}">Play</a>
+{/if}
+{if isset($slideshow)}
+  {if isset($slideshow.U_STOP_PLAY)}
+    <a href="{$slideshow.U_STOP_PLAY}" title="{'Pause of slideshow'|@translate}">Pause</a>
+  {/if}
+  {if isset($slideshow.U_DEC_PERIOD)}
+    <a href="{$slideshow.U_DEC_PERIOD}" title="{'Accelerate diaporama speed'|@translate}">&nbsp;+&nbsp;</a>
+  {/if}
+  {if isset($slideshow.U_INC_PERIOD)}
+    <a href="{$slideshow.U_INC_PERIOD}" title="{'Reduce diaporama speed'|@translate}">&nbsp;-&nbsp;</a>
+  {/if}
+{/if}
+{if isset($first)}
+  <a href="{$first.U_IMG}" title="{'First'|@translate} : {$first.TITLE}" rel="first">&laquo;</a>
+{/if}
+{if isset($previous)}
+  <a href="{$previous.U_IMG}" title="{'Previous'|@translate} : {$previous.TITLE}" rel="prev">&lsaquo;</a>
+{/if}
+{if isset($next)}
+  <a href="{$next.U_IMG}" title="{'Next'|@translate} : {$next.TITLE}" rel="next">&rsaquo;</a>
+{/if}
+{if isset($last)}
+  <a href="{$last.U_IMG}" title="{'Last'|@translate} : {$last.TITLE}" rel="last">&raquo;</a>
+{/if}
+</div>
+
+<script type="text/javascript">// <![CDATA[
+{literal}
+function keyboardNavigation(e)
+{
+        if(!e) e=window.event;
+        if (e.altKey) return true;
+        var target = e.target || e.srcElement;
+        if (target && target.type) return true; //an input editable element
+        var keyCode=e.keyCode || e.which;
+        var docElem = document.documentElement;
+        switch(keyCode) {
+{/literal}
+{if isset($next)}
+        case 63235: case 39: if (e.ctrlKey || docElem.scrollLeft==docElem.scrollWidth-docElem.clientWidth ){ldelim}window.location="{$next.U_IMG}".replace( "&amp;", "&" ); return false; } break;
+{/if}
+{if isset($previous)}
+        case 63234: case 37: if (e.ctrlKey || docElem.scrollLeft==0){ldelim}window.location="{$previous.U_IMG|@escape:jasvascript}".replace("&amp;","&"); return false; } break;
+{/if}
+{if isset($first)}
+        /*Home*/case 36: if (e.ctrlKey){ldelim}window.location="{$first.U_IMG|@escape:jasvascript}".replace("&amp;","&"); return false; } break;
+{/if}
+{if isset($last)}
+        /*End*/case 35: if (e.ctrlKey){ldelim}window.location="{$last.U_IMG|@escape:jasvascript}".replace("&amp;","&"); return false; } break;
+{/if}
+{if isset($U_UP) and !isset($slideshow)}
+        /*Up*/case 38: if (e.ctrlKey){ldelim}window.location="{$U_UP|@escape:jasvascript}".replace("&amp;","&"); return false; } break;
+{/if}
+
+{if isset($slideshow.U_START_PLAY)}
+        /*Pause*/case 32: {ldelim}window.location="{$slideshow.U_START_PLAY|@escape:jasvascript}".replace("&amp;","&"); return false; } break;
+{/if}
+{if isset($slideshow.U_STOP_PLAY)}
+        /*Play*/case 32: {ldelim}window.location="{$slideshow.U_STOP_PLAY|@escape:jasvascript}".replace("&amp;","&"); return false; } break;
+{/if}
+        }
+        return true;
+}
+document.onkeydown=keyboardNavigation;
+// ]]></script>
Index: /extensions/simple_themes/simple/template/popuphelp.tpl
===================================================================
--- /extensions/simple_themes/simple/template/popuphelp.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/popuphelp.tpl	(revision 13546)
@@ -0,0 +1,6 @@
+<div class="titrePage">
+   <a href="#" onclick="window.close();" title="{'Close this window'|@translate}">{'Close this window'|@translate}</a>
+</div>
+<div id="content">
+{$HELP_CONTENT}
+</div>
Index: /extensions/simple_themes/simple/template/profile.tpl
===================================================================
--- /extensions/simple_themes/simple/template/profile.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/profile.tpl	(revision 13546)
@@ -0,0 +1,120 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'Profile'|@translate}</h2>
+</div>
+<div id="content">
+  {if isset($errors)}
+  <div class="errors">
+    <ul>
+      {foreach from=$errors item=error}
+      <li>{$error}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+  <form method="post" name="profile" action="{$F_ACTION}" id="profile" class="properties">
+    <fieldset>
+      <legend>{'Registration'|@translate}</legend>
+      <input type="hidden" name="redirect" value="{$REDIRECT}" />
+      <ul>
+        <li>
+          <div class="property">{'Username'|@translate}</div>
+          {$USERNAME}
+        </li>
+	{if not $SPECIAL_USER} {* can modify password + email*}
+        <li>
+          <div class="property">
+            <label for="mail_address">{'Email address'|@translate}</label>
+          </div>
+          <input type="text" name="mail_address" id="mail_address" value="{$EMAIL}" size=35>
+        </li>
+	{if not $IN_ADMIN} {* admins do not need old password*}
+        <li>
+          <div class="property">
+            <label for="password">{'Password'|@translate}</label>
+          </div>
+          <input type="password" name="password" id="password" value="">
+        </li>
+	{/if}
+        <li>
+          <div class="property">
+            <label for="use_new_pwd">{'New password'|@translate}</label>
+          </div>
+          <input type="password" name="use_new_pwd" id="use_new_pwd" value="">
+        </li>
+        <li>
+          <div class="property">
+            <label for="passwordConf">{'Confirm Password'|@translate}</label>
+          </div>
+          <input type="password" name="passwordConf" id="passwordConf" value="">
+        </li>
+      </ul>
+      {/if}
+    </fieldset>
+    <fieldset>
+      <legend>{'Preferences'|@translate}</legend>
+      <ul>
+        <li>
+          <div class="property">
+            <label for="nb_image_line">{'Number of images per row'|@translate}</label>
+          </div>
+          <input type="text" size="3" maxlength="2" name="nb_image_line" id="nb_image_line" value="{$NB_IMAGE_LINE}">
+        </li>
+        <li>
+          <div class="property">
+            <label for="nb_line_page">{'Number of rows per page'|@translate}</label>
+          </div>
+          <input type="text" size="3" maxlength="2" name="nb_line_page" id="nb_line_page" value="{$NB_ROW_PAGE}" >
+        </li>
+        <li>
+          <div class="property">
+            <label>{'Interface theme'|@translate}</label>
+          </div>
+          {html_options name=template options=$template_options selected=$template_selection}
+        </li>
+        <li>
+          <div class="property">
+            <label>{'Language'|@translate}</label>
+          </div>
+          {html_options name=language options=$language_options selected=$language_selection}
+        </li>
+        <li>
+          <div class="property">
+            <label for="recent_period">{'Recent period'|@translate}</label>
+          </div>
+          <input type="text" size="3" maxlength="2" name="recent_period" id="recent_period" value="{$RECENT_PERIOD}">
+        </li>
+        <li>
+          <div class="property">{'Expand all categories'|@translate}</div>
+          {html_radios name='expand' options=$radio_options selected=$EXPAND}
+        </li>
+        <li>
+          <div class="property">{'Show number of comments'|@translate}</div>
+          {html_radios name='show_nb_comments' options=$radio_options selected=$NB_COMMENTS}
+        </li>
+        <li>
+          <div class="property">{'Show number of hits'|@translate}</div>
+          {html_radios name='show_nb_hits' options=$radio_options selected=$NB_HITS}
+        </li>
+        <li>
+          <div class="property">
+            <label for="maxwidth">{'Maximum width of the pictures'|@translate}</label>
+          </div>
+          <input type="text" size="4" maxlength="4" name="maxwidth" id="maxwidth" value="{$MAXWIDTH}">
+        </li>
+        <li>
+          <div class="property">
+            <label for="maxheight">{'Maximum height of the pictures'|@translate}</label>
+          </div>
+          <input type="text" size="4" maxlength="4" name="maxheight" id="maxheight" value="{$MAXHEIGHT}">
+        </li>
+      </ul>
+    </fieldset>
+    <p class="bottomButtons">
+      <input class="submit" type="submit" name="validate" value="{'Submit'|@translate}">
+      <input class="submit" type="reset" name="reset" value="{'Reset'|@translate}">
+    </p>
+  </form>
+</div> <!-- content -->
Index: /extensions/simple_themes/simple/template/redirect.tpl
===================================================================
--- /extensions/simple_themes/simple/template/redirect.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/redirect.tpl	(revision 13546)
@@ -0,0 +1,2 @@
+<p>{$REDIRECT_MSG}</p>
+<p><a href="{$page_refresh.U_REFRESH}">{'Click here if your browser does not automatically forward you'|@translate}</a></p>
Index: /extensions/simple_themes/simple/template/register.tpl
===================================================================
--- /extensions/simple_themes/simple/template/register.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/register.tpl	(revision 13546)
@@ -0,0 +1,59 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a href="{$U_HOME}" title="{'Home'|@translate}">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'Registration'|@translate}</h2>
+</div>
+<div id="content">
+  {if isset($errors)}
+  <div class="errors">
+    <ul>
+      {foreach from=$errors item=error}
+      <li>{$error}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+  <form method="post" action="{$F_ACTION}" class="properties" name="register_form">
+    <fieldset>
+      <legend>{'Enter your personnal informations'|@translate}</legend>
+      <ul>
+        <li>
+          <span class="property">
+            <label for="login">{'Username'|@translate}</label>
+          </span>
+          <input type="text" name="login" id="login" value="{$F_LOGIN}" >&nbsp;<span class="mandatorystar">*</span>
+        </li>
+        <li>
+          <span class="property">
+            <label for="password">{'Password'|@translate}</label>
+          </span>
+          <input type="password" name="password" id="password" >&nbsp;<span class="mandatorystar">*</span>
+        </li>
+        <li>
+          <span class="property">
+            <label for="password_conf">{'Confirm Password'|@translate}</label>
+          </span>
+          <input type="password" name="password_conf" id="password_conf" >&nbsp;<span class="mandatorystar">*</span>
+        </li>
+        <li>
+        <span class="property">
+            <label for="mail_address">{'Mail address'|@translate}</label>
+        </span>
+          <input type="text" name="mail_address" id="mail_address" value="{$F_EMAIL}" >
+          ({'useful when password forgotten'|@translate})
+        </li>
+      </ul>
+    </fieldset>
+    <p class="bottomButtons">
+      <input class="submit" type="submit" name="submit" value="{'Register'|@translate}">
+      <input class="submit" type="reset" value="{'Reset'|@translate}">
+    </p>
+  </form>
+  <p><span class="mandatorystar">*</span> : {'obligatory'|@translate}</p>
+  <script type="text/javascript">
+    <!--
+       document.register_form.login.focus();
+       //-->
+  </script>
+</div> <!-- content -->
Index: /extensions/simple_themes/simple/template/search.tpl
===================================================================
--- /extensions/simple_themes/simple/template/search.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/search.tpl	(revision 13546)
@@ -0,0 +1,118 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a href="{$U_HOME}" title="{'Home'|@translate}" rel="home">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'Search'|@translate}</h2>
+</div>
+<div id="content">
+  {if isset($errors) }
+  <div class="errors">
+    <ul>
+      {foreach from=$errors item=error}
+      <li>{$error}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+  <form class="filter" method="post" name="search" action="{$F_SEARCH_ACTION}">
+  <fieldset>
+    <legend>{'Filter'|@translate}</legend>
+    <label>{'Search for words'|@translate}
+      <input type="text" style="width: 300px" name="search_allwords" size="30"  />
+    </label>
+    <ul>
+      <li><label>
+        <input type="radio" name="mode" value="AND" checked="checked" />{'Search for all terms'|@translate}
+      </label></li>
+      <li><label>
+        <input type="radio" name="mode" value="OR" />{'Search for any terms'|@translate}
+      </label></li>
+    </ul>
+    <label>{'Search for Author'|@translate}
+      <input type="text" style="width: 300px" name="search_author" size="30"  />
+    </label>
+  </fieldset>
+  {if isset($TAG_SELECTION)}
+  <fieldset>
+    <legend>{'Search tags'|@translate}</legend>
+    {$TAG_SELECTION}
+    <label><span><input type="radio" name="tag_mode" value="AND" checked="checked" /> {'All tags'|@translate}</span></label>
+    <label><span><input type="radio" name="tag_mode" value="OR" /> {'Any tag'|@translate}</span></label>
+  </fieldset>
+  {/if}
+  <fieldset>
+    <legend>{'Search by Date'|@translate}</legend>
+    <ul>
+      <li><label>{'Kind of date'|@translate}</label></li>
+      <li><label>
+        <input type="radio" name="date_type" value="date_creation" checked="checked" />{'Creation date'|@translate}
+      </label></li>
+      <li><label>
+        <input type="radio" name="date_type" value="date_available" />{'Post date'|@translate}
+      </label></li>
+    </ul>
+    <ul>
+    <li><label>{'Date'|@translate}</label></li>
+      <li>
+      <select id="start_day" name="start_day">
+          <option value="0">--</option>
+          {section name=day start=1 loop=32}
+          <option value="{$smarty.section.day.index}" {if $smarty.section.day.index==$START_DAY_SELECTED}selected="selected"{/if}>{$smarty.section.day.index}</option>
+          {/section}
+        </select>
+      <select id="start_month" name="start_month">
+          {html_options options=$month_list selected=$START_MONTH_SELECTED}
+        </select>
+      <input id="start_year" name="start_year" type="text" size="4" maxlength="4" >
+      <input id="start_linked_date" name="start_linked_date" type="hidden" size="10" disabled="disabled">
+    </li>
+    <li>
+      <a class="date_today" href="#" onClick="document.search.start_day.value={$smarty.now|date_format:"%d"};document.search.start_month.value={$smarty.now|date_format:"%m"};document.search.start_year.value={$smarty.now|date_format:"%Y"};return false;">{'today'|@translate}</a>
+      </li>
+    </ul>
+    <ul>
+    <li><label>{'End-Date'|@translate}</label></li>
+      <li>
+      <select id="end_day" name="end_day">
+            <option value="0">--</option>
+          {section name=day start=1 loop=32}
+            <option value="{$smarty.section.day.index}" {if $smarty.section.day.index==$END_DAY_SELECTED}selected="selected"{/if}>{$smarty.section.day.index}</option>
+          {/section}
+        </select>
+      <select id="end_month" name="end_month">
+          {html_options options=$month_list selected=$END_MONTH_SELECTED}
+        </select>
+      <input id="end_year" name="end_year" type="text" size="4" maxlength="4" >
+      <input id="end_linked_date" name="end_linked_date" type="hidden" size="10" disabled="disabled">
+    </li>
+    <li>
+      <a class="date_today" href="#" onClick="document.search.end_day.value={$smarty.now|date_format:"%d"};document.search.end_month.value={$smarty.now|date_format:"%m"};document.search.end_year.value={$smarty.now|date_format:"%Y"};return false;">{'today'|@translate}</a>
+      </li>
+    </ul>
+  </fieldset>
+  <fieldset>
+    <legend>{'Search Options'|@translate}</legend>
+  <label>{'Search in Categories'|@translate}
+      <select class="categoryList" name="cat[]" multiple="multiple" >
+        {html_options options=$category_options selected=$category_options_selected}
+      </select>
+    </label>
+    <ul>
+      <li><label>{'Search in subcategories'|@translate}</label></li>
+      <li><label>
+        <input type="radio" name="subcats-included" value="1" checked="checked" />{'Yes'|@translate}
+      </label></li>
+      <li><label>
+        <input type="radio" name="subcats-included" value="0" />{'No'|@translate}
+      </label></li>
+    </ul>
+  </fieldset>
+  <p>
+    <input class="submit" type="submit" name="submit" value="{'Submit'|@translate}" />
+    <input class="submit" type="reset" value="{'Reset'|@translate}" />
+  </p>
+  </form>
+  <script type="text/javascript"><!--
+  document.search.search_allwords.focus();
+  //--></script>
+</div> <!-- content -->
Index: /extensions/simple_themes/simple/template/search_rules.tpl
===================================================================
--- /extensions/simple_themes/simple/template/search_rules.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/search_rules.tpl	(revision 13546)
@@ -0,0 +1,44 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a href="#" onclick="window.close();" title="{'Close this window'|@translate}">{'Close this window'|@translate}</a></li>
+  </ul>
+  <h2>{'Search rules'|@translate}</h2>
+</div>
+<div id="content">
+  {if isset($INTRODUCTION) }
+  <p>{$INTRODUCTION}</p>
+  {/if}
+  <ul>
+    {if isset($search_words) }
+    {foreach from=$search_words item=v}
+    <li>{$v}</li>
+    {/foreach}
+    {/if}
+    {if isset($SEARCH_TAGS_MODE) }
+    <li>
+    <p>{if 'AND'==$SEARCH_TAGS_MODE}{'At least one tag must match'|@translate}{else}{'At least one tag must match'|@translate}{/if}</p>
+      <ul>
+        {foreach from=$search_tags item=v}
+        <li>{$v}</li>
+        {/foreach}
+      </ul>
+    </li>
+    {/if}
+    {if isset($DATE_CREATION) }
+    <li>{$DATE_CREATION}</li>
+    {/if}
+    {if isset($DATE_AVAILABLE) }
+    <li>{$DATE_AVAILABLE}</li>
+    {/if}
+    {if isset($search_categories) }
+    <li>
+      <p>{'Categories'|@translate}</p>
+      <ul>
+        {foreach from=$search_categories item=v}
+        <li>{$v}</li>
+        {/foreach}
+      </ul>
+    </li>
+    {/if}
+  </ul>
+</div> <!-- content -->
Index: /extensions/simple_themes/simple/template/slideshow.tpl
===================================================================
--- /extensions/simple_themes/simple/template/slideshow.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/slideshow.tpl	(revision 13546)
@@ -0,0 +1,13 @@
+<div id="slideshow" class="titrePage">
+  <div class="imageNumber">{$PHOTO}</div>
+  {include file='picture_nav_buttons.tpl'|@get_extent:'picture_nav_buttons'}
+  {if $SHOW_PICTURE_NAME_ON_TITLE }
+  <h2>{$current.TITLE}</h2>
+  {/if}
+</div>
+<div id="theImage">
+  {$ELEMENT_CONTENT}
+  {if isset($COMMENT_IMG)}
+  <p class="showlegend">{$COMMENT_IMG}</p>
+  {/if}
+</div>
Index: /extensions/simple_themes/simple/template/tags.tpl
===================================================================
--- /extensions/simple_themes/simple/template/tags.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/tags.tpl	(revision 13546)
@@ -0,0 +1,48 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+  {if $display_mode == 'letters'}
+    <li><a href="{$U_CLOUD}" title="{'show tag cloud'|@translate}">{'show tag cloud'|@translate}</a></li> « 
+  {/if}
+  {if $display_mode == 'cloud'}
+    <li><a href="{$U_LETTERS}" title="{'group by letters'|@translate}">{'group by letters'|@translate}</a></li> « 
+  {/if}
+    <li><a href="{$U_HOME}" title="{'Home'|@translate}">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'Tags'|@translate}</h2>
+</div>
+<div id="content">
+{if isset($tags)}
+  {if $display_mode == 'cloud'}
+  <div id="fullTagCloud">
+    {foreach from=$tags item=tag}
+		<span><a href="{$tag.URL}" class="tagLevel{$tag.level}" title="{$pwg->l10n_dec('%d image', '%d images', $tag.counter)}">{$tag.name}</a></span>
+    {/foreach}
+  </div>
+  {/if}
+  {if $display_mode == 'letters'}
+  <table>
+    <tr>
+      <td valign="top">
+      {foreach from=$letters item=letter}
+      <fieldset class="tagLetter">
+        <legend class="tagLetterLegend">{$letter.TITLE}</legend>
+        <table class="tagLetterContent">
+          {foreach from=$letter.tags item=tag}
+          <tr class="tagLine">
+            <td><a href="{$tag.URL}">{$tag.name}</a></td>
+        <td class="nbEntries">{$pwg->l10n_dec('%d image', '%d images', $tag.counter)}</td>
+          </tr>
+          {/foreach}
+        </table>
+      </fieldset>
+      {if isset($letter.CHANGE_COLUMN) }
+      </td>
+      <td valign="top">
+      {/if}
+      {/foreach}
+      </td>
+    </tr>
+  </table>
+  {/if}
+{/if}
+</div> <!-- content -->
Index: /extensions/simple_themes/simple/template/thumbnails.tpl
===================================================================
--- /extensions/simple_themes/simple/template/thumbnails.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/thumbnails.tpl	(revision 13546)
@@ -0,0 +1,27 @@
+{if !empty($thumbnails)}
+<ul>
+  {foreach from=$thumbnails item=thumbnail}
+  <li>
+    <a href="{$thumbnail.URL}">
+      <img class="thumbnail" src="{$thumbnail.TN_SRC}" alt="{$thumbnail.TN_ALT}" title="{$thumbnail.TN_TITLE}" />
+    </a>
+    <p>
+      {if isset($thumbnail.NAME)}{$thumbnail.NAME}{/if}
+  	  {if !empty($thumbnail.icon_ts)}
+	  <img title="{$thumbnail.icon_ts.TITLE}" src="{$ROOT_URL}{$themeconf.icon_dir}/recent.png" class="icon" alt="(!)">
+	  {/if}
+      {if isset($thumbnail.NB_COMMENTS)}
+      <span class="{if 0==$thumbnail.NB_COMMENTS}zero {/if}nb-comments">
+        {$pwg->l10n_dec('%d comment', '%d comments',$thumbnail.NB_COMMENTS)}
+      </span>
+      {/if}
+{*      {if isset($thumbnail.NB_HITS)}
+      <span class="{if 0==$thumbnail.NB_HITS}zero {/if}nb-hits">
+        {$pwg->l10n_dec('%d hit', '%d hits',$thumbnail.NB_HITS)}
+      </span>
+      {/if} *}
+    </p>
+  </li>
+  {/foreach}
+</ul>
+{/if}
Index: /extensions/simple_themes/simple/template/upload.tpl
===================================================================
--- /extensions/simple_themes/simple/template/upload.tpl	(revision 13546)
+++ /extensions/simple_themes/simple/template/upload.tpl	(revision 13546)
@@ -0,0 +1,84 @@
+<div class="titrePage">
+  <ul class="categoryActions">
+    <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}">{'Home'|@translate}</a></li>
+  </ul>
+  <h2>{'Upload a picture'|@translate}</h2>
+</div>
+<div id="content">
+  {if isset($errors) and count($errors)}
+  <div class="errors">
+    <ul>
+      {foreach from=$errors item=error}
+      <li>{$error}</li>
+      {/foreach}
+    </ul>
+  </div>
+  {/if}
+  {if not $UPLOAD_SUCCESSFUL }
+  <form enctype="multipart/form-data" method="post" action="{$F_ACTION}">
+    <fieldset>
+      <legend>{$ADVISE_TITLE}</legend>
+      {if not empty($advises)}
+      <ul>
+        {foreach from=$advises item=advise}
+        <li>{$advise}</li>
+        {/foreach}
+      </ul>
+      {/if}
+      <ul>
+        <li>
+          <div class="property">&nbsp;</div><input name="picture" type="file" value="" />
+        </li>
+        {if isset($SHOW_FORM_FIELDS) and $SHOW_FORM_FIELDS}
+        <!-- category -->
+        <li>
+          <div class="property">{'Category'|@translate}</div>
+          {html_options name="category" options=$categories selected=$categories_selected}
+        </li>
+        <!-- username -->
+        <li>
+          <div class="property">{'Username'|@translate}</div>
+          <input name="username" type="text" value="{$NAME}" />&nbsp;<span class="mandatorystar">*</span>
+        </li>
+        <!-- mail address -->
+        <li>
+          <div class="property">{'E-mail address'|@translate}</div>
+          <input name="mail_address" type="text" value="{$EMAIL}" size="35"/>&nbsp;<span class="mandatorystar">*</span>
+        </li>
+        <!-- name of the picture -->
+        <li>
+          <div class="property">{'Name of the picture'|@translate}</div>
+          <input name="name" type="text" value="{$NAME_IMG}" size="35"/>
+        </li>
+        <!-- author -->
+        <li>
+          <div class="property">{'Author'|@translate}</div>
+          <input name="author" type="text" value="{$AUTHOR_IMG}" size="35"/>
+        </li>
+        <!-- date of creation -->
+        <li>
+          <div class="property">{'Creation date'|@translate} (DD/MM/YYYY)</div>
+          <input name="date_creation" type="text" value="{$DATE_IMG}" />
+        </li>
+        <!-- comment -->
+        <li>
+          <div class="property">{'Comment'|@translate}</div>
+          <textarea name="comment" rows="6" cols="60" style="overflow:auto">{$COMMENT_IMG}</textarea>
+        </li>
+        {/if}
+      </ul>
+    </fieldset>
+    <p class="bottomButtons">
+      <input class="submit" name="submit" type="submit" value="{'Submit'|@translate}" />
+    </p>
+  </form>
+  {else}
+  {'Picture uploaded with success, an administrator will validate it as soon as possible'|@translate}<br />
+  <div style="text-align:center;">
+    <a href="{$U_RETURN}">[ {'Home'|@translate} ]</a>
+  </div>
+  {/if}
+  {if isset($SHOW_FORM_FIELDS) and $SHOW_FORM_FIELDS}
+  <p><span class="mandatorystar">*</span> : {'obligatory'|@translate}</p>
+  {/if}
+</div> <!-- content -->
Index: /extensions/simple_themes/simple/theme.css
===================================================================
--- /extensions/simple_themes/simple/theme.css	(revision 13546)
+++ /extensions/simple_themes/simple/theme.css	(revision 13546)
@@ -0,0 +1,169 @@
+/* Grey theme for the simple template
+   author: Saïmon <contact at saimon.org> */
+
+body {
+  background-color: #333;
+  color: #999;
+}
+
+#content {
+  background-color: #3F3F3F;
+  border: 2px #606060 solid;
+  border-width: 2px 0;
+}
+
+.totalImages {
+  font-style: italic;
+  margin-top: 0;
+}
+
+a {
+  color: #999;
+}
+
+.titrePage, .titrePage a {
+  font-weight: bold;
+  text-transform: uppercase;
+  font-variant: normal;
+}
+
+h2, h3 {
+  font-variant: small-caps;
+}
+
+#copyright {
+  font-variant: small-caps;
+  text-transform: lowercase;
+}
+
+/* page content :  thumbnails */
+
+#thumbnails {
+  font-weight: bold;
+}
+.thumbnail {
+  border: 2px #707070 solid;
+}
+.thumbnail:hover {
+  border: 2px #f0f0f0 solid;
+}
+#thumbnails p {
+  margin: 0;
+}
+
+#menubar dt {
+  font-variant: small-caps;
+  font-weight: bold;
+}
+
+/* page content :  categories thumbnails */
+
+.illustration img {
+  border: 1px #606060 solid;
+}
+
+.illustration img:hover {
+  border: 1px #f0f0f0 solid;
+}
+
+.thumbCatDesc {
+  border-top: 1px #606060 dotted;
+  text-align: justify;
+}
+
+.pageNumberSelected {
+  font-weight: bold;
+  border-bottom: 1px solid;
+}
+
+.navigationBar a {
+  border-bottom: 1px dotted;
+}
+
+/* inputs */
+
+input[type="text"], input[type="password"], select, textarea, file {
+ background:#f0f0f0;
+ color: #333;
+ border: 1px solid;
+ margin: 0;
+}
+
+fieldset {
+  border: 1px #606060 dotted;
+  margin: 0 0 1em;
+  padding: 1em;
+}
+
+fieldset legend {
+  background-color: #333;
+  padding: 0 3px;
+}
+
+/* picture page */
+
+.imageNumber {
+  border: 1px #999 solid;
+}
+
+#theImage img {
+  border: 8px #fff solid;
+}
+#theImage p {
+  margin: 1em;
+}
+
+#navThumbPrev img, #navThumbNext img {
+  border: 2px #606060 solid;
+}
+#navThumbPrev img:hover, #navThumbNext img:hover {
+  border: 2px #f0f0f0 solid;
+}
+
+/* Comments */
+
+#theComments h3 {
+  border-top: 2px solid #606060;
+}
+
+.commentList .author, .commentList .date {
+  font-weight: bold;
+}
+
+/* tags */
+
+#fullTagCloud a:hover {
+  background: #606060;
+}
+
+#menuTagCloud span {
+  margin: 0;
+}
+
+.nbEntries {
+  text-align: right;
+}
+
+.mandatorystar {
+  color: #e04040;
+}
+
+/* help */
+
+.errors {
+  border: 2px solid #A04040;
+  color: #A04040;
+}
+.errors a {
+  color: #FF0000;
+  font-weight: bold;
+}
+
+.infos {
+  border: 2px solid #40A040;
+  color: #40A040;
+}
+.infos a {
+  color: #00FF00;
+  font-weight: bold;
+}
Index: /extensions/simple_themes/simple/themeconf.inc.php
===================================================================
--- /extensions/simple_themes/simple/themeconf.inc.php	(revision 13546)
+++ /extensions/simple_themes/simple/themeconf.inc.php	(revision 13546)
@@ -0,0 +1,23 @@
+<?php
+/*
+Theme Name: Simple Grey
+Version: 2.0
+Description: Simple Grey theme
+Theme URI: http://saimon.org/blog/pages/Theme-Simple-Grey-Piwigo
+Author: Saïmon
+Author URI: http://saimon.org/
+*/
+
+$themeconf = array(
+  /* 'parent' => 'default', */
+  'name' => 'simple-grey',
+  'theme_dir' => 'simple',
+  'icon_dir' => 'themes/simple/icon',
+  'admin_icon_dir' => 'themes/default/icon/admin',
+  'mime_icon_dir' => 'themes/default/icon/mimetypes/',
+  'url' => 'http://saimon.org/blog/pages/Theme-Simple-Grey-Piwigo'
+);
+
+global $user;
+$user['maxwidth'] = 680;
+?>
