aboutsummaryrefslogtreecommitdiffstats
path: root/template/yoga
diff options
context:
space:
mode:
authorplegall <plg@piwigo.org>2005-09-03 20:01:14 +0000
committerplegall <plg@piwigo.org>2005-09-03 20:01:14 +0000
commit9c6f769b9424557f5cda93e6f7f4f1366ad427e7 (patch)
tree1942371c30d4894cc71ec4bdc7e5792daa368320 /template/yoga
parent7eae7595909a49d4355453c73638151097a53f20 (diff)
- new : template yoga, made by yoDan, helped by chrisaga for integration
becomes the official template. git-svn-id: http://piwigo.org/svn/trunk@859 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'template/yoga')
-rw-r--r--template/yoga/about.tpl12
-rw-r--r--template/yoga/admin.tpl88
-rw-r--r--template/yoga/admin/cat_list.tpl48
-rw-r--r--template/yoga/admin/cat_modify.tpl133
-rw-r--r--template/yoga/admin/cat_options.tpl12
-rw-r--r--template/yoga/admin/cat_perm.tpl60
-rw-r--r--template/yoga/admin/comments.tpl26
-rw-r--r--template/yoga/admin/configuration.tpl118
-rw-r--r--template/yoga/admin/double_select.tpl23
-rw-r--r--template/yoga/admin/element_set_global.tpl187
-rw-r--r--template/yoga/admin/element_set_unit.tpl92
-rw-r--r--template/yoga/admin/group_list.tpl27
-rw-r--r--template/yoga/admin/group_perm.tpl7
-rw-r--r--template/yoga/admin/help.tpl13
-rw-r--r--template/yoga/admin/images/arrow_down.gifbin0 -> 105 bytes
-rw-r--r--template/yoga/admin/images/arrow_first.gifbin0 -> 111 bytes
-rw-r--r--template/yoga/admin/images/arrow_last.gifbin0 -> 112 bytes
-rw-r--r--template/yoga/admin/images/arrow_select.gifbin0 -> 88 bytes
-rw-r--r--template/yoga/admin/images/arrow_up.gifbin0 -> 105 bytes
-rw-r--r--template/yoga/admin/images/collapsed.gifbin0 -> 62 bytes
-rw-r--r--template/yoga/admin/images/delete.gifbin0 -> 270 bytes
-rw-r--r--template/yoga/admin/images/errors.pngbin0 -> 3249 bytes
-rw-r--r--template/yoga/admin/images/expanded.gifbin0 -> 55 bytes
-rw-r--r--template/yoga/admin/images/icon_folder.gifbin0 -> 1265 bytes
-rw-r--r--template/yoga/admin/images/icon_folder_link.gifbin0 -> 1310 bytes
-rw-r--r--template/yoga/admin/images/icon_folder_lock.gifbin0 -> 1264 bytes
-rw-r--r--template/yoga/admin/images/icon_subfolder.gifbin0 -> 1297 bytes
-rw-r--r--template/yoga/admin/images/infos.pngbin0 -> 2250 bytes
-rw-r--r--template/yoga/admin/images/moins.gifbin0 -> 867 bytes
-rw-r--r--template/yoga/admin/images/plus.gifbin0 -> 870 bytes
-rw-r--r--template/yoga/admin/images/puce.gifbin0 -> 839 bytes
-rw-r--r--template/yoga/admin/images/stat_left.gifbin0 -> 113 bytes
-rw-r--r--template/yoga/admin/images/stat_middle.gifbin0 -> 92 bytes
-rw-r--r--template/yoga/admin/images/stat_right.gifbin0 -> 113 bytes
-rw-r--r--template/yoga/admin/intro.tpl44
-rw-r--r--template/yoga/admin/maintenance.tpl15
-rw-r--r--template/yoga/admin/picture_modify.tpl182
-rw-r--r--template/yoga/admin/remote_site.tpl77
-rw-r--r--template/yoga/admin/stats.tpl24
-rw-r--r--template/yoga/admin/thumbnail.tpl132
-rw-r--r--template/yoga/admin/update.tpl92
-rw-r--r--template/yoga/admin/user_list.tpl275
-rw-r--r--template/yoga/admin/user_perm.tpl21
-rw-r--r--template/yoga/admin/waiting.tpl47
-rw-r--r--template/yoga/category.tpl152
-rw-r--r--template/yoga/comments.tpl93
-rw-r--r--template/yoga/content.css175
-rw-r--r--template/yoga/dclear.css0
-rw-r--r--template/yoga/default-colors.css161
-rw-r--r--template/yoga/default-layout.css267
-rw-r--r--template/yoga/footer.tpl21
-rw-r--r--template/yoga/header.tpl30
-rw-r--r--template/yoga/identification.tpl53
-rw-r--r--template/yoga/image.css129
-rw-r--r--template/yoga/images/logo.jpgbin0 -> 4835 bytes
-rwxr-xr-xtemplate/yoga/images/php_sqreuil_artistes.gifbin0 -> 17885 bytes
-rw-r--r--template/yoga/install.tpl203
-rw-r--r--template/yoga/menubar.css66
-rw-r--r--template/yoga/mimetypes/avi.pngbin0 -> 4284 bytes
-rw-r--r--template/yoga/mimetypes/mp3.pngbin0 -> 3902 bytes
-rw-r--r--template/yoga/mimetypes/mpg.pngbin0 -> 4271 bytes
-rw-r--r--template/yoga/mimetypes/ogg.pngbin0 -> 4063 bytes
-rw-r--r--template/yoga/mimetypes/zip.pngbin0 -> 3721 bytes
-rw-r--r--template/yoga/notification.tpl13
-rw-r--r--template/yoga/picture.tpl189
-rw-r--r--template/yoga/popuphelp.css34
-rw-r--r--template/yoga/popuphelp.tpl5
-rw-r--r--template/yoga/print.css13
-rw-r--r--template/yoga/profile.tpl128
-rw-r--r--template/yoga/redirect.tpl1
-rw-r--r--template/yoga/register.tpl58
-rw-r--r--template/yoga/search.tpl138
-rw-r--r--template/yoga/theme/button_bg.gifbin0 -> 500 bytes
-rw-r--r--template/yoga/theme/caddie_add.pngbin0 -> 1186 bytes
-rw-r--r--template/yoga/theme/categories.gifbin0 -> 976 bytes
-rw-r--r--template/yoga/theme/category_children.pngbin0 -> 1554 bytes
-rw-r--r--template/yoga/theme/category_delete.pngbin0 -> 1752 bytes
-rw-r--r--template/yoga/theme/category_edit.pngbin0 -> 1606 bytes
-rw-r--r--template/yoga/theme/category_elements.pngbin0 -> 1681 bytes
-rw-r--r--template/yoga/theme/category_jump-to.pngbin0 -> 1604 bytes
-rw-r--r--template/yoga/theme/category_permissions.pngbin0 -> 1839 bytes
-rw-r--r--template/yoga/theme/category_representant_random.pngbin0 -> 3171 bytes
-rw-r--r--template/yoga/theme/del_favorite.gifbin0 -> 1403 bytes
-rw-r--r--template/yoga/theme/delete.gifbin0 -> 178 bytes
-rw-r--r--template/yoga/theme/delete.pngbin0 -> 778 bytes
-rw-r--r--template/yoga/theme/download.gifbin0 -> 1028 bytes
-rw-r--r--template/yoga/theme/eCard.gifbin0 -> 961 bytes
-rw-r--r--template/yoga/theme/exit.pngbin0 -> 1432 bytes
-rw-r--r--template/yoga/theme/favorite.gifbin0 -> 1436 bytes
-rw-r--r--template/yoga/theme/help.pngbin0 -> 1994 bytes
-rw-r--r--template/yoga/theme/home.pngbin0 -> 1591 bytes
-rw-r--r--template/yoga/theme/left-arrow.gifbin0 -> 583 bytes
-rw-r--r--template/yoga/theme/left.pngbin0 -> 1644 bytes
-rw-r--r--template/yoga/theme/lost.gifbin0 -> 219 bytes
-rw-r--r--template/yoga/theme/metadata.gifbin0 -> 1020 bytes
-rw-r--r--template/yoga/theme/metadata.pngbin0 -> 1520 bytes
-rw-r--r--template/yoga/theme/permissions.pngbin0 -> 729 bytes
-rw-r--r--template/yoga/theme/preferences.pngbin0 -> 1606 bytes
-rw-r--r--template/yoga/theme/profile.pngbin0 -> 796 bytes
-rw-r--r--template/yoga/theme/properties.gifbin0 -> 1010 bytes
-rw-r--r--template/yoga/theme/recent.gifbin0 -> 775 bytes
-rw-r--r--template/yoga/theme/register.gifbin0 -> 224 bytes
-rw-r--r--template/yoga/theme/register.pngbin0 -> 1445 bytes
-rw-r--r--template/yoga/theme/representative.pngbin0 -> 1556 bytes
-rw-r--r--template/yoga/theme/right-arrow.gifbin0 -> 581 bytes
-rw-r--r--template/yoga/theme/right.pngbin0 -> 1661 bytes
-rw-r--r--template/yoga/theme/save.pngbin0 -> 961 bytes
-rw-r--r--template/yoga/theme/slideshow.gifbin0 -> 1017 bytes
-rw-r--r--template/yoga/theme/slideshow.pngbin0 -> 1229 bytes
-rw-r--r--template/yoga/theme/sync_metadata.pngbin0 -> 1797 bytes
-rw-r--r--template/yoga/theme/tableh1_bg.gifbin0 -> 657 bytes
-rw-r--r--template/yoga/theme/up.pngbin0 -> 1641 bytes
-rw-r--r--template/yoga/upgrade.tpl45
-rw-r--r--template/yoga/upload.tpl93
114 files changed, 3822 insertions, 0 deletions
diff --git a/template/yoga/about.tpl b/template/yoga/about.tpl
new file mode 100644
index 000000000..68d505c01
--- /dev/null
+++ b/template/yoga/about.tpl
@@ -0,0 +1,12 @@
+<div id="content">
+
+ <div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li>
+ </ul>
+ <h2>{lang:About}</h2>
+ </div>
+
+ {lang:about_message}
+
+</div>
diff --git a/template/yoga/admin.tpl b/template/yoga/admin.tpl
new file mode 100644
index 000000000..70c0f2042
--- /dev/null
+++ b/template/yoga/admin.tpl
@@ -0,0 +1,88 @@
+<!-- $Id$ -->
+
+<div id="menubar">
+ <dl>
+ <dt>{lang:links}</dt>
+ <dd>
+ <ul>
+ <li><a href="{U_RETURN}">{lang:home}</a></li>
+ </ul>
+ </dd>
+
+ <dt>{lang:general}</dt>
+ <dd>
+ <ul>
+ <li><a href="{U_FAQ}">{lang:instructions}</a></li>
+ <li><a href="{U_SITES}">{lang:remote_sites}</a></li>
+ <li><a href="{U_HISTORY}">{lang:history}</a></li>
+ <li><a href="{U_CAT_UPDATE}">{lang:update}</a></li>
+ <li><a href="{U_MAINTENANCE}">{lang:Maintenance}</a></li>
+ </ul>
+ </dd>
+
+ <dt>{lang:config}</dt>
+ <dd>
+ <ul>
+ <li><a href="{U_CONFIG_GENERAL}">{lang:general}</a></li>
+ <li><a href="{U_CONFIG_COMMENTS}">{lang:comments}</a></li>
+ <li><a href="{U_CONFIG_DISPLAY}">{lang:conf_default}</a></li>
+ </ul>
+ </dd>
+
+ <dt>{lang:categories}</dt>
+ <dd>
+ <ul>
+ <li><a href="{U_CATEGORIES}">{lang:manage}</a></li>
+ <li><a href="{U_CAT_UPLOAD}">{lang:upload}</a></li>
+ <li><a href="{U_CAT_COMMENTS}">{lang:comments}</a></li>
+ <li><a href="{U_CAT_VISIBLE}">{lang:lock}</a></li>
+ <li><a href="{U_CAT_STATUS}">{lang:cat_security}</a></li>
+ <!-- BEGIN representative -->
+ <li><a href="{representative.URL}">{lang:Representative}</a></li>
+ <!-- END representative -->
+ </ul>
+ </dd>
+
+ <dt>{lang:pictures}</dt>
+ <dd>
+ <ul>
+ <li><a href="{U_WAITING}">{lang:waiting}</a></li>
+ <li><a href="{U_THUMBNAILS}">{lang:thumbnails}</a></li>
+ <li><a href="{U_COMMENTS}">{lang:comments}</a></li>
+ <li><a href="{U_CADDIE}">{lang:Caddie}</a></li>
+ </ul>
+ </dd>
+
+ <dt>{lang:identification}</dt>
+ <dd>
+ <ul>
+ <li><a href="{U_USERS}">{lang:users}</a></li>
+ <li><a href="{U_GROUPS}">{lang:groups}</a></li>
+ </ul>
+ </dd>
+ </dl>
+</div> <!-- menubar -->
+
+<div id="content">
+ <!-- BEGIN errors -->
+ <div id="errors">
+ <ul>
+ <!-- BEGIN error -->
+ <li>{errors.error.ERROR}</li>
+ <!-- END error -->
+ </ul>
+ </div>
+ <!-- END errors -->
+
+ <!-- BEGIN infos -->
+ <div id="infos">
+ <ul>
+ <!-- BEGIN info -->
+ <li>{infos.info.INFO}</li>
+ <!-- END info -->
+ </ul>
+ </div>
+ <!-- END infos -->
+
+ {ADMIN_CONTENT}
+</div>
diff --git a/template/yoga/admin/cat_list.tpl b/template/yoga/admin/cat_list.tpl
new file mode 100644
index 000000000..6b59afb03
--- /dev/null
+++ b/template/yoga/admin/cat_list.tpl
@@ -0,0 +1,48 @@
+<!-- $Id$ -->
+<h2>{lang:title_categories}</h2>
+
+<h3>{CATEGORIES_NAV}</h3>
+
+<form id="categoryOrdering" action="" method="post">
+
+ <ul>
+
+ <!-- BEGIN category -->
+ <li> <!-- category {category.ID} -->
+
+ <ul class="categoryActions">
+ <li><a href="{category.U_JUMPTO}" title="{lang:jump to category}"><img src="./template/default/theme/category_jump-to.png" alt="{lang:jump to}" /></a></li>
+ <li><a href="{category.U_EDIT}" title="{lang:edit category informations}"><img src="./template/default/theme/category_edit.png" alt="{lang:edit}"/></a></li>
+ <!-- BEGIN elements -->
+ <li><a href="{category.elements.URL}" title="{lang:manage category elements}"><img src="./template/default/theme/category_elements.png" alt="{lang:elements}" /></a></li>
+ <!-- END elements -->
+ <li><a href="{category.U_CHILDREN}" title="{lang:manage sub-categories}"><img src="./template/default/theme/category_children.png" alt="{lang:sub-categories}" /></a></li>
+ <!-- BEGIN permissions -->
+ <li><a href="{category.permissions.URL}" title="{lang:edit category permissions}" ><img src="./template/default/theme/category_permissions.png" alt="{lang:permissions}" /></a></li>
+ <!-- END permissions -->
+ <!-- BEGIN delete -->
+ <li><a href="{category.delete.URL}" title="{lang:delete category}"><img src="./template/default/theme/category_delete.png" alt="{lang:delete}" /></a></li>
+ <!-- END delete -->
+ </ul>
+
+ <p><strong>{category.NAME}</strong></p>
+
+ <p>
+ <label>
+ {lang:Position} :
+ <input type="text" size="4" name="catOrd[{category.ID}]" maxlength="4" value="{category.RANK}" />
+ </label>
+ </p>
+
+ </li>
+ <!-- END category -->
+
+ <p><input name="submitOrder" type="submit" value="{lang:Save order}" /></p>
+
+</form>
+
+<form action="{F_ACTION}" method="post">
+ {L_ADD_VIRTUAL} : <input type="text" name="virtual_name" />
+ <input type="hidden" name="rank" value="{NEXT_RANK}"/>
+ <input type="submit" value="{L_SUBMIT}" name="submitAdd" />
+</form>
diff --git a/template/yoga/admin/cat_modify.tpl b/template/yoga/admin/cat_modify.tpl
new file mode 100644
index 000000000..678bef349
--- /dev/null
+++ b/template/yoga/admin/cat_modify.tpl
@@ -0,0 +1,133 @@
+<!-- $Id$ -->
+<h2>{lang:title_edit_cat}</h2>
+
+<h3>{CATEGORIES_NAV}</h3>
+
+<ul class="categoryActions">
+ <li><a href="{U_JUMPTO}" title="{lang:jump to category}"><img src="./template/default/theme/category_jump-to.png" alt="{lang:jump to}" /></a></li>
+ <!-- BEGIN elements -->
+ <li><a href="{elements.URL}" title="{lang:manage category elements}"><img src="./template/default/theme/category_elements.png" alt="{lang:elements}" /></a></li>
+ <!-- END elements -->
+ <li><a href="{U_CHILDREN}" title="{lang:manage sub-categories}"><img src="./template/default/theme/category_children.png" alt="{lang:sub-categories}" /></a></li>
+ <!-- BEGIN permissions -->
+ <li><a href="{permissions.URL}" title="{lang:edit category permissions}" ><img src="./template/default/theme/category_permissions.png" alt="{lang:permissions}" /></a></li>
+ <!-- END permissions -->
+ <!-- BEGIN delete -->
+ <li><a href="{delete.URL}" title="{lang:delete category}"><img src="./template/default/theme/category_delete.png" alt="{lang:delete}" /></a></li>
+ <!-- END delete -->
+</ul>
+
+<form action="{F_ACTION}" method="POST" id="cat_modify">
+
+<fieldset>
+ <legend>{lang:Informations}</legend>
+ <table>
+ <!-- BEGIN server -->
+ <tr>
+ <td><strong>{L_REMOTE_SITE}</strong></td>
+ <td>{server.SITE_URL}</td>
+ </tr>
+ <!-- END server -->
+ <!-- BEGIN storage -->
+ <tr>
+ <td><strong>{L_STORAGE}</strong></td>
+ <td class="row1">{storage.CATEGORY_DIR}</td>
+ </tr>
+ <!-- END storage -->
+ <tr>
+ <td><strong>{L_EDIT_NAME}</strong></td>
+ <td>
+ <input type="text" name="name" value="{CAT_NAME}" maxlength="60"/>
+ </td>
+ </tr>
+ <tr>
+ <td><strong>{L_EDIT_COMMENT}</strong></td>
+ <td>
+ <textarea name="comment" class="description">{CAT_COMMENT}</textarea>
+ </td>
+ </tr>
+ </table>
+</fieldset>
+
+<!-- BEGIN move -->
+<fieldset>
+ <legend>{lang:Move}</legend>
+ {lang:Parent category}
+ <select name="parent">
+ <!-- BEGIN parent_option -->
+ <option class="{move.parent_option.CLASS}" {move.parent_option.SELECTED} value="{move.parent_option.VALUE}">{move.parent_option.OPTION}</option>
+ <!-- END parent_option -->
+ </select>
+</fieldset>
+<!-- END move -->
+
+<fieldset>
+ <legend>{lang:Options}</legend>
+ <table>
+ <tr>
+ <td><strong>{L_EDIT_STATUS}</strong><br /><span class="small">{L_EDIT_STATUS_INFO}</span></td>
+ <td>
+ <input type="radio" name="status" value="public" {STATUS_PUBLIC} />{L_STATUS_PUBLIC}
+ <input type="radio" name="status" value="private" {STATUS_PRIVATE} />{L_STATUS_PRIVATE}
+ </td>
+ </tr>
+ <tr>
+ <td><strong>{L_EDIT_LOCK}</strong><br /><span class="small">{L_EDIT_LOCK_INFO}</span></td>
+ <td>
+ <input type="radio" name="visible" value="false" {LOCKED} />{L_YES}
+ <input type="radio" name="visible" value="true" {UNLOCKED} />{L_NO}
+ </td>
+ </tr>
+ <tr>
+ <td><strong>{L_EDIT_COMMENTABLE}</strong><br /><span class="small">{L_EDIT_COMMENTABLE_INFO}</span></td>
+ <td>
+ <input type="radio" name="commentable" value="true" {COMMENTABLE_TRUE} />{L_YES}
+ <input type="radio" name="commentable" value="false" {COMMENTABLE_FALSE} />{L_NO}
+ </td>
+ </tr>
+ <!-- BEGIN upload -->
+ <tr>
+ <td><strong>{L_EDIT_UPLOADABLE}</strong><br /><span class="small">{L_EDIT_UPLOADABLE_INFO}</span></td>
+ <td>
+ <input type="radio" name="uploadable" value="true" {UPLOADABLE_TRUE} />{L_YES}
+ <input type="radio" name="uploadable" value="false" {UPLOADABLE_FALSE} />{L_NO}
+ </td>
+ </tr>
+ <!-- END upload -->
+ </table>
+</fieldset>
+
+<p style="text-align:center;">
+ <input type="submit" value="{L_SUBMIT}" name="submit" />
+ <input type="reset" value="{lang:Reset}" name="reset" />
+</p>
+
+<!-- BEGIN representant -->
+<fieldset>
+ <legend>{lang:Representant}</legend>
+ <table>
+ <tr>
+ <td align="center">
+ <!-- BEGIN picture -->
+ <a href="{representant.picture.URL}"><img src="{representant.picture.SRC}" alt="" class="miniature" /></a>
+ <!-- END picture -->
+
+ <!-- BEGIN random -->
+ <img src="./template/default/theme/category_representant_random.png" alt="{lang:Random picture}" class="miniature" />
+ <!-- END random -->
+ </td>
+ <td>
+ <!-- BEGIN set_random -->
+ <p><input type="submit" name="set_random_representant" value="{L_SET_RANDOM_REPRESENTANT}" /></p>
+ <!-- END set_random -->
+
+ <!-- BEGIN delete_representant -->
+ <p><input type="submit" name="delete_representant" value="{lang:Delete Representant}" /></p>
+ <!-- END delete_representant -->
+ </td>
+ </tr>
+ </table>
+</fieldset>
+<!-- END representant -->
+
+</form>
diff --git a/template/yoga/admin/cat_options.tpl b/template/yoga/admin/cat_options.tpl
new file mode 100644
index 000000000..7ee2a945e
--- /dev/null
+++ b/template/yoga/admin/cat_options.tpl
@@ -0,0 +1,12 @@
+<!-- $Id$ -->
+<h2>{lang:title_cat_options}</h2>
+
+<form method="post" action="{F_ACTION}" id="cat_options">
+ <fieldset>
+ <legend>{L_SECTION}</legend>
+ {DOUBLE_SELECT}
+ </fieldset>
+</form>
+
+<p class="information">{L_CAT_OPTIONS_INFO}</div>
+
diff --git a/template/yoga/admin/cat_perm.tpl b/template/yoga/admin/cat_perm.tpl
new file mode 100644
index 000000000..39374d5ed
--- /dev/null
+++ b/template/yoga/admin/cat_perm.tpl
@@ -0,0 +1,60 @@
+<h2>{lang:Manage permissions for a category}</h2>
+
+<h3>{CATEGORIES_NAV}</h3>
+
+<form action="{F_ACTION}" method="post" id="categoryPermissions">
+
+ <h4>{lang:Groups}</h4>
+
+ <fieldset>
+ <legend>{lang:Permission granted}</legend>
+ <ul>
+ <!-- BEGIN group_granted -->
+ <li><label><input type="checkbox" name="deny_groups[]" value="{group_granted.ID}" /> {group_granted.NAME}</label></li>
+ <!-- END group_granted -->
+ </ul>
+ <input type="submit" name="deny_groups_submit" value="{lang:Deny selected groups}" />
+ </fieldset>
+
+ <fieldset>
+ <legend>{lang:Permission denied}</legend>
+ <ul>
+ <!-- BEGIN group_denied -->
+ <li><label><input type="checkbox" name="grant_groups[]" value="{group_denied.ID}"> {group_denied.NAME}</label></li>
+ <!-- END group_denied -->
+ </ul>
+ <input type="submit" name="grant_groups_submit" value="{lang:Grant selected groups}" />
+ </fieldset>
+
+ <h4>{lang:Users}</h4>
+
+ <fieldset>
+ <legend>{lang:Permission granted}</legend>
+ <ul>
+ <!-- BEGIN user_granted -->
+ <li><label><input type="checkbox" name="deny_users[]" value="{user_granted.ID}" /> {user_granted.NAME}</label></li>
+ <!-- END user_granted -->
+ </ul>
+ <input type="submit" name="deny_users_submit" value="{lang:Deny selected users}" />
+ </fieldset>
+
+ <fieldset>
+ <legend>{lang:Permission granted thanks to a group}</legend>
+ <ul>
+ <!-- BEGIN user_granted_indirect -->
+ <li>{user_granted_indirect.NAME} ({user_granted_indirect.GROUP})</li>
+ <!-- END user_granted_indirect -->
+ </ul>
+ </fieldset>
+
+ <fieldset>
+ <legend>{lang:Permission denied}</legend>
+ <ul>
+ <!-- BEGIN user_denied -->
+ <li><label><input type="checkbox" name="grant_users[]" value="{user_denied.ID}"> {user_denied.NAME}</label></li>
+ <!-- END user_denied -->
+ </ul>
+ <input type="submit" name="grant_users_submit" value="{lang:Grant selected users}" />
+ </fieldset>
+
+</form>
diff --git a/template/yoga/admin/comments.tpl b/template/yoga/admin/comments.tpl
new file mode 100644
index 000000000..d903c332a
--- /dev/null
+++ b/template/yoga/admin/comments.tpl
@@ -0,0 +1,26 @@
+<h2>{lang:User comments validation}</h2>
+
+<form method="post" action="{F_ACTION}">
+
+ <input type="hidden" name="list" value="{LIST}" />
+
+ <!-- BEGIN comment -->
+ <div class="comment">
+ <a class="illustration" href="{comment.U_PICTURE}"><img src="{comment.TN_SRC}" /></a>
+ <p class="commentHeader"><strong>{comment.AUTHOR}</strong> - <em>{comment.DATE}</em></p>
+ <blockquote>{comment.CONTENT}</blockquote>
+ <ul class="actions">
+ <li><label><input type="radio" name="action-{comment.ID}" value="reject" />{lang:Reject}</label></li>
+ <li><label><input type="radio" name="action-{comment.ID}" value="validate" />{lang:Validate}</label></li>
+ </ul>
+ </div>
+ <!-- END comment -->
+
+ <p class="bottomButtons">
+ <input type="submit" name="submit" value="{lang:Submit}" />
+ <input type="submit" name="validate-all" value="{lang:Validate All}" />
+ <input type="submit" name="reject-all" value="{lang:Reject All}" />
+ <input type="reset" value="{lang:Reset}" />
+ </p>
+
+</form>
diff --git a/template/yoga/admin/configuration.tpl b/template/yoga/admin/configuration.tpl
new file mode 100644
index 000000000..25cdc91b0
--- /dev/null
+++ b/template/yoga/admin/configuration.tpl
@@ -0,0 +1,118 @@
+<!-- $Id$ -->
+<div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li>
+ </ul>
+ <h2>{lang:title_configuration}</h2>
+</div>
+
+<form method="post" action="{F_ACTION}" class="properties">
+
+<fieldset>
+<!-- BEGIN general -->
+ <legend>{lang:conf_general_title}</legend>
+
+ <ul>
+ <li>
+ <label><strong>{lang:History}</strong></label>
+ <input type="radio" class="radio" name="log" value="true" {general.HISTORY_YES} />{lang:Yes}
+ <input type="radio" class="radio" name="log" value="false" {general.HISTORY_NO} />{lang:No}
+ </li>
+
+ <li>
+ <label><strong>{lang:Lock gallery}</strong></label>
+ <input type="radio" class="radio" name="gallery_locked" value="true" {general.GALLERY_LOCKED_YES} />{lang:Yes}
+ <input type="radio" class="radio" name="gallery_locked" value="false" {general.GALLERY_LOCKED_NO} />{lang:No}
+ </li>
+ </ul>
+<!-- END general -->
+
+<!-- BEGIN comments -->
+ <legend>{lang:conf_comments_title}</legend>
+
+ <ul>
+ <li>
+ <label><strong>{lang:Comments for all}</strong></label>
+ <input type="radio" class="radio" name="comments_forall" value="true" {comments.COMMENTS_ALL_YES} />{lang:Yes}
+ <input type="radio" class="radio" name="comments_forall" value="false" {comments.COMMENTS_ALL_NO} />{lang:No}
+ </li>
+
+ <li>
+ <label for="nb_comment_page"><strong>{lang:Number of comments per page}</strong></label>
+ <input type="text" size="3" maxlength="4" name="nb_comment_page" id="nb_comment_page" value="{comments.NB_COMMENTS_PAGE}" />
+ </li>
+
+ <li>
+ <label><strong>{lang:Validation}</strong></label>
+ <input type="radio" class="radio" name="comments_validation" value="true" {comments.VALIDATE_YES} />{lang:Yes}
+ <input type="radio" class="radio" name="comments_validation" value="false" {comments.VALIDATE_NO} />{lang:No}
+ </li>
+ </ul>
+<!-- END comments -->
+<!-- BEGIN default -->
+ <legend>{lang:conf_default_title}</legend>
+
+ <ul>
+ <li>
+ <label for="language"><strong>{lang:Language}</strong></label>
+ <select name="default_language" id="default_language">
+ <!-- BEGIN language_option -->
+ <option value="{default.language_option.VALUE}" {default.language_option.SELECTED}>{default.language_option.CONTENT}</option>
+ <!-- END language_option -->
+ </select>
+ </li>
+
+ <li>
+ <label for="nb_image_line"><strong>{lang:Number of images per row}</strong></label>
+ <input type="text" size="3" maxlength="2" name="nb_image_line" value="{default.NB_IMAGE_LINE}" />
+ </li>
+
+ <li>
+ <label><strong>{lang:Number of rows per page}</strong></label>
+ <input type="text" size="3" maxlength="2" name="nb_line_page" value="{default.NB_ROW_PAGE}" />
+ </li>
+
+ <li>
+ <label><strong>{lang:Interface theme}</strong></label>
+ <select name="default_template" id="default_template">
+ <!-- BEGIN template_option -->
+ <option value="{default.template_option.VALUE}" {default.template_option.SELECTED}>{default.template_option.CONTENT}</option>
+ <!-- END template_option -->
+ </select>
+ </li>
+
+ <li>
+ <label for="recent_period"><strong>{lang:Recent period}</strong></label>
+ <input type="text" size="3" maxlength="2" name="recent_period" id="recent_period" value="{default.CONF_RECENT}" />
+ </li>
+
+ <li>
+ <label><strong>{lang:Expand all categories}</strong></label>
+ <input type="radio" class="radio" name="auto_expand" value="true" {default.EXPAND_YES} />{lang:Yes}
+ <input type="radio" class="radio" name="auto_expand" value="false" {default.EXPAND_NO} />{lang:No}
+ </li>
+
+ <li>
+ <label><strong>{lang:Show number of comments}</strong></label>
+ <input type="radio" class="radio" name="show_nb_comments" value="true" {default.SHOW_COMMENTS_YES} />{lang:Yes}
+ <input type="radio" class="radio" name="show_nb_comments" value="false" {default.SHOW_COMMENTS_NO} />{lang:No}
+ </li>
+
+ <li>
+ <label><strong>{lang:Maximum width of the pictures}</strong></label>
+ <input type="text" size="4" maxlength="4" name="default_maxwidth" value="{default.MAXWIDTH}" />
+ </li>
+
+ <li>
+ <label><strong>{lang:Maximum height of the pictures}</strong></label>
+ <input type="text" size="4" maxlength="4" name="default_maxheight" value="{default.MAXHEIGHT}" />
+ </li>
+ </ul>
+<!-- END default -->
+ </fieldset>
+
+ <p>
+ <input type="submit" name="submit" value="{lang:Submit}">
+ <input type="reset" name="reset" value="{lang:Reset}">
+ </p>
+</form>
diff --git a/template/yoga/admin/double_select.tpl b/template/yoga/admin/double_select.tpl
new file mode 100644
index 000000000..1745c52d3
--- /dev/null
+++ b/template/yoga/admin/double_select.tpl
@@ -0,0 +1,23 @@
+<table class="doubleSelect">
+ <tr>
+ <td>
+ <h3>{L_CAT_OPTIONS_TRUE}</h3>
+ <select class="categoryList" name="cat_true[]" multiple="multiple" size="30">
+ <!-- BEGIN category_option_true -->
+ <option {category_option_true.SELECTED} value="{category_option_true.VALUE}">{category_option_true.OPTION}</option>
+ <!-- END category_option_true -->
+ </select>
+ <p><input type="submit" value="&raquo;" name="falsify" style="font-size:15px;"/></p>
+ </td>
+
+ <td>
+ <h3>{L_CAT_OPTIONS_FALSE}</h3>
+ <select class="categoryList" name="cat_false[]" multiple="multiple" size="30">
+ <!-- BEGIN category_option_false -->
+ <option {category_option_false.SELECTED} value="{category_option_false.VALUE}">{category_option_false.OPTION}</option>
+ <!-- END category_option_false -->
+ </select>
+ <p><input type="submit" value="&laquo;" name="trueify" style="font-size:15px;" /></p>
+ </td>
+ </tr>
+</table>
diff --git a/template/yoga/admin/element_set_global.tpl b/template/yoga/admin/element_set_global.tpl
new file mode 100644
index 000000000..7cd8d1ec5
--- /dev/null
+++ b/template/yoga/admin/element_set_global.tpl
@@ -0,0 +1,187 @@
+<!-- $Id$ -->
+<h2>{lang:Batch management}</h2>
+
+<h3>{CATEGORIES_NAV}</h3>
+
+<p style="text-align:center;">
+ global mode
+ | <a href="{U_UNIT_MODE}">unit mode</a>
+</p>
+
+<form action="{F_ACTION}" method="post">
+
+<fieldset>
+
+ <legend>Caddie management</legend>
+
+ <ul style="list-style-type:none;">
+
+ <!-- BEGIN in_caddie -->
+ <li><label><input type="radio" name="caddie_action" value="empty_all" /> {lang:Empty caddie}</label></li>
+ <li><label><input type="radio" name="caddie_action" value="empty_selected" /> {lang:Take selected elements out of caddie}</label></li>
+ <!-- END in_caddie -->
+
+ <!-- BEGIN not_in_caddie -->
+ <li><input type="radio" name="caddie_action" value="add_selected" /> Add selected elements to caddie</li>
+ <!-- END not_in_caddie -->
+
+ </ul>
+
+ <p style="text-align:center;"><input type="submit" value="{L_SUBMIT}" name="submit_caddie" /></p>
+
+</fieldset>
+
+<fieldset>
+
+ <legend>Display options</legend>
+
+ <p>elements per line :
+ <a href="{U_COLS}&amp;cols=4">4</a>
+ | <a href="{U_COLS}&amp;cols=5">5</a>
+ | <a href="{U_COLS}&amp;cols=6">6</a>
+ | <a href="{U_COLS}&amp;cols=7">7</a>
+ | <a href="{U_COLS}&amp;cols=8">8</a>
+ | <a href="{U_COLS}&amp;cols=9">9</a>
+ | <a href="{U_COLS}&amp;cols=10">10</a>
+ </p>
+
+ <p>elements per page :
+ <a href="{U_DISPLAY}&amp;display=20">20</a>
+ | <a href="{U_DISPLAY}&amp;display=50">50</a>
+ | <a href="{U_DISPLAY}&amp;display=100">100</a>
+ | <a href="{U_DISPLAY}&amp;display=all">all</a>
+ </p>
+
+</fieldset>
+
+<fieldset>
+
+ <legend>Form</legend>
+
+ <table>
+
+ <tr>
+ <td>associate to category</td>
+ <td>
+ <select style="width:400px" name="associate" size="1">
+ <!-- BEGIN associate_option -->
+ <option {associate_option.SELECTED} value="{associate_option.VALUE}">{associate_option.OPTION}</option>
+ <!-- END associate_option -->
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>dissociate from category</td>
+ <td>
+ <select style="width:400px" name="dissociate" size="1">
+ <!-- BEGIN dissociate_option -->
+ <option {dissociate_option.SELECTED} value="{dissociate_option.VALUE}">{dissociate_option.OPTION}</option>
+ <!-- END dissociate_option -->
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>add keywords</td>
+ <td><input type="text" name="add_keywords" value="" /></td>
+ </tr>
+
+ <tr>
+ <td>remove keyword</td>
+ <td>
+ <select name="remove_keyword">
+ <!-- BEGIN remove_keyword_option -->
+ <option value="{remove_keyword_option.VALUE}">{remove_keyword_option.OPTION}</option>
+ <!-- END remove_keyword_option -->
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>author</td>
+ <td>
+ <input type="radio" name="author_action" value="leave" checked="checked" /> leave unchanged
+ <input type="radio" name="author_action" value="unset" /> unset
+ <input type="radio" name="author_action" value="set" id="author_action_set" /> set to
+ <input onmousedown="document.getElementById('author_action_set').checked = true;" type="text" name="author" value="" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>title</td>
+ <td>
+ <input type="radio" name="name_action" value="leave" checked="checked" /> leave unchanged
+ <input type="radio" name="name_action" value="unset" /> unset
+ <input type="radio" name="name_action" value="set" id="name_action_set" /> set to
+ <input onmousedown="document.getElementById('name_action_set').checked = true;" type="text" name="name" value="" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>creation date</td>
+ <td>
+ <input type="radio" name="date_creation_action" value="leave" checked="checked" /> leave unchanged
+ <input type="radio" name="date_creation_action" value="unset" /> unset
+ <input type="radio" name="date_creation_action" value="set" id="date_creation_action_set" /> set to
+ <select onmousedown="document.getElementById('date_creation_action_set').checked = true;" name="date_creation_day">
+ <!-- BEGIN date_creation_day -->
+ <option {date_creation_day.SELECTED} value="{date_creation_day.VALUE}">{date_creation_day.OPTION}</option>
+ <!-- END date_creation_day -->
+ </select>
+ <select onmousedown="document.getElementById('date_creation_action_set').checked = true;" name="date_creation_month">
+ <!-- BEGIN date_creation_month -->
+ <option {date_creation_month.SELECTED} value="{date_creation_month.VALUE}">{date_creation_month.OPTION}</option>
+ <!-- END date_creation_month -->
+ </select>
+ <input onmousedown="document.getElementById('date_creation_action_set').checked = true;"
+ name="date_creation_year"
+ type="text"
+ size="4"
+ maxlength="4"
+ value="{DATE_CREATION_YEAR_VALUE}" />
+ </td>
+ </tr>
+
+ </table>
+
+ <p style="text-align:center;">
+ target
+ <input type="radio" name="target" value="all" /> all
+ <input type="radio" name="target" value="selection" checked="checked" /> selection
+ </p>
+
+
+ <p style="text-align:center;"><input type="submit" value="{L_SUBMIT}" name="submit" /></p>
+
+</fieldset>
+
+<fieldset>
+
+ <legend>Elements</legend>
+
+ <div class="navigationBar">{NAV_BAR}</div>
+
+ <!-- BEGIN thumbnails -->
+ <table valign="top" align="center" class="thumbnail">
+ <!-- BEGIN line -->
+ <tr>
+ <!-- BEGIN thumbnail -->
+ <td class="thumbnail">
+ <label>
+ <img src="{thumbnails.line.thumbnail.SRC}"
+ alt="{thumbnails.line.thumbnail.ALT}"
+ title="{thumbnails.line.thumbnail.TITLE}"
+ class="thumbLink" />
+ <br /><input type="checkbox" name="selection[]" value="{thumbnails.line.thumbnail.ID}" />
+ </label>
+ </td>
+ <!-- END thumbnail -->
+ </tr>
+ <!-- END line -->
+ </table>
+ <!-- END thumbnails -->
+
+</fieldset>
+
+</form>
diff --git a/template/yoga/admin/element_set_unit.tpl b/template/yoga/admin/element_set_unit.tpl
new file mode 100644
index 000000000..b71130efd
--- /dev/null
+++ b/template/yoga/admin/element_set_unit.tpl
@@ -0,0 +1,92 @@
+<h2>{lang:Batch management}</h2>
+
+<h3>{CATEGORIES_NAV}</h3>
+
+<p style="text-align:center;">
+ <a href="{U_GLOBAL_MODE}">global mode</a>
+ | unit mode
+</p>
+
+<form action="{F_ACTION}" method="POST">
+
+<input type="hidden" name="list" value="{IDS_LIST}" />
+
+<fieldset>
+
+ <legend>Display options</legend>
+
+ <p>elements per page :
+ <a href="{U_ELEMENTS_PAGE}&amp;display=5">5</a>
+ | <a href="{U_ELEMENTS_PAGE}&amp;display=10">10</a>
+ | <a href="{U_ELEMENTS_PAGE}&amp;display=50">50</a>
+ | <a href="{U_ELEMENTS_PAGE}&amp;display=all">all</a>
+ </p>
+
+</fieldset>
+
+<div class="navigationBar">{NAV_BAR}</div>
+
+<!-- BEGIN element -->
+<fieldset class="elementEdit">
+ <legend>{element.LEGEND}</legend>
+
+ <a href="{element.U_EDIT}"><img src="{element.TN_SRC}" alt="" class="miniature" title="{lang:Edit all picture informations}" /></a>
+
+ <table>
+
+ <tr>
+ <td><strong>{lang:Name}</strong></td>
+ <td><input type="text" name="name-{element.ID}" value="{element.NAME}" /></td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Author}</strong></td>
+ <td><input type="text" name="author-{element.ID}" value="{element.AUTHOR}" /></td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Creation date}</strong></td>
+ <td>
+ <label><input type="radio" name="date_creation_action-{element.ID}" value="unset" /> unset</label>
+ <input type="radio" name="date_creation_action-{element.ID}" value="set" id="date_creation_action_set-{element.ID}" /> set to
+ <select onmousedown="document.getElementById('date_creation_action_set-{element.ID}').checked = true;" name="date_creation_day-{element.ID}">
+ <!-- BEGIN date_creation_day -->
+ <option {element.date_creation_day.SELECTED} value="{element.date_creation_day.VALUE}">{element.date_creation_day.OPTION}</option>
+ <!-- END date_creation_day -->
+ </select>
+ <select onmousedown="document.getElementById('date_creation_action_set-{element.ID}').checked = true;" name="date_creation_month-{element.ID}">
+ <!-- BEGIN date_creation_month -->
+ <option {element.date_creation_month.SELECTED} value="{element.date_creation_month.VALUE}">{element.date_creation_month.OPTION}</option>
+ <!-- END date_creation_month -->
+ </select>
+ <input onmousedown="document.getElementById('date_creation_action_set-{element.ID}').checked = true;"
+ name="date_creation_year-{element.ID}"
+ type="text"
+ size="4"
+ maxlength="4"
+ value="{element.DATE_CREATION_YEAR}" />
+ </td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Keywords}</strong></td>
+ <td><input type="text" name="keywords-{element.ID}" value="{element.KEYWORDS}" size="50" /></td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Description}</strong></td>
+ <td><textarea name="description-{element.ID}" class="description">{element.DESCRIPTION}</textarea></td>
+ </tr>
+
+ </table>
+
+</fieldset>
+<!-- END element -->
+
+<p>
+ <input type="submit" value="{L_SUBMIT}" name="submit" />
+ <input type="reset" value="{lang:Reset}" />
+</p>
+
+
+</form>
diff --git a/template/yoga/admin/group_list.tpl b/template/yoga/admin/group_list.tpl
new file mode 100644
index 000000000..4344c10da
--- /dev/null
+++ b/template/yoga/admin/group_list.tpl
@@ -0,0 +1,27 @@
+<h2>{lang:title_groups}</h2>
+
+<form class="filter" method="post" name="add_user" action="{F_ADD_ACTION}">
+ <fieldset>
+ <legend>{lang:Add group}</legend>
+ <label>{lang:Group name} <input type="text" name="groupname" maxlength="50" size="20" /></label>
+ <input type="submit" name="submit_add" value="{lang:Add}" />
+ </fieldset>
+</form>
+
+<table class="table2">
+ <tr class="throw">
+ <th>{lang:Group name}</th>
+ <th>{lang:Members}</th>
+ <th>{lang:Actions}</th>
+ </tr>
+ <!-- BEGIN group -->
+ <tr class="{group.CLASS}">
+ <td>{group.NAME}</td>
+ <td><a href="{group.U_MEMBERS}">{group.MEMBERS}</a></td>
+ <td style="text-align:center;">
+ <a href="{group.U_PERM}"><img src="./template/default/theme/permissions.png" style="border:none" alt="permissions" title="{lang:permissions}" /></a>
+ <a href="{group.U_DELETE}"><img src="./template/default/theme/delete.png" style="border:none" alt="delete" title="{lang:delete}" /></a>
+ </td>
+ </tr>
+ <!-- END group -->
+</table>
diff --git a/template/yoga/admin/group_perm.tpl b/template/yoga/admin/group_perm.tpl
new file mode 100644
index 000000000..91c2f637a
--- /dev/null
+++ b/template/yoga/admin/group_perm.tpl
@@ -0,0 +1,7 @@
+<h2>{TITLE}</h2>
+
+<form method="post" action="{F_ACTION}">
+ {DOUBLE_SELECT}
+</form>
+
+<p>{lang:Only private categories are listed}</p>
diff --git a/template/yoga/admin/help.tpl b/template/yoga/admin/help.tpl
new file mode 100644
index 000000000..d2f59b811
--- /dev/null
+++ b/template/yoga/admin/help.tpl
@@ -0,0 +1,13 @@
+ <!-- BEGIN cat -->
+ <h3>{cat.NAME}</h3>
+ <!-- BEGIN illustration -->
+ <div style="text-align:center;margin:auto;margin-bottom:10px;"><img src="{cat.illustration.SRC_IMG}" style="border:1px solid black;" alt=""/></div>
+ {cat.illustration.CAPTION}
+ <!-- END illustration -->
+ <ul style="text-align:left; margin-right:10px;">
+ <!-- BEGIN item -->
+ <li style="margin-bottom:5px;">{cat.item.CONTENT}</li>
+ <!-- END item -->
+ </ul>
+ <p>&nbsp;</p>
+ <!-- END cat -->
diff --git a/template/yoga/admin/images/arrow_down.gif b/template/yoga/admin/images/arrow_down.gif
new file mode 100644
index 000000000..4adda7a9a
--- /dev/null
+++ b/template/yoga/admin/images/arrow_down.gif
Binary files differ
diff --git a/template/yoga/admin/images/arrow_first.gif b/template/yoga/admin/images/arrow_first.gif
new file mode 100644
index 000000000..aba378384
--- /dev/null
+++ b/template/yoga/admin/images/arrow_first.gif
Binary files differ
diff --git a/template/yoga/admin/images/arrow_last.gif b/template/yoga/admin/images/arrow_last.gif
new file mode 100644
index 000000000..95e9b33b2
--- /dev/null
+++ b/template/yoga/admin/images/arrow_last.gif
Binary files differ
diff --git a/template/yoga/admin/images/arrow_select.gif b/template/yoga/admin/images/arrow_select.gif
new file mode 100644
index 000000000..90da978cd
--- /dev/null
+++ b/template/yoga/admin/images/arrow_select.gif
Binary files differ
diff --git a/template/yoga/admin/images/arrow_up.gif b/template/yoga/admin/images/arrow_up.gif
new file mode 100644
index 000000000..25d857944
--- /dev/null
+++ b/template/yoga/admin/images/arrow_up.gif
Binary files differ
diff --git a/template/yoga/admin/images/collapsed.gif b/template/yoga/admin/images/collapsed.gif
new file mode 100644
index 000000000..3084e0877
--- /dev/null
+++ b/template/yoga/admin/images/collapsed.gif
Binary files differ
diff --git a/template/yoga/admin/images/delete.gif b/template/yoga/admin/images/delete.gif
new file mode 100644
index 000000000..88c8d55fa
--- /dev/null
+++ b/template/yoga/admin/images/delete.gif
Binary files differ
diff --git a/template/yoga/admin/images/errors.png b/template/yoga/admin/images/errors.png
new file mode 100644
index 000000000..3c8a37df5
--- /dev/null
+++ b/template/yoga/admin/images/errors.png
Binary files differ
diff --git a/template/yoga/admin/images/expanded.gif b/template/yoga/admin/images/expanded.gif
new file mode 100644
index 000000000..8d2dc2e2a
--- /dev/null
+++ b/template/yoga/admin/images/expanded.gif
Binary files differ
diff --git a/template/yoga/admin/images/icon_folder.gif b/template/yoga/admin/images/icon_folder.gif
new file mode 100644
index 000000000..cb8e1e69b
--- /dev/null
+++ b/template/yoga/admin/images/icon_folder.gif
Binary files differ
diff --git a/template/yoga/admin/images/icon_folder_link.gif b/template/yoga/admin/images/icon_folder_link.gif
new file mode 100644
index 000000000..0dd6b7d9a
--- /dev/null
+++ b/template/yoga/admin/images/icon_folder_link.gif
Binary files differ
diff --git a/template/yoga/admin/images/icon_folder_lock.gif b/template/yoga/admin/images/icon_folder_lock.gif
new file mode 100644
index 000000000..6e03018c8
--- /dev/null
+++ b/template/yoga/admin/images/icon_folder_lock.gif
Binary files differ
diff --git a/template/yoga/admin/images/icon_subfolder.gif b/template/yoga/admin/images/icon_subfolder.gif
new file mode 100644
index 000000000..b96b786d4
--- /dev/null
+++ b/template/yoga/admin/images/icon_subfolder.gif
Binary files differ
diff --git a/template/yoga/admin/images/infos.png b/template/yoga/admin/images/infos.png
new file mode 100644
index 000000000..dc8c8a457
--- /dev/null
+++ b/template/yoga/admin/images/infos.png
Binary files differ
diff --git a/template/yoga/admin/images/moins.gif b/template/yoga/admin/images/moins.gif
new file mode 100644
index 000000000..74fa8736f
--- /dev/null
+++ b/template/yoga/admin/images/moins.gif
Binary files differ
diff --git a/template/yoga/admin/images/plus.gif b/template/yoga/admin/images/plus.gif
new file mode 100644
index 000000000..982dcf665
--- /dev/null
+++ b/template/yoga/admin/images/plus.gif
Binary files differ
diff --git a/template/yoga/admin/images/puce.gif b/template/yoga/admin/images/puce.gif
new file mode 100644
index 000000000..3c9171845
--- /dev/null
+++ b/template/yoga/admin/images/puce.gif
Binary files differ
diff --git a/template/yoga/admin/images/stat_left.gif b/template/yoga/admin/images/stat_left.gif
new file mode 100644
index 000000000..269088b81
--- /dev/null
+++ b/template/yoga/admin/images/stat_left.gif
Binary files differ
diff --git a/template/yoga/admin/images/stat_middle.gif b/template/yoga/admin/images/stat_middle.gif
new file mode 100644
index 000000000..99473151e
--- /dev/null
+++ b/template/yoga/admin/images/stat_middle.gif
Binary files differ
diff --git a/template/yoga/admin/images/stat_right.gif b/template/yoga/admin/images/stat_right.gif
new file mode 100644
index 000000000..f9584e23a
--- /dev/null
+++ b/template/yoga/admin/images/stat_right.gif
Binary files differ
diff --git a/template/yoga/admin/intro.tpl b/template/yoga/admin/intro.tpl
new file mode 100644
index 000000000..ac50d986a
--- /dev/null
+++ b/template/yoga/admin/intro.tpl
@@ -0,0 +1,44 @@
+<!-- $Id$ -->
+<h2>{lang:title_default}</h2>
+
+<dl>
+ <dt>{lang:PhpWebGallery version}</dt>
+ <dd>
+ <ul>
+ <li>PhpWebGallery {PWG_VERSION}</li>
+ <li><a href="{U_CHECK_UPGRADE}">{lang:Check for upgrade}</a></li>
+ </ul>
+ </dd>
+
+ <dt>{lang:Environment}</dt>
+ <dd>
+ <ul>
+ <li>{lang:Operating system}: {OS}</li>
+ <li>PHP: {PHP_VERSION} (<a href="{U_PHPINFO}">{lang:Show info}</a>)</li>
+ <li>MySQL: {MYSQL_VERSION}</li>
+ </ul>
+ </dd>
+
+ <dt>{lang:Database}</dt>
+ <dd>
+ <ul>
+ <li>
+ {DB_ELEMENTS}
+ <!-- BEGIN waiting -->
+ (<a href="{waiting.URL}">{waiting.INFO}</a>)
+ <!-- END waiting -->
+ </li>
+ <li>{DB_CATEGORIES}</li>
+ <li>{DB_USERS}</li>
+ <li>{DB_GROUPS}</li>
+ <li>
+ {DB_COMMENTS}
+ <!-- BEGIN unvalidated -->
+ (<a href="{unvalidated.URL}">{unvalidated.INFO}</a>)
+ <!-- END unvalidated -->
+ </li>
+ <li>{DB_DATE}</li>
+ </ul>
+ </dd>
+
+</dl>
diff --git a/template/yoga/admin/maintenance.tpl b/template/yoga/admin/maintenance.tpl
new file mode 100644
index 000000000..7fe6c8ab5
--- /dev/null
+++ b/template/yoga/admin/maintenance.tpl
@@ -0,0 +1,15 @@
+<!-- $Id$ -->
+<div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li>
+ </ul>
+ <h2>{lang:Maintenance}</h2>
+</div>
+
+<ul>
+ <li><a href="{U_MAINT_CATEGORIES}">{lang:update categories informations}</a></li>
+ <li><a href="{U_MAINT_IMAGES}">{lang:update images informations}</a></li>
+ <li><a href="{U_MAINT_HISTORY}">{lang:purge history}</a></li>
+ <li><a href="{U_MAINT_SESSIONS}">{lang:purge sessions}</a></li>
+ <li><a href="{U_MAINT_FEEDS}">{lang:purge never used notification feeds}</a></li>
+</ul>
diff --git a/template/yoga/admin/picture_modify.tpl b/template/yoga/admin/picture_modify.tpl
new file mode 100644
index 000000000..46abed7b0
--- /dev/null
+++ b/template/yoga/admin/picture_modify.tpl
@@ -0,0 +1,182 @@
+<!-- $Id$ -->
+<h2>{lang:title_picmod}</h2>
+
+<img src="{TN_SRC}" alt="{lang:thumbnail}" class="thumbnail" />
+
+<ul class="categoryActions">
+ <!-- BEGIN jumpto -->
+ <li><a href="{jumpto.URL}" title="{lang:jump to image}"><img src="./template/default/theme/category_jump-to.png" alt="{lang:jump to}" /></a></li>
+ <!-- END jumpto -->
+ <li><a href="{U_SYNC}" title="{lang:synchronize metadata}"><img src="./template/default/theme/sync_metadata.png" alt="{lang:synchronize}" /></a></li>
+</ul>
+
+<form action="{F_ACTION}" method="post" id="properties">
+
+ <fieldset>
+ <legend>{lang:Informations}</legend>
+
+ <table>
+
+ <tr>
+ <td><strong>{lang:Path}</strong></td>
+ <td>{PATH}</td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Registration date}</strong></td>
+ <td>{REGISTRATION_DATE}</td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Dimensions}</strong></td>
+ <td>{DIMENSIONS}</td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Filesize}</strong></td>
+ <td>{FILESIZE}</td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Storage category}</strong></td>
+ <td>{STORAGE_CATEGORY}</td>
+ </tr>
+
+ <!-- BEGIN links -->
+ <tr>
+ <td><strong>{lang:Linked categories}</strong></td>
+ <td>
+ <ul>
+ <!-- BEGIN category -->
+ <li>{links.category.NAME}</li>
+ <!-- END category -->
+ </ul>
+ </td>
+ </tr>
+ <!-- END links -->
+
+ </table>
+
+ </fieldset>
+
+ <fieldset>
+ <legend>{lang:Properties}</legend>
+
+ <table>
+
+ <tr>
+ <td><strong>{lang:Name}</strong></td>
+ <td><input type="text" name="name" value="{NAME}" /></td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Author}</strong></td>
+ <td><input type="text" name="author" value="{AUTHOR}" /></td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Creation date}</strong></td>
+ <td>
+ <label><input type="radio" name="date_creation_action" value="unset" /> unset</label>
+ <input type="radio" name="date_creation_action" value="set" id="date_creation_action_set" /> set to
+ <select onmousedown="document.getElementById('date_creation_action_set').checked = true;" name="date_creation_day">
+ <!-- BEGIN date_creation_day -->
+ <option {date_creation_day.SELECTED} value="{date_creation_day.VALUE}">{date_creation_day.OPTION}</option>
+ <!-- END date_creation_day -->
+ </select>
+ <select onmousedown="document.getElementById('date_creation_action_set').checked = true;" name="date_creation_month">
+ <!-- BEGIN date_creation_month -->
+ <option {date_creation_month.SELECTED} value="{date_creation_month.VALUE}">{date_creation_month.OPTION}</option>
+ <!-- END date_creation_month -->
+ </select>
+ <input onmousedown="document.getElementById('date_creation_action_set').checked = true;"
+ name="date_creation_year"
+ type="text"
+ size="4"
+ maxlength="4"
+ value="{DATE_CREATION_YEAR_VALUE}" />
+ </td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Keywords}</strong></td>
+ <td><input type="text" name="keywords" value="{KEYWORDS}" size="50" /></td>
+ </tr>
+
+ <tr>
+ <td><strong>{lang:Description}</strong></td>
+ <td><textarea name="description" class="description">{DESCRIPTION}</textarea></td>
+ </tr>
+
+ </table>
+
+ <p style="text-align:center;">
+ <input type="submit" value="{lang:Submit}" name="submit" />
+ <input type="reset" value="{lang:Reset}" name="reset" />
+ </p>
+
+ </fieldset>
+
+</form>
+
+<form id="associations" method="post" action="{F_ACTION}#associations">
+ <fieldset>
+ <legend>{lang:Association to categories}</legend>
+
+ <table class="doubleSelect">
+ <tr>
+ <td>
+ <h3>{lang:Associated}</h3>
+ <select class="categoryList" name="cat_associated[]" multiple="multiple" size="30">
+ <!-- BEGIN associated_option -->
+ <option {associated_option.SELECTED} value="{associated_option.VALUE}">{associated_option.OPTION}</option>
+ <!-- END associated_option -->
+ </select>
+ <p><input type="submit" value="&raquo;" name="dissociate" style="font-size:15px;"/></p>
+ </td>
+
+ <td>
+ <h3>{lang:Dissociated}</h3>
+ <select class="categoryList" name="cat_dissociated[]" multiple="multiple" size="30">
+ <!-- BEGIN dissociated_option -->
+ <option {dissociated_option.SELECTED} value="{dissociated_option.VALUE}">{dissociated_option.OPTION}</option>
+ <!-- END dissociated_option -->
+ </select>
+ <p><input type="submit" value="&laquo;" name="associate" style="font-size:15px;" /></p>
+ </td>
+ </tr>
+ </table>
+
+ </fieldset>
+</form>
+
+<form id="representation" method="post" action="{F_ACTION}#representation">
+ <fieldset>
+ <legend>{lang:Representation of categories}</legend>
+
+ <table class="doubleSelect">
+ <tr>
+ <td>
+ <h3>{lang:Represents}</h3>
+ <select class="categoryList" name="cat_elected[]" multiple="multiple" size="30">
+ <!-- BEGIN elected_option -->
+ <option {elected_option.SELECTED} value="{elected_option.VALUE}">{elected_option.OPTION}</option>
+ <!-- END elected_option -->
+ </select>
+ <p><input type="submit" value="&raquo;" name="dismiss" style="font-size:15px;"/></p>
+ </td>
+
+ <td>
+ <h3>{lang:Does not represent}</h3>
+ <select class="categoryList" name="cat_dismissed[]" multiple="multiple" size="30">
+ <!-- BEGIN dismissed_option -->
+ <option {dismissed_option.SELECTED} value="{dismissed_option.VALUE}">{dismissed_option.OPTION}</option>
+ <!-- END dismissed_option -->
+ </select>
+ <p><input type="submit" value="&laquo;" name="elect" style="font-size:15px;" /></p>
+ </td>
+ </tr>
+ </table>
+
+ </fieldset>
+</form>
diff --git a/template/yoga/admin/remote_site.tpl b/template/yoga/admin/remote_site.tpl
new file mode 100644
index 000000000..1da98cab7
--- /dev/null
+++ b/template/yoga/admin/remote_site.tpl
@@ -0,0 +1,77 @@
+<!-- $Id$ -->
+<div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li>
+ </ul>
+ <h2>{lang:remote_sites}</h2>
+</div>
+
+<!-- BEGIN errors -->
+<div class="errors">
+ <ul>
+ <!-- BEGIN error -->
+ <li>{errors.error.ERROR}</li>
+ <!-- END error -->
+ </ul>
+</div>
+<!-- END errors -->
+
+<!-- BEGIN confirmation -->
+<div class="info">{confirmation.CONTENT}</div>
+<!-- END confirmation -->
+
+<!-- BEGIN update -->
+<div class="admin">{L_RESULT_UPDATE}</div>
+<ul style="text-align:left;">
+ <li class="update_summary_new">{update.NB_NEW_CATEGORIES} {L_NB_NEW_CATEGORIES}</li>
+ <li class="update_summary_new">{update.NB_NEW_ELEMENTS} {L_NB_NEW_ELEMENTS}</li>
+ <li class="update_summary_del">{update.NB_DEL_CATEGORIES} {L_NB_DEL_CATEGORIES}</li>
+ <li class="update_summary_del">{update.NB_DEL_ELEMENTS} {L_NB_DEL_ELEMENTS}</li>
+</ul>
+<!-- BEGIN removes -->
+{L_REMOTE_SITE_REMOVED_TITLE}
+<ul style="text-align:left;">
+ <!-- BEGIN remote_remove -->
+ <li>{update.removes.remote_remove.NAME} {L_REMOTE_SITE_REMOVED}</li>
+ <!-- END remote_remove -->
+</ul>
+<!-- END removes -->
+<!-- END update -->
+
+<!-- BEGIN remote_output -->
+<div class="remoteOutput">
+ <ul>
+ <!-- BEGIN remote_line -->
+ <li class="{remote_output.remote_line.CLASS}">{remote_output.remote_line.CONTENT}</li>
+ <!-- END remote_line -->
+ </ul>
+</div>
+<!-- END remote_output -->
+
+<!-- BEGIN local -->
+<div class="remoteLocal">
+ {L_REMOTE_SITE_LOCAL_FOUND} {local.URL}
+ <!-- BEGIN new_site -->
+ {L_REMOTE_SITE_LOCAL_NEW}
+ <!-- END new_site -->
+ [<a href="{local.U_UPDATE}">{L_REMOTE_SITE_LOCAL_UPDATE}</a>]
+</div>
+<!-- END local -->
+
+<form action="{F_ACTION}" method="post">
+ {L_REMOTE_SITE_CREATE}
+ <input type="text" name="galleries_url" value="{F_GALLERIES_URL}" />
+ <input type="submit" name="submit" value="{L_SUBMIT}" />
+</form>
+
+<table>
+ <!-- BEGIN site -->
+ <tr>
+ <td>{site.NAME}</td>
+ <td>[<a href="{site.U_GENERATE}" title="{L_REMOTE_SITE_GENERATE_HINT}">{L_REMOTE_SITE_GENERATE}</a>]</td>
+ <td>[<a href="{site.U_UPDATE}" title="{L_REMOTE_SITE_UPDATE_HINT}">{L_REMOTE_SITE_UPDATE}</a>]</td>
+ <td>[<a href="{site.U_CLEAN}" title="{L_REMOTE_SITE_CLEAN_HINT}">{L_REMOTE_SITE_CLEAN}</a>]</td>
+ <td>[<a href="{site.U_DELETE}" title="{L_REMOTE_SITE_DELETE_HINT}">{L_REMOTE_SITE_DELETE}</a>]</td>
+ </tr>
+ <!-- END site -->
+</table>
diff --git a/template/yoga/admin/stats.tpl b/template/yoga/admin/stats.tpl
new file mode 100644
index 000000000..dbfa667a6
--- /dev/null
+++ b/template/yoga/admin/stats.tpl
@@ -0,0 +1,24 @@
+<!-- $Id$ -->
+<h2>{lang:title_history}</h2>
+
+<h3>{L_STAT_TITLE}</h3>
+<img class="image" src="{IMG_MONTHLY_REPORT}" alt="{L_STAT_MONTHLY_ALT}" />
+<h3>{L_STAT_MONTH_TITLE}</h3>
+<!-- TODO : center the table ??? -->
+<table class="table2" width="60%">
+<tr class="throw">
+ <th>{L_MONTH}</th>
+ <th>{L_PAGES_SEEN}</th>
+ <th>{L_VISITORS}</th>
+ <th>{L_PICTURES}</th>
+</tr>
+<!-- BEGIN month -->
+ <tr class="{month.T_CLASS}">
+ <td>{month.MONTH}</td>
+ <td>{month.PAGES}</td>
+ <td>{month.VISITORS}</td>
+ <td>{month.IMAGES}</td>
+ </tr>
+<!-- END month -->
+</table>
+<br />
diff --git a/template/yoga/admin/thumbnail.tpl b/template/yoga/admin/thumbnail.tpl
new file mode 100644
index 000000000..aa8bbcd0f
--- /dev/null
+++ b/template/yoga/admin/thumbnail.tpl
@@ -0,0 +1,132 @@
+<!-- $Id$ -->
+<h2>{lang:title_thumbnails}</h2>
+
+<!-- BEGIN results -->
+<div class="admin">{L_RESULTS}</div>
+<table style="width:100%;">
+ <tr class="throw">
+ <th>{L_PATH}</td>
+ <th>{L_THUMBNAIL}</td>
+ <th>{L_GENERATED}</th>
+ <th>{L_FILESIZE}</td>
+ <th>{L_WIDTH}</td>
+ <th>{L_HEIGHT}</td>
+ </tr>
+ <!-- BEGIN picture -->
+ <tr class="{results.picture.T_CLASS}">
+ <td>{results.picture.PATH}</td>
+ <td><img src="{results.picture.TN_FILE_IMG}" /></td>
+ <td style="text-align:right;" class="{results.picture.T_CLASS}">{results.picture.GEN_TIME}</td>
+ <td style="text-align:right;">{results.picture.TN_FILESIZE_IMG}</td>
+ <td style="text-align:right;">{results.picture.TN_WIDTH_IMG}</td>
+ <td style="text-align:right;">{results.picture.TN_HEIGHT_IMG}</td>
+ </tr>
+ <!-- END picture -->
+</table>
+
+<table class="table2">
+ <tr class="throw">
+ <th colspan="2">{L_TN_STATS}</td>
+ </tr>
+ <tr>
+ <td>{L_TN_NB_STATS}</td>
+ <td style="text-align:center;">{results.TN_NB}</td>
+ </tr>
+ <tr>
+ <td>{L_TN_TOTAL}</td>
+ <td style="text-align:right;">{results.TN_TOTAL}</td>
+ </tr>
+ <tr>
+ <td>{L_TN_MAX}</td>
+ <td style="text-align:right;" class="worst_gen_time">{results.TN_MAX}</td>
+ </tr>
+ <tr>
+ <td>{L_TN_MIN}</td>
+ <td style="text-align:right;" class="best_gen_time">{results.TN_MIN}</td>
+ </tr>
+ <tr>
+ <td>{L_TN_AVERAGE}</td>
+ <td style="text-align:right;">{results.TN_AVERAGE}</td>
+ </tr>
+</table>
+<br />
+<!-- END results -->
+
+<!-- BEGIN params -->
+<form method="post" action="{params.F_ACTION}">
+ <table style="width:100%;">
+ <tr>
+ <th class="admin" colspan="3">{L_PARAMS}</th>
+ </tr>
+ <tr><td colspan="3">&nbsp;</td></tr>
+ <tr>
+ <td><div class="key">{L_GD}</div></td>
+ <td class="choice">
+ <input type="radio" name="gd" value="2" {params.GD2_CHECKED} />2.x
+ <input type="radio" name="gd" value="1" {params.GD1_CHECKED} />1.x
+ </td>
+ <td style="width:50%;" class="row2">{L_GD_INFO}</td>
+ </tr>
+ <tr>
+ <td><div class="key">{L_WIDTH}</div></td>
+ <td class="choice">
+ <input type="text" name="width" value="{params.WIDTH_TN}"/>
+ </td>
+ <td>{L_WIDTH_INFO}</td>
+ </tr>
+ <tr>
+ <td><div class="key">{L_HEIGHT}</div></td>
+ <td class="choice">
+ <input type="text" name="height" value="{params.HEIGHT_TN}"/>
+ </td>
+ <td>{L_HEIGHT_INFO}</td>
+ </tr>
+ <tr>
+ <td><div class="key">{L_CREATE}</div></td>
+ <td class="choice">
+ <input type="radio" name="n" value="5" {params.n_5_CHECKED} /> 5
+ <input type="radio" name="n" value="10" {params.n_10_CHECKED} /> 10
+ <input type="radio" name="n" value="20" {params.n_20_CHECKED} /> 20
+ <input type="radio" name="n" value="all" {params.n_all_CHECKED} /> {L_ALL}
+ </td>
+ <td>{L_CREATE_INFO}</td>
+ </tr>
+ <tr>
+ <td><div class="key">{L_FORMAT}</div></td>
+ <td class="choice"><span style="font-weight:bold;">jpeg</span></td>
+ <td>{L_FORMAT_INFO}</td>
+ </tr>
+ <tr>
+ <td colspan="3" style="text-align:center;">
+ <input type="submit" name="submit" value="{L_SUBMIT}"/>
+ </td>
+ </tr>
+ </table>
+</form>
+<!-- END params -->
+
+<!-- BEGIN warning -->
+<div style="text-align:center;font-weight:bold;margin:10px;"> [ {L_UNLINK} ]</div>
+<!-- END warning -->
+
+<!-- BEGIN remainings -->
+<div class="admin">{remainings.TOTAL_IMG} {L_REMAINING}</div>
+<table style="width:100%;">
+ <tr class="throw">
+ <th>&nbsp;</td>
+ <th style="width:60%;">{L_PATH}</td>
+ <th>{L_FILESIZE}</td>
+ <th>{L_WIDTH}</td>
+ <th>{L_HEIGHT}</td>
+ </tr>
+ <!-- BEGIN remaining -->
+ <tr class="{remainings.remaining.T_CLASS}">
+ <td>{remainings.remaining.NB_IMG}</td>
+ <td><div style="margin-left:10px;">{remainings.remaining.PATH}</div></td>
+ <td><div style="margin-left:10px;">{remainings.remaining.FILESIZE_IMG}</div></td>
+ <td><div style="margin-left:10px;">{remainings.remaining.WIDTH_IMG}</div></td>
+ <td><div style="margin-left:10px;">{remainings.remaining.HEIGHT_IMG}</div></td>
+ </tr>
+ <!-- END remaining -->
+</table>
+<!-- END remainings -->
diff --git a/template/yoga/admin/update.tpl b/template/yoga/admin/update.tpl
new file mode 100644
index 000000000..a095573d1
--- /dev/null
+++ b/template/yoga/admin/update.tpl
@@ -0,0 +1,92 @@
+<!-- $Id$ -->
+
+<div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li>
+ </ul>
+ <h2>{lang:title_update}</h2>
+</div>
+
+<!-- BEGIN update -->
+<h3>{L_RESULT_UPDATE}</h3>
+<ul>
+ <li class="update_summary_new">{update.NB_NEW_CATEGORIES} {L_NB_NEW_CATEGORIES}</li>
+ <li class="update_summary_new">{update.NB_NEW_ELEMENTS} {L_NB_NEW_ELEMENTS}</li>
+ <li class="update_summary_del">{update.NB_DEL_CATEGORIES} {L_NB_DEL_CATEGORIES}</li>
+ <li class="update_summary_del">{update.NB_DEL_ELEMENTS} {L_NB_DEL_ELEMENTS}</li>
+ <li class="update_summary_err">{update.NB_ERRORS} {L_UPDATE_NB_ERRORS}</li>
+</ul>
+<!-- BEGIN update_errors -->
+<h3>{L_UPDATE_ERROR_LIST_TITLE}</h3>
+<ul>
+ <!-- BEGIN update_error -->
+ <li>[{update.update_errors.update_error.ELEMENT}] {update.update_errors.update_error.LABEL}</li>
+ <!-- END update_error -->
+</ul>
+<h3>{L_UPDATE_ERRORS_CAPTION}</h3>
+<ul>
+ <li><strong>PWG-UPDATE-1</strong> : {L_UPDATE_WRONG_DIRNAME_INFO}</li>
+ <li><strong>PWG-UPDATE-2</strong> : {L_UPDATE_MISSING_TN_INFO} {{PICTURE_EXT_LIST}}</li>
+</ul>
+<!-- END update_errors -->
+<!-- BEGIN update_infos -->
+<h3>{L_UPDATE_INFOS_TITLE}</h3>
+<ul>
+ <!-- BEGIN update_info -->
+ <li>[{update.update_infos.update_info.ELEMENT}] {update.update_infos.update_info.LABEL}</li>
+ <!-- END update_info -->
+</ul>
+<!-- END update_infos -->
+<!-- END update -->
+
+<!-- BEGIN metadata_result -->
+<h3>{L_RESULT_METADATA}</h3>
+<ul>
+ <li>{metadata_result.NB_ELEMENTS} {L_ELEMENTS_METADATA_SYNC}</li>
+ <li>{L_USED_METADATA} : {METADATA_LIST}</li>
+</ul>
+<!-- END metadata_result -->
+
+<!-- BEGIN introduction -->
+<h3>{L_UPDATE_TITLE}</h3>
+<form action="{F_ACTION}" method="post" id="update">
+
+ <fieldset>
+ <legend>{L_UPDATE_SYNC_FILES}</legend>
+
+ <ul>
+ <li><label><input type="radio" name="sync" value="dirs" {SYNC_DIRS_CHECKED} /> {L_UPDATE_SYNC_DIRS}</label></li>
+ <li><label><input type="radio" name="sync" value="files" {SYNC_ALL_CHECKED} /> {L_UPDATE_SYNC_ALL}</label></li>
+ <li><label><input type="checkbox" name="display_info" value="1" {DISPLAY_INFO_CHECKED} /> {L_UPDATE_DISPLAY_INFO}</label></li>
+ <li><label><input type="checkbox" name="simulate" value="1" checked="checked" /> {L_UPDATE_SIMULATE}</label></li>
+ </ul>
+ </fieldset>
+
+ <fieldset>
+ <legend>{L_UPDATE_SYNC_METADATA}</legend>
+ <p> {L_USED_METADATA} : {METADATA_LIST}.</p>
+ <ul>
+ <li><label><input type="radio" name="sync" value="metadata_new" /> {L_UPDATE_SYNC_METADATA_NEW}</label></li>
+ <li><label><input type="radio" name="sync" value="metadata_all" /> {L_UPDATE_SYNC_METADATA_ALL}</label></li>
+ </ul>
+ </fieldset>
+
+ <fieldset>
+ <legend>{L_UPDATE_CATS_SUBSET}</legend>
+
+ <select style="width:500px" name="cat" size="10">
+ <!-- BEGIN category_option -->
+ <option {introduction.category_option.SELECTED} value="{introduction.category_option.VALUE}">{introduction.category_option.OPTION}</option>
+ <!-- END category_option -->
+ </select>
+
+ <label><input type="checkbox" name="subcats-included" value="1" {SUBCATS_INCLUDED_CHECKED} /> {L_SEARCH_SUBCATS_INCLUDED}</label>
+ </fieldset>
+
+ <p class="bottomButtons">
+ <input type="submit" value="{L_SUBMIT}" name="submit" />
+ <input type="reset" value="{L_RESET}" name="reset" />
+ </p>
+
+</form>
+<!-- END introduction -->
diff --git a/template/yoga/admin/user_list.tpl b/template/yoga/admin/user_list.tpl
new file mode 100644
index 000000000..ad6b18678
--- /dev/null
+++ b/template/yoga/admin/user_list.tpl
@@ -0,0 +1,275 @@
+<h2>{lang:title_liste_users}</h2>
+
+<form class="filter" method="post" name="add_user" action="{F_ADD_ACTION}">
+ <fieldset>
+ <legend>{lang:Add a user}</legend>
+ <label>{L_USERNAME} <input type="text" name="login" maxlength="50" size="20" /></label>
+ <label>{L_PASSWORD} <input type="text" name="password" /></label>
+ <input type="submit" name="submit_add" value="{L_SUBMIT}" />
+ </fieldset>
+</form>
+
+<form class="filter" method="get" name="filter" action="{F_FILTER_ACTION}">
+
+ <input type="hidden" name="page" value="user_list" />
+
+ <!-- BEGIN session -->
+ <input type="hidden" name="id" value="{session.ID}" />
+ <!-- END session -->
+
+<fieldset>
+
+ <legend>{lang:Filter}</legend>
+
+
+ <label>{lang:username} <input type="text" name="username" value="{F_USERNAME}" /></label>
+
+ <label>
+ {lang:status}
+ <select name="status">
+ <!-- BEGIN status_option -->
+ <option value="{status_option.VALUE}" {status_option.SELECTED} > {status_option.CONTENT}</option>
+ <!-- END status_option -->
+ </select>
+ </label>
+
+ <label>
+ {lang:group}
+ <select name="group">
+ <!-- BEGIN group_option -->
+ <option value="{group_option.VALUE}" {group_option.SELECTED} > {group_option.CONTENT}</option>
+ <!-- END group_option -->
+ </select>
+ </label>
+
+ <label>
+ {lang:Order by}
+ <select name="order_by">
+ <!-- BEGIN order_by -->
+ <option value="{order_by.VALUE}" {order_by.SELECTED} >{order_by.CONTENT}</option>
+ <!-- END order_by -->
+ </select>
+ </label>
+
+ <label>
+ {lang:Sort order}
+ <select name="direction">
+ <!-- BEGIN direction -->
+ <option value="{direction.VALUE}" {direction.SELECTED} >{direction.CONTENT}</option>
+ <!-- END direction -->
+ </select>
+ </label>
+
+ <input type="submit" name="submit_filter" value="{L_SUBMIT}" />
+
+</fieldset>
+
+</form>
+
+<form method="post" name="preferences" action="{F_PREF_ACTION}">
+
+<table class="table2">
+ <tr class="throw">
+ <th>&nbsp;</th>
+ <th>{L_USERNAME}</th>
+ <th>{L_STATUS}</th>
+ <th>{L_EMAIL}</th>
+ <th>{lang:Groups}</th>
+ <th>{L_ACTIONS}</th>
+ </tr>
+ <!-- BEGIN user -->
+ <tr class="{user.CLASS}">
+ <td><input type="checkbox" name="selection[]" value="{user.ID}" {user.CHECKED} id="selection-{user.ID}" /></td>
+ <td><label for="selection-{user.ID}">{user.USERNAME}</label></td>
+ <td>{user.STATUS}</td>
+ <td>{user.EMAIL}</td>
+ <td>{user.GROUPS}</td>
+ <td style="text-align:center;">
+ <a href="{user.U_PERM}"><img src="./template/default/theme/permissions.png" style="border:none" alt="{L_PERMISSIONS}" title="{L_PERMISSIONS}" /></a>
+ </td>
+ </tr>
+ <!-- END user -->
+</table>
+
+<div class="navigationBar">{NAVBAR}</div>
+
+<!-- delete the selected users ? -->
+<fieldset>
+ <legend>{lang:Deletions}</legend>
+ <label><input type="checkbox" name="confirm_deletion" value="1" /> {lang:confirm}</label>
+ <input type="submit" value="{lang:Delete selected users}" name="delete" />
+</fieldset>
+
+<fieldset>
+ <legend>{lang:Status}</legend>
+
+ <table>
+ <tr>
+ <td>{L_STATUS}</td>
+ <td>
+ <label><input type="radio" name="status_action" value="leave" checked="checked" /> {lang:leave}</label>
+ <label><input type="radio" name="status_action" value="set" id="status_action_set" /> {lang:set to}</label>
+ <select onmousedown="document.getElementById('status_action_set').checked = true;" name="status" size="1">
+ <!-- BEGIN pref_status_option -->
+ <option {pref_status_option.SELECTED} value="{pref_status_option.VALUE}">{pref_status_option.CONTENT}</option>
+ <!-- END pref_status_option -->
+ </select>
+ </td>
+ </tr>
+ </table>
+
+</fieldset>
+
+<!-- form to set properties for many users at once -->
+<fieldset>
+ <legend>{lang:Groups}</legend>
+
+<table>
+
+ <tr>
+ <td>{lang:associate to group}</td>
+ <td>
+ <select name="associate" size="1">
+ <!-- BEGIN associate_option -->
+ <option {associate_option.SELECTED} value="{associate_option.VALUE}">{associate_option.CONTENT}</option>
+ <!-- END associate_option -->
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>{lang:dissociate from group}</td>
+ <td>
+ <select name="dissociate" size="1">
+ <!-- BEGIN dissociate_option -->
+ <option {dissociate_option.SELECTED} value="{dissociate_option.VALUE}">{dissociate_option.CONTENT}</option>
+ <!-- END dissociate_option -->
+ </select>
+ </td>
+ </tr>
+
+</table>
+
+</fieldset>
+
+<fieldset>
+ <legend>{lang:Preferences}</legend>
+
+<table>
+
+ <tr>
+ <td>{L_NB_IMAGE_LINE}</td>
+ <td>
+ <label><input type="radio" name="nb_image_line_action" value="leave" checked="checked" /> {lang:leave}</label>
+ <label><input type="radio" name="nb_image_line_action" value="set" id="nb_image_line_action_set" /> {lang:set to}</label>
+ <input onmousedown="document.getElementById('nb_image_line_action_set').checked = true;"
+ size="3" maxlength="2" type="text" name="nb_image_line" value="{NB_IMAGE_LINE}" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>{L_NB_LINE_PAGE}</td>
+ <td>
+ <label><input type="radio" name="nb_line_page_action" value="leave" checked="checked" /> {lang:leave}</label>
+ <label><input type="radio" name="nb_line_page_action" value="set" id="nb_line_page_action_set" /> {lang:set to}</label>
+ <input onmousedown="document.getElementById('nb_line_page_action_set').checked = true;"
+ size="3" maxlength="2" type="text" name="nb_line_page" value="{NB_LINE_PAGE}" />
+ <td>
+ </tr>
+
+ <tr>
+ <td>{L_TEMPLATE}</td>
+ <td>
+ <label><input type="radio" name="template_action" value="leave" checked="checked" /> {lang:leave}</label>
+ <label><input type="radio" name="template_action" value="set" id="template_action_set" /> {lang:set to}</label>
+ <select onmousedown="document.getElementById('template_action_set').checked = true;" name="template" size="1">
+ <!-- BEGIN template_option -->
+ <option {template_option.SELECTED} value="{template_option.VALUE}">{template_option.CONTENT}</option>
+ <!-- END template_option -->
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>{L_LANGUAGE}</td>
+ <td>
+ <label><input type="radio" name="language_action" value="leave" checked="checked" /> {lang:leave}</label>
+ <label><input type="radio" name="language_action" value="set" id="language_action_set" /> {lang:set to}</label>
+ <select onmousedown="document.getElementById('language_action_set').checked = true;" name="language" size="1">
+ <!-- BEGIN language_option -->
+ <option {language_option.SELECTED} value="{language_option.VALUE}">{language_option.CONTENT}</option>
+ <!-- END language_option -->
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>{L_RECENT_PERIOD}</td>
+ <td>
+ <label><input type="radio" name="recent_period_action" value="leave" checked="checked" /> {lang:leave}</label>
+ <label><input type="radio" name="recent_period_action" value="set" id="recent_period_action_set" /> {lang:set to}</label>
+ <input onmousedown="document.getElementById('recent_period_action_set').checked = true;"
+ type="text" size="3" maxlength="2" name="recent_period" value="{RECENT_PERIOD}" />
+ </td>
+ </tr>
+
+ <tr>
+ <td>{L_EXPAND}</td>
+ <td>
+ <label><input type="radio" name="expand" value="leave" checked="checked" /> {lang:leave}</label>
+ / {lang:set to}
+ <label><input type="radio" name="expand" value="true" {EXPAND_YES} />{L_YES}</label>
+ <label><input type="radio" name="expand" value="false" {EXPAND_NO} />{L_NO}</label>
+ </td>
+ </tr>
+
+ <tr>
+ <td>{L_SHOW_NB_COMMENTS}</td>
+ <td>
+ <label><input type="radio" name="show_nb_comments" value="leave" checked="checked" /> {lang:leave}</label>
+ / {lang:set to}
+ <label><input type="radio" name="show_nb_comments" value="true" {SHOW_NB_COMMENTS_YES} />{L_YES}</label>
+ <label><input type="radio" name="show_nb_comments" value="false" {SHOW_NB_COMMENTS_NO} />{L_NO}</label>
+ </td>
+ </tr>
+
+ <tr>
+ <td>{L_MAXWIDTH}</td>
+ <td>
+ <label><input type="radio" name="maxwidth_action" value="leave" checked="checked" /> {lang:leave}</label>
+ <label><input type="radio" name="maxwidth_action" value="unset" /> {lang:unset}</label>
+ <label><input type="radio" name="maxwidth_action" value="set" id="maxwidth_action_set" /> {lang:set to}</label>
+ <input onmousedown="document.getElementById('maxwidth_action_set').checked = true;"
+ type="text" size="4" maxlength="4" name="maxwidth" value="{MAXWIDTH}" />
+ </td>
+ </tr>
+
+
+ <tr>
+ <td>{L_MAXHEIGHT}</td>
+ <td>
+ <label><input type="radio" name="maxheight_action" value="leave" checked="checked" /> {lang:leave}</label>
+ <label><input type="radio" name="maxheight_action" value="unset" /> {lang:unset}</label>
+ <label><input type="radio" name="maxheight_action" value="set" id="maxheight_action_set" /> {lang:set to}</label>
+ <input onmousedown="document.getElementById('maxheight_action_set').checked = true;"
+ type="text" size="4" maxlength="4" name="maxheight" value="{maxheight}" />
+ </td>
+ </tr>
+
+
+</table>
+
+</fieldset>
+
+<p>
+ {lang:target}
+ <label><input type="radio" name="target" value="all" /> {lang:all}
+ <label><input type="radio" name="target" value="selection" checked="checked" /> {lang:selection}
+</p>
+
+<p>
+ <input type="submit" value="{L_SUBMIT}" name="pref_submit" />
+ <input type="reset" value="{L_RESET}" name="pref_reset" />
+</p>
+
+</form>
diff --git a/template/yoga/admin/user_perm.tpl b/template/yoga/admin/user_perm.tpl
new file mode 100644
index 000000000..a24fd9096
--- /dev/null
+++ b/template/yoga/admin/user_perm.tpl
@@ -0,0 +1,21 @@
+<h2>{TITLE}</h2>
+
+<!-- BEGIN groups -->
+<fieldset>
+ <legend>{lang:Categories authorized thanks to group associations}</legend>
+
+ <ul>
+ <!-- BEGIN category -->
+ <li>{groups.category.NAME}</li>
+ <!-- END category -->
+ </ul>
+</fieldset>
+<!-- END groups -->
+
+<fieldset>
+ <legend>{lang:Other private categories}</legend>
+
+ <form method="post" action="{F_ACTION}">
+ {DOUBLE_SELECT}
+ </form>
+</fieldset>
diff --git a/template/yoga/admin/waiting.tpl b/template/yoga/admin/waiting.tpl
new file mode 100644
index 000000000..d011e9984
--- /dev/null
+++ b/template/yoga/admin/waiting.tpl
@@ -0,0 +1,47 @@
+<!-- $Id$ -->
+<h2>{lang:title_waiting}</h2>
+
+<form action="{F_ACTION}" method="post" id="waiting">
+
+ <input type="hidden" name="list" value="{LIST}" />
+
+ <table style="width:100%;" >
+ <tr class="throw">
+ <th style="width:20%;">{L_CATEGORY}</th>
+ <th style="width:20%;">{L_DATE}</th>
+ <th style="width:20%;">{L_FILE}</th>
+ <th style="width:20%;">{L_THUMBNAIL}</th>
+ <th style="width:20%;">{L_AUTHOR}</th>
+ <th style="width:1px;">&nbsp;</th>
+ </tr>
+ <!-- BEGIN picture -->
+ <tr>
+ <td class="{picture.WAITING_CLASS}" style="white-space:nowrap;">{picture.CATEGORY_IMG}</td>
+ <td class="{picture.WAITING_CLASS}" style="white-space:nowrap;">{picture.DATE_IMG}</td>
+ <td class="{picture.WAITING_CLASS}" style="white-space:nowrap;">
+ <a target="_blank" href="{picture.PREVIEW_URL_IMG}" title="{picture.FILE_TITLE}">{picture.FILE_IMG}</a>
+ </td>
+ <td class="{picture.WAITING_CLASS}" style="white-space:nowrap;">
+ <!-- BEGIN thumbnail -->
+ <a target="_blank" href="{picture.thumbnail.PREVIEW_URL_TN_IMG}" title="{picture.thumbnail.FILE_TN_TITLE}">{picture.thumbnail.FILE_TN_IMG}</a>
+ <!-- END thumbnail -->
+ </td>
+ <td class="{picture.WAITING_CLASS}" style="white-space:nowrap;">
+ <a href="mailto:{picture.UPLOAD_EMAIL}">{picture.UPLOAD_USERNAME}</a>
+ </td>
+ <td class="{picture.WAITING_CLASS}" style="white-space:nowrap;">
+ <label><input type="radio" name="action-{picture.ID_IMG}" value="validate" /> {lang:Validate}</label>
+ <label><input type="radio" name="action-{picture.ID_IMG}" value="reject" /> {lang:Reject}</label>
+ </td>
+ </tr>
+ <!-- END picture -->
+ </table>
+
+ <p class="bottomButtons">
+ <input type="submit" name="submit" value="{lang:Submit}" />
+ <input type="submit" name="validate-all" value="{lang:Validate All}" />
+ <input type="submit" name="reject-all" value="{lang:Reject All}" />
+ <input type="reset" value="{lang:Reset}" />
+ </p>
+
+</form>
diff --git a/template/yoga/category.tpl b/template/yoga/category.tpl
new file mode 100644
index 000000000..96744606d
--- /dev/null
+++ b/template/yoga/category.tpl
@@ -0,0 +1,152 @@
+<!-- $Id$ -->
+<div id="menubar">
+<!-- BEGIN links -->
+<dl>
+ <dt>{lang:Links}</dt>
+ <dd>
+ <ul>
+ <!-- BEGIN link -->
+ <li><a href="{links.link.URL}">{links.link.LABEL}</a></li>
+ <!-- END link -->
+ </ul>
+ </dd>
+</dl>
+<!-- END links -->
+<dl>
+ <dt><a href="{U_HOME}">{L_CATEGORIES}</a></dt>
+ <dd>
+ {MENU_CATEGORIES_CONTENT}
+ </dd>
+</dl>
+<dl>
+ <dt>{L_SPECIAL_CATEGORIES}</dt>
+ <dd>
+ <ul>
+ <!-- BEGIN special_cat -->
+ <li><a href="{special_cat.URL}" title="{special_cat.TITLE}">{special_cat.NAME}</a></li>
+ <!-- END special_cat -->
+ </ul>
+ </dd>
+</dl>
+<dl>
+ <dt>{L_SUMMARY}</dt>
+ <dd>
+ <ul>
+ <!-- BEGIN summary -->
+ <li><a href="{summary.U_SUMMARY}" title="{summary.TITLE}">{summary.NAME}</a></li>
+ <!-- END summary -->
+ <!-- BEGIN upload -->
+ <li><a href="{upload.U_UPLOAD}">{L_UPLOAD}</a></li>
+ <!-- END upload -->
+ </ul>
+ </dd>
+</dl>
+<dl>
+ <dt>{L_IDENTIFY}</dt>
+ <dd>
+ <!-- BEGIN hello -->
+ <p>{L_HELLO}&nbsp;{USERNAME}&nbsp;!</p>
+ <!-- END hello -->
+ <ul>
+ <!-- BEGIN register -->
+ <li><a href="{U_REGISTER}">{L_REGISTER}</a></li>
+ <!-- END register -->
+ <!-- BEGIN login -->
+ <li><a href="{F_IDENTIFY}">{L_LOGIN}</a></li>
+ <!-- END login -->
+ <!-- BEGIN logout -->
+ <li><a href="{U_LOGOUT}">{L_LOGOUT}</a></li>
+ <!-- END logout -->
+ <!-- BEGIN profile -->
+ <li><a href="{U_PROFILE}" title="{L_PROFILE_HINT}">{L_PROFILE}</a></li>
+ <!-- END profile -->
+ <!-- BEGIN admin -->
+ <li><a href="{U_ADMIN}" title="{L_ADMIN_HINT}">{L_ADMIN}</a></li>
+ <!-- END admin -->
+ </ul>
+ <!-- BEGIN quickconnect -->
+ <hr />
+ <form method="post" action="{F_IDENTIFY}" id="quickconnect">
+ <p>
+ <input type="hidden" name="redirect" value="{U_REDIRECT}">
+ <label for="username">{L_USERNAME}:</label>
+ <input type="text" name="username" id="username" size="15" value="">
+ </p>
+ <p>
+ <label for="password">{L_PASSWORD}:</label>
+ <input type="password" name="password" id="password" size="15">
+ </p>
+ <!-- BEGIN remember_me -->
+ <p>
+ <input type="checkbox" name="remember_me" id="remember_me" value="1">
+ <label for="remember_me">{L_REMEMBER_ME}</label>
+ </p>
+ <!-- END remember_me -->
+ <p><input type="submit" name="login" value="{L_SUBMIT}"></p>
+ </form>
+ <!-- END quickconnect -->
+ </dd>
+</dl>
+</div> <!-- menubar -->
+
+<div id="content">
+ <div class="titrePage">
+ <ul class="categoryActions">
+ <li>&nbsp;</li>
+ <!-- BEGIN caddie -->
+ <li><a href="{caddie.URL}" title="{lang:add to caddie}"><img src="./template/default/theme/caddie_add.png" alt="{lang:caddie}"/></a></li>
+ <!-- END caddie -->
+ <!-- BEGIN edit -->
+ <li><a href="{edit.URL}" title="{lang:edit category informations}"><img src="./template/default/theme/category_edit.png" alt="{lang:edit}"/></a></li>
+ <!-- END edit -->
+ </ul>
+ <h2>{TITLE}</h2>
+ </div>
+<!-- BEGIN calendar -->
+<div class="navigationBar">{calendar.YEARS_NAV_BAR}</div>
+<div class="navigationBar">{calendar.MONTHS_NAV_BAR}</div>
+<!-- END calendar -->
+
+<!-- BEGIN thumbnails -->
+<ul class="thumbnails">
+ <!-- BEGIN line -->
+ <!-- BEGIN thumbnail -->
+ <li>
+ <span>
+ <span><span class="wrap">
+ <a href="{thumbnails.line.thumbnail.U_IMG_LINK}">
+ <img class="thumbnail" src="{thumbnails.line.thumbnail.IMAGE}"
+ alt="{thumbnails.line.thumbnail.IMAGE_ALT}"
+ title="{thumbnails.line.thumbnail.IMAGE_TITLE}">
+ </a>
+ </span></span>
+ <!-- BEGIN element_name -->
+ {thumbnails.line.thumbnail.element_name.NAME}
+ <!-- END element_name -->
+ <!-- BEGIN category_name -->
+ [{thumbnails.line.thumbnail.category_name.NAME}]
+ <!-- END category_name -->
+ {thumbnails.line.thumbnail.IMAGE_TS}
+ <!-- BEGIN nb_comments -->
+ <br />{thumbnails.line.thumbnail.nb_comments.NB_COMMENTS} {L_COMMENT}
+ <!-- END nb_comments -->
+ </span>
+ </li>
+ <!-- END thumbnail -->
+ <!-- END line -->
+
+</ul>
+<!-- END thumbnails -->
+
+<!-- BEGIN cat_infos -->
+<!-- BEGIN navigation -->
+<div class="navigationBar">
+{cat_infos.navigation.NAV_BAR}
+</div>
+<!-- END navigation -->
+<!-- BEGIN comment -->
+<div class="additional_info">{cat_infos.comment.COMMENTS}</div>
+<!-- END comment -->
+<!-- END cat_infos -->
+
+</div> <!-- content -->
diff --git a/template/yoga/comments.tpl b/template/yoga/comments.tpl
new file mode 100644
index 000000000..bb4b7726b
--- /dev/null
+++ b/template/yoga/comments.tpl
@@ -0,0 +1,93 @@
+<!-- $Id$ -->
+<div id="content">
+
+ <div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li>
+ </ul>
+ <h2>{lang:User comments}</h2>
+ </div>
+
+<form class="filter" action="{F_ACTION}" method="get">
+
+ <fieldset>
+ <legend>{lang:Filter}</legend>
+
+ <label>{lang:Keyword}<input type="text" name="keyword" value="{F_KEYWORD}" /></label>
+
+ <label>{lang:Author}<input type="text" name="author" value="{F_AUTHOR}" /></label>
+
+ <label>
+ {lang:Category}
+ <select name="cat">
+ <!-- BEGIN category -->
+ <option class="{category.CLASS}" {category.SELECTED} value="{category.VALUE}">{category.OPTION}</option>
+ <!-- END category -->
+ </select>
+ </label>
+
+ <label>
+ {lang:Since}
+ <select name="since">
+ <!-- BEGIN since_option -->
+ <option {since_option.SELECTED} value="{since_option.VALUE}">{since_option.CONTENT}</option>
+ <!-- END since_option -->
+ </select>
+ </label>
+
+ </fieldset>
+
+ <fieldset>
+
+ <legend>{lang:Display}</legend>
+
+ <label>
+ {lang:Sort by}
+ <select name="sort_by">
+ <!-- BEGIN sort_by_option -->
+ <option value="{sort_by_option.VALUE}" {sort_by_option.SELECTED} >{sort_by_option.CONTENT}</option>
+ <!-- END sort_by_option -->
+ </select>
+ </label>
+
+ <label>
+ {lang:Sort order}
+ <select name="sort_order">
+ <!-- BEGIN sort_order_option -->
+ <option value="{sort_order_option.VALUE}" {sort_order_option.SELECTED} >{sort_order_option.CONTENT}</option>
+ <!-- END sort_order_option -->
+ </select>
+ </label>
+
+ <label>
+ {lang:Number of items}
+ <select name="items_number">
+ <!-- BEGIN items_number_option -->
+ <option value="{items_number_option.VALUE}" {items_number_option.SELECTED} >{items_number_option.CONTENT}</option>
+ <!-- END items_option -->
+ </select>
+ </label>
+
+ </fieldset>
+
+ <p><input type="submit" name="submit" value="{lang:Filter and display}"></p>
+
+</form>
+
+<div class="navigationBar">{NAVBAR}</div>
+
+<div id="comments">
+
+ <!-- BEGIN comment -->
+ <div class="comment">
+ <a class="illustration" href="{comment.U_PICTURE}"><img src="{comment.TN_SRC}" /></a>
+ <p class="commentHeader"><span class="author">{comment.AUTHOR}</span> - <span class="date">{comment.DATE}</span></p>
+ <blockquote>{comment.CONTENT}</blockquote>
+ <hr class="separation">
+ </div>
+
+ <!-- END comment -->
+
+</div>
+
+</div> <!-- content -->
diff --git a/template/yoga/content.css b/template/yoga/content.css
new file mode 100644
index 000000000..ec060a3a0
--- /dev/null
+++ b/template/yoga/content.css
@@ -0,0 +1,175 @@
+/* $Id$ */
+#content {
+ margin-left: 24em;
+ margin-right: 1em;
+ margin-bottom: 1em; /* when it's longer than menu bar */
+}
+BODY#theAdminPage #content {
+ margin-left: 14em;
+}
+
+BODY#theCommentsPage #content,
+BODY#theRegisterPage #content,
+BODY#theIdentificationPage #content,
+BODY#theProfilePage #content,
+BODY#theSearchPage #content,
+BODY#theAboutPage #content,
+BODY#thePopuphelpPage #content,
+BODY#theNotificationPage #content
+{
+ margin: 1em;
+}
+
+#content H2 {
+ margin-bottom: 1ex;
+}
+
+#content H3 {
+ margin-bottom: 1ex;
+}
+
+#content UL.thumbnails {
+ margin: 0;
+ padding: 0;
+ list-style: none;
+ text-align: center; /* to center the whole collection in #content */
+}
+#content UL.thumbnails LI { display: inline }
+
+#content UL.thumbnails SPAN {
+ margin: 0 5px 5px 5px;
+ /*width: 130px; 128px + 2 * 1px if the SPAN has a border of 1px */
+ width: 128px; /* we can use the same size as well */
+ display: table-cell; display: inline-table; display: inline-block;
+ vertical-align: top; /* OK with Opera and IE6 not Geko */
+ text-align: center; /* to center the thumbnail and legend in Geko/Opera */
+ font-size: 80%;
+}
+#content UL.thumbnails SPAN SPAN {
+ margin: 0; /* important reset the margins */
+ border: 1px solid #aaaaaa;
+ width: 128px; /* fixed size again */
+ height: 128px; /* fixed size again */
+ display: table-cell; /* block prevents vertical-align here */
+ vertical-align: middle; /* Ok with Opera and Geko not IE6 */
+}
+#content UL.thumbnails SPAN.wrap {
+ border: none;
+ height: auto; /* important for vertical centering */
+ display: block; /* important */
+ overflow: hidden; /* everridden by specific IE6 rule below */
+ margin-top: auto; /* to make vertical-align work in Geko and Opera */
+ margin-bottom: auto; /* to make vertical-align work in Geko and Opera */
+}
+#content UL.thumbnails IMG {
+ margin-bottom: -4px; /* why ??? something wrong with Geko and Opera ignored by IE6*/
+}
+/* fix Geko's lack of good willing in vertical-align: top */
+/* Too dirty : have to find something better */
+/*#content UL.thumbnails>LI>SPAN{*/
+/* height: 170px;*/ /* unfortunately min-height doesn't work here */
+/*}*/
+
+/* fix IE with another layout */
+* html #content UL.thumbnails SPAN {
+ overflow: hidden; /* keep it there: not needed by Geko, buggy with Opera */
+}
+* html #content UL.thumbnails SPAN SPAN {
+ position: relative;
+}
+* html #content UL.thumbnails SPAN.wrap {
+ overflow: visible;
+ position: absolute;
+ top: 50%;
+ left: 0px; /* same as "#content UL.thumbnails SPAN SPAN { padding:" if any*/
+}
+* html #content UL.thumbnails IMG {
+ position: relative;
+ top: -50%;
+}
+
+
+#content .navigationBar, #content .additional_info {
+ margin: 10px 0;
+ text-align: center;
+}
+
+#content .pageNumberSelected {
+ font-style: italic;
+}
+
+#content .additional_info {
+ font-size: 110%;
+}
+
+#content FORM {
+ text-align: left;
+}
+
+/* content defaults */
+#content dl, dd { margin: 10px; }
+#content dt {
+ margin-bottom: 5px;
+ font-style: italic;
+ font-size: 110%;
+}
+
+/* actions */
+ul.categoryActions {
+ text-align: center;
+ margin: 1px 1px 0 0;
+ padding: 0;
+ text-indent: 0;
+}
+
+#content div.titrePage ul.categoryActions {
+ float: right;
+}
+
+#content ul.categoryActions>li {
+ display: inline;
+}
+
+#content ul.categoryActions a img, ul.categoryActions a {
+ border: none;
+}
+
+/* User comments */
+
+#content DIV.comment {
+ margin: 5px;
+ border: 1px solid gray;
+ min-height: 150px; /* maximum thumbnail height */
+}
+
+#content DIV.comment > A.illustration {
+ display: block;
+ position: absolute;
+ margin: 5px;
+}
+
+#content DIV.comment > A.illustration IMG {
+ border: 1px solid gray;
+}
+
+#content DIV.comment P.commentHeader {
+ text-align: right;
+ margin: 0.5em 0.5em 0 0;
+}
+
+#content DIV.comment UL.actions {
+ text-align: center;
+ margin: 0.2em;
+}
+
+#content DIV.comment > UL.actions > LI {
+ display: inline;
+}
+
+#content DIV.comment BLOCKQUOTE {
+ margin: 1em 1em 1em 150px; /* margin-left corresponds to maximum thumbnail width */
+ border: 1px solid #d3d3d3;
+ border-left: 2px solid gray;
+ padding: 0.5em;
+}
+
diff --git a/template/yoga/dclear.css b/template/yoga/dclear.css
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/template/yoga/dclear.css
diff --git a/template/yoga/default-colors.css b/template/yoga/default-colors.css
new file mode 100644
index 000000000..0e52b2eba
--- /dev/null
+++ b/template/yoga/default-colors.css
@@ -0,0 +1,161 @@
+BODY {
+ color:#696969; /* dimgray */
+ /*color:#111111;*/
+ background: #ffffff;
+}
+
+H1 {
+ color: #696969;
+ background: transparent;
+}
+
+H2 {
+ color: #696969;
+ background: #d3d3d3;
+}
+
+H3 {
+ color: #696969;
+ background: #ffffff;
+}
+
+A {
+ color: #005e89;
+ background: transparent;
+}
+
+A:hover {
+ color: #858460;
+}
+
+
+.pleaseNote {
+ background: #9c9c9c;
+ color: #ffff99;
+ padding: 1ex;
+ font-weight: bold;
+}
+
+#imageHeaderBar {
+ background: #d3d3d3;
+}
+#imageToolBar {
+ background: #eeeeee;
+ border: 1px solid #d3d3d3;
+}
+#imageToolBar * {
+ background: inherit;
+}
+
+#imageToolBar A, #imageToolBar A:hover {
+ border-bottom: none;
+}
+#imageToolBar A:hover {
+ background: #d3d3d3;
+}
+
+#theImage IMG {
+ border: 3px solid #d3d3d3;
+}
+A.navThumb, A.navThumb:hover {
+ border-bottom: none;
+}
+
+
+#content {
+ border: 1px solid #d3d3d3;
+ background:#eeeeee;
+}
+
+#content H2 {
+ text-align: left;
+}
+
+#content H3 {
+ text-align: center;
+}
+
+#content UL.thumbnail IMG {
+ border: 1px solid #a0a0a0;
+}
+
+/* So that non-links are slightly greyed out */
+#content .navigationBar {
+ color: #696969;
+}
+#content .pageNumberSelected {
+ color: #000000;
+}
+
+
+#menubar DL {
+ border: 1px solid #d3d3d3;
+ background: #eeeeee;
+}
+
+#menubar DT {
+ color: #696969;
+ background: #d3d3d3;
+}
+
+#menubar DD {
+ background:#eeeeee;
+}
+
+
+#comments BLOCKQUOTE {
+ background: #eeeeee;
+ border-left: 2px solid #696969;
+}
+
+/* Tables & forms */
+.throw {
+ background-color:white;
+}
+input, select, textarea {
+ color:black;
+ background-color: lightgrey;
+ border: 1px solid gray;
+}
+
+#errors { /* Errors display */
+ color: red;
+ background-color: #ffe1e1;
+ font-weight: bold;
+ text-align: left;
+ margin: 5px;
+ border: 1px solid red;
+ background-image: url(admin/images/errors.png);
+ background-repeat: no-repeat;
+ background-position: top right;
+ padding: 10px 50px 10px 10px;
+}
+
+#errors ul li
+{
+ font-weight: normal;
+}
+
+/**
+ * Informations box in administration
+ */
+#infos {
+ text-align: left;
+ background-color: palegreen;
+ background-image: url(admin/images/infos.png);
+ background-repeat: no-repeat;
+ background-position: top right;
+ color: darkgreen;
+ font-weight: bold;
+ margin: 5px;
+ border:1px solid gray;
+ padding: 10px 50px 10px 10px;
+}
+
+LEGEND {
+ font-style: italic;
+}
+
+FIELDSET {
+ border: 1px solid gray;
+}
diff --git a/template/yoga/default-layout.css b/template/yoga/default-layout.css
new file mode 100644
index 000000000..7f1a856ec
--- /dev/null
+++ b/template/yoga/default-layout.css
@@ -0,0 +1,267 @@
+
+@import "menubar.css";
+@import "content.css";
+@import "image.css";
+@import "popuphelp.css";
+
+/* $Id$ */
+
+/* * { padding: 0 !important; margin: 0 !important; } */
+
+BODY {
+ margin: 5px;
+ padding: 0;
+ font-size: 100%;
+ font-family: 'Trebuchet MS', Helvetica, Arial, sans-serif;
+ text-align: center; /* be nice to IE5 */
+}
+
+#the_page {
+ /* Just in case another template needs an inner frame */
+}
+
+H1 {
+ text-align: center;
+ font-size: 150%;
+ font-weight: bold;
+ padding: 0; margin: 1ex 0 2ex 0;
+}
+
+H2 {
+ margin: 0;
+ padding: 5px;
+ text-align: left;
+ font-size: 120%;
+}
+
+A {
+ text-decoration:none;
+ border-bottom: 1px dotted #005e89;
+}
+A:hover {
+ border-bottom: 1px solid #858460;
+}
+
+IMG {
+ border: none;
+}
+
+HR.separation {
+ visibility: hidden;
+ clear: both;
+}
+
+#copyright {
+ clear: both;
+ font-size: 83%;
+ text-align: center;
+ margin: 0 0 10px 0;
+}
+
+/** General defaults **/
+ul, dl, li { text-align: left;}
+/* for debugging purpose */
+pre { text-align:left; }
+
+/** forms **/
+
+form { padding: 0em; }
+
+/* form row are dl instead of table rows */
+form dl {
+ text-align: left; /* must set it there otherwise IE render dl.biglabel dt incorectly */
+ margin-top: 0;
+ margin-bottom: 0;
+ font-size: 100%; /* TO DO : alignement pb in Opera !!!*/
+}
+form dt {
+ float: left;
+ /*text-align: left;*/
+ width: 60%;
+ margin-top: 0.25em;
+ margin-bottom: 0.25em;
+}
+form dd {
+ /*text-align: left;*/
+ /*margin-top: 0.5em;*/
+ margin:0;
+ padding:0;
+ margin-top: 0.25em;
+ margin-bottom: 0.25em;
+}
+/* we must use one dl.biglabel per <dt><dl> because of positionning */
+form dl.biglabel {
+ position: relative; /* to allow position: absolute in dd*/
+}
+form dl.biglabel dt {
+ float: none;
+}
+
+form dl.biglabel dd {
+ /*float: right; do not whant to float ????*/
+ /*width: 60%;*/
+ position: absolute;
+ top: 0;
+ left: 60%; /* same as form dt width */
+}
+form dl.biglabel dd { padding-left:2px;} /* IE */
+form dl.biglabel>dd { padding-left:0;} /* other browsers */
+
+form p {
+ text-align: center;
+ margin-top: 2em;
+ margin-bottom: 2em;
+}
+.small {
+ font-size: 80%;
+}
+
+textarea.description {
+ height: 100px;
+ width: 500px;
+ overflow: auto;
+}
+select.categoryList {
+ width: 400px;
+}
+
+/** go to an admin.css ? **/
+
+.table2 {
+ border: 1px solid black;
+ margin: 1em auto;
+ padding: 0;
+}
+
+.table2 TD, .table2 TH {
+ padding: 0 1em;
+}
+
+form#add_virtual p { text-align: left; }
+form#categoryOrdering p {
+ text-align: left;
+ margin-top: 1em;
+ margin-bottom: 1em;
+}
+form#categoryOrdering>ul {
+ list-style: none;
+ padding: 0;
+ margin: 0;
+}
+
+form#categoryOrdering>ul>li {
+ border: 1px solid grey;
+ padding: 0px 5px;
+ margin-bottom: 5px;
+}
+
+form#categoryOrdering ul.categoryActions {
+ float: right;
+ margin-top: 5px;
+}
+
+form#cat_modify table { width: auto; }
+
+/**
+ * Filter forms are displayed label by label with the input (or select...)
+ * below the label
+ */
+FIELDSET {
+ padding: 1em;
+ margin: 1em;
+}
+
+FORM.filter FIELDSET LABEL {
+ display: block;
+ float: left;
+ width: auto;
+ margin-right: 10px;
+ padding: 0;
+}
+
+FORM.filter FIELDSET LABEL INPUT, FORM.filter FIELDSET LABEL SELECT {
+ display: block;
+ margin: 0.5em 0;
+}
+
+FORM.filter FIELDSET P, FORM.filter FIELDSET INPUT {
+ clear: left;
+ display: block;
+}
+
+FORM.filter INPUT[type="submit"] {
+ margin-top: 1em;
+}
+
+FORM.properties UL {
+ list-style-type: none;
+ margin: 0;
+ padding: 0;
+}
+
+FORM.properties LI {
+ margin-bottom: 0.5em;
+ padding: 0;
+ line-height: 1.8em;
+}
+
+FORM.properties LABEL {
+ float: left;
+ width: 50%;
+ text-align: right;
+ margin: 0;
+ padding: 0 0.5em 0 0;
+}
+
+FORM.properties LABEL.mandatory {
+ font-weight: bold;
+}
+
+FORM.properties .focus {
+ background-color: whitesmoke;
+}
+
+FORM.properties .nofocus {
+ background-color: lightgrey; /* must be the same as input background-color */
+}
+
+FIELDSET.elementEdit A {
+ display: block;
+ float: right;
+}
+
+TABLE.doubleSelect {
+ text-align: center;
+ margin: 0 auto;
+}
+
+TABLE.doubleSelect TD {
+ padding: 0 5px;
+}
+
+FORM#categoryPermissions LI {
+ display:inline;
+ white-space: nowrap;
+}
+
+#theHeader {
+}
+
+#theHeader H1 {
+ margin-bottom: 0.5em;
+}
+
+#theHeader P {
+ margin-top: 0;
+ padding: 0;
+}
+
+BODY#theAdminPage #theHeader P {
+ display: none;
+}
+
+BODY#thePopuphelpPage #copyright {
+ color: green;
+ display: none;
+}
+
diff --git a/template/yoga/footer.tpl b/template/yoga/footer.tpl
new file mode 100644
index 000000000..d4c18aff8
--- /dev/null
+++ b/template/yoga/footer.tpl
@@ -0,0 +1,21 @@
+<div id="copyright">
+ <!-- BEGIN debug -->
+ {L_GEN_TIME} {debug.TIME} ({debug.NB_QUERIES} {L_SQL_QUERIES_IN} {debug.SQL_TIME}) -
+ <!-- END debug -->
+
+ <!-- Please, do not remove this copyright. If you really want to,
+ contact us on http://phpwebgallery.net to find a solution on how
+ to show the origin of the script...-->
+
+ {L_POWERED_BY} <a href="http://www.phpwebgallery.net" class="back">PhpWebGallery</a>
+ {VERSION}
+ <!-- BEGIN contact -->
+ - {L_SEND_MAIL}
+ <a href="mailto:{contact.MAIL}?subject={L_TITLE_MAIL}">{lang:Webmaster}</a>
+ <!-- END contact -->
+
+</div> <!-- copyright -->
+</div> <!-- the_page -->
+
+</body>
+</html>
diff --git a/template/yoga/header.tpl b/template/yoga/header.tpl
new file mode 100644
index 000000000..5f9b51c30
--- /dev/null
+++ b/template/yoga/header.tpl
@@ -0,0 +1,30 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+"http://www.w3.org/TR/html4/strict.dtd">
+<html lang="{LANG}" dir="{DIR}">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset={CONTENT_ENCODING}">
+<!-- BIG FIX ME BELOW (paths) -->
+<link rel="stylesheet" type="text/css" href="template/yoga/default-layout.css">
+<link rel="stylesheet" type="text/css" href="template/yoga/default-colors.css">
+<link rel="stylesheet" type="text/css" media="print" href="template/yoga/print.css">
+<!-- AN OTHER FIX ME -->
+<style type="text/css">
+.notDoneYet {
+ background: yellow;
+ color: red;
+}
+</style>
+<!-- BEGIN refresh -->
+<meta http-equiv="refresh" content="{REFRESH_TIME};url={U_REFRESH}">
+<!-- END refresh -->
+<title>{PAGE_TITLE}</title>
+<script type="text/javascript" src="include/scripts.js"></script>
+</head>
+
+<body id="{BODY_ID}">
+<div id="the_page">
+
+<div id="theHeader">
+ <h1>{GALLERY_TITLE}</h1>
+ <p>{GALLERY_DESCRIPTION}</p>
+</div>
diff --git a/template/yoga/identification.tpl b/template/yoga/identification.tpl
new file mode 100644
index 000000000..d120524d0
--- /dev/null
+++ b/template/yoga/identification.tpl
@@ -0,0 +1,53 @@
+<!-- $Id$ -->
+<div id="content">
+
+ <div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_REGISTER}" title="{lang:Create a new account}"><img src="./template/yoga/theme/register.png" alt="{lang:register}"/></a></li>
+ <li><a href="{U_HOME}" title="{lang:Go through the gallery as a visitor}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li>
+ </ul>
+ <h2>{lang:Identification}</h2>
+ </div>
+
+ <!-- BEGIN errors -->
+ <div class="errors">
+ <ul>
+ <!-- BEGIN error -->
+ <li>{errors.error.ERROR}</li>
+ <!-- END error -->
+ </ul>
+ </div>
+ <!-- END errors -->
+
+<form action="{F_LOGIN_ACTION}" method="post" class="properties">
+ <fieldset>
+ <legend>{lang:Connection settings}</legend>
+
+ <ul>
+ <li>
+ <label for="username">{L_USERNAME}</label>
+ <input class="login" type="text" name="username" id="username" size="25" maxlength="40" value="{USERNAME}">
+ </li>
+
+ <li>
+ <label for="password">{L_PASSWORD}</label>
+ <input class="login" type="password" name="password" id="password" size="25" maxlength="25">
+ </li>
+
+ <!-- BEGIN remember_me -->
+ <li>
+ <label>{L_REMEMBER_ME}</label>
+ <input type="checkbox" name="remember_me" value="1">
+ </li>
+ <!-- END remember_me -->
+ </ul>
+ </fieldset>
+
+ <p><input type="submit" name="login" value="{L_LOGIN}"></p>
+</form>
+
+ <p>
+ <a href="{U_REGISTER}"><img src="template/yoga/theme/register.png" alt=""> {L_REGISTER}</a>
+ </p>
+
+</div> <!-- content -->
diff --git a/template/yoga/image.css b/template/yoga/image.css
new file mode 100644
index 000000000..74f9e1a66
--- /dev/null
+++ b/template/yoga/image.css
@@ -0,0 +1,129 @@
+#imageHeaderBar {
+ padding: 2px 10px;
+ margin: 4px 0;
+}
+#imageHeaderBar .browsePath { float: left; }
+#imageHeaderBar .imageNumber { float: right; }
+
+#imageHeaderBar H1 {
+ margin: 1ex 0; /* override default-layout for less bottom-margin */
+ clear: both;
+}
+
+#imageToolBar {
+ text-align: left;
+ position: relative;
+ clear: both;
+ margin: 4px 0; padding: 0;
+}
+
+/* Moi, je preferais les boutons "imgPrec" et "imgSuiv" au milieu, au-dessus
+de l'image...
+
+#imageToolBar IMG, #imageToolBar A {
+ display: inline;
+ border: none; margin: auto; padding: 0;
+}
+
+#imageToolBar .randomButtons {
+ position: absolute;
+ left: 0;
+}
+#imageToolBar .randomButtons IMG {
+ padding: 0 4px; /* au pire: 3 * (4+24+4) = 96 < 100 * /
+}
+
+#imageToolBar .prevNnext {
+ text-align: center;
+}
+#imageToolBar .prevNnext IMG {
+ padding: 0 100px;
+}
+*/
+
+#imageToolBar {
+ height: 28px;
+}
+#imageToolBar A, #imageToolBar IMG {
+ display: block;
+ border: none;
+ margin: 0; padding: 0;
+}
+#imageToolBar A { width: 48px; }
+#imageToolBar IMG { margin: 2px auto; }
+#imageToolBar .randomButtons A { float: left; }
+#imageToolBar .navButtons A { float: right; }
+
+#theImage {
+ clear: left;
+}
+
+#theImage>IMG {
+ display: block;
+ margin: 0 auto;
+}
+
+.navThumb.prev {
+ float: left;
+}
+
+.navThumb.next {
+ float: right;
+}
+
+TABLE.infoTable {
+ margin: auto;
+}
+TABLE.infoTable .value {
+ text-align: left;
+}
+
+TABLE.infoTable .label {
+ font-weight: bold;
+ text-align: right;
+ padding-right: 0.5em;
+}
+
+TABLE.infoTable TD.value UL {
+ margin: 0;
+ padding: 0 0 0 1.5em;
+ list-style-type: square;
+}
+
+#comments {
+ text-align: left;
+}
+
+#comments .comment {
+ margin: 3ex 0;
+}
+
+#comments H2 {
+ margin: 1ex 0;
+}
+
+#comments P {
+ margin: 0;
+}
+
+#comments .author {
+ font-weight: bold;
+}
+
+#comments BLOCKQUOTE {
+ margin: 1ex 0 1ex 2em;
+ padding: 4px 4px 0 /* IE bug */ 4px;
+}
+
+#comments BLOCKQUOTE P {
+ margin: 0;
+ padding-bottom: 4px; /* IE bug follow-up */
+}
+#comments BLOCKQUOTE P+P {
+ margin-top: 1ex;
+}
+
+#comments P.userCommentDelete {
+ float: right;
+ margin: 0;
+}
diff --git a/template/yoga/images/logo.jpg b/template/yoga/images/logo.jpg
new file mode 100644
index 000000000..73c8011ea
--- /dev/null
+++ b/template/yoga/images/logo.jpg
Binary files differ
diff --git a/template/yoga/images/php_sqreuil_artistes.gif b/template/yoga/images/php_sqreuil_artistes.gif
new file mode 100755
index 000000000..32fffc90b
--- /dev/null
+++ b/template/yoga/images/php_sqreuil_artistes.gif
Binary files differ
diff --git a/template/yoga/install.tpl b/template/yoga/install.tpl
new file mode 100644
index 000000000..78b9e1836
--- /dev/null
+++ b/template/yoga/install.tpl
@@ -0,0 +1,203 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset={T_CONTENT_ENCODING}" />
+<meta http-equiv="Content-script-type" content="text/javascript" />
+<meta http-equiv="Content-Style-Type" content="text/css" />
+<title>PhpWebGallery {RELEASE}</title>
+<style type="text/css">
+a, a:hover {
+color:#006699;
+}
+
+body,table,input,form,select {
+font-family:arial,verdana,sans-serif;
+font-size:12px;
+color:#000000;
+text-align:left;
+}
+table
+{
+border-collapse:separate;
+}
+body {
+background-color:#E5E5E5;
+margin:5px;
+}
+
+.contenucellule {
+background-color:#EEEEEE;
+border:2px solid #006699;
+}
+
+th {
+font-weight:bold;
+background-color:#D3DCE3;
+margin-bottom:10px;
+text-align: center;
+}
+td.row1 {
+background-color:#E6E4E4;
+}
+td.row2
+{
+background-color:#E8E8E8;
+}
+
+.info {
+color:darkblue;
+text-align:center;
+}
+.errors {
+ text-align:left;
+ margin:25px;
+ background-color:#ffe1e1;
+ border:1px solid red;
+ color:black;
+}
+.grostitre {
+ text-align : center;
+ font-size : 20px;
+ margin-bottom : 20px;
+}
+</style>
+</head>
+<body>
+ <table style="width:100%;height:100%">
+ <tr align="center" valign="middle">
+ <td>
+ <div class="grostitre">PhpWebGallery {RELEASE}</div>
+ <table class="table1">
+ <!-- BEGIN errors -->
+ <tr>
+ <td class="contenucellule" colspan="3">
+ <div class="errors">
+ <ul>
+ <!-- BEGIN error -->
+ <li>{errors.error.ERROR}</li>
+ <!-- END error -->
+ </ul>
+ </div>
+ </td>
+ </tr>
+ <!-- END errors -->
+ <!-- BEGIN infos -->
+ <tr>
+ <td class="contenucellule" colspan="3">
+ <div class="infos">
+ <ul>
+ <!-- BEGIN info -->
+ <li>{infos.info.INFO}</li>
+ <!-- END info -->
+ </ul>
+ </div>
+ </td>
+ </tr>
+ <!-- END infos -->
+ <tr>
+ <td class="contenucellule">
+
+<!-- BEGIN error_copy -->
+{L_ERR_COPY} :
+<br />-----------------------------------------------------<br />
+<div style="color:blue;">{error_copy.FILE_CONTENT}</div>
+-----------------------------------------------------<br />
+<!-- END error_copy -->
+<!-- BEGIN install -->
+<form method="POST" action="{F_ACTION}" name="install_form">
+ <table width="100%">
+ <tr>
+ <th colspan="3">{L_BASE_TITLE}</th>
+ </tr>
+ <tr>
+ <td width="30%">{L_LANG_TITLE}</td>
+ <td colspan="2" align="left">
+ {F_LANG_SELECT}
+ </td>
+ </tr>
+ <tr>
+ <th colspan="3">{L_DB_TITLE}</th>
+ </tr>
+ <tr>
+ <td colspan="3">&nbsp;</td>
+ </tr>
+ <tr>
+ <td>{L_DB_HOST}</td>
+ <td align=center><input type="text" name="dbhost" value="{F_DB_HOST}" /></td>
+ <td class="row2">{L_DB_HOST_INFO}</td>
+ </tr>
+ <tr>
+ <td>{L_DB_USER}</td>
+ <td align=center><input type="text" name="dbuser" value="{F_DB_USER}" /></td>
+ <td class="row2">{L_DB_USER_INFO}</td>
+ </tr>
+ <tr>
+ <td>{L_DB_PASS}</td>
+ <td align=center><input type="password" name="dbpasswd" value="" /></td>
+ <td class="row2">{L_DB_PASS_INFO}</td>
+ </tr>
+ <tr>
+ <td>{L_DB_NAME}</td>
+ <td align=center><input type="text" name="dbname" value="{F_DB_NAME}" /></td>
+ <td class="row2">{L_DB_NAME_INFO}</td>
+ </tr>
+ <tr>
+ <td>{L_DB_PREFIX}</td>
+ <td align=center><input type="text" name="prefix" value="{F_DB_PREFIX}" /></td>
+ <td class="row2">{L_DB_PREFIX_INFO}</td>
+ </tr>
+ <tr>
+ <td colspan="3">&nbsp;</td>
+ </tr>
+ <tr>
+ <th colspan="3">{L_ADMIN_TITLE}</th>
+ </tr>
+ <tr>
+ <td colspan="3">&nbsp;</td>
+ </tr>
+ <tr>
+ <td>{L_ADMIN}</td>
+ <td align="center"><input type="text" name="admin_name" value="{F_ADMIN}" /></td>
+ <td class="row2">{L_ADMIN_INFO}</td>
+ </tr>
+ <tr>
+ <td>{L_ADMIN_PASSWORD}</td>
+ <td align="center"><input type="password" name="admin_pass1" value="" /></td>
+ <td class="row2">{L_ADMIN_PASSWORD_INFO}</td>
+ </tr>
+ <tr>
+ <td>{L_ADMIN_CONFIRM_PASSWORD}</td>
+ <td align="center"><input type="password" name="admin_pass2" value="" /></td>
+ <td class="row2">{L_ADMIN_CONFIRM_PASSWORD_INFO}</td>
+ </tr>
+ <tr>
+ <td>{L_ADMIN_EMAIL}</td>
+ <td align="center"><input type="text" name="admin_mail" value="{F_ADMIN_EMAIL}" /></td>
+ <td class="row2">{L_ADMIN_EMAIL_INFO}</td>
+ </tr>
+ <tr>
+ <td colspan="3">&nbsp;</th>
+ </tr>
+ <tr>
+ <td colspan="3" align="center">
+ <input type="submit" name="install" value="{L_SUBMIT}" />
+ </td>
+ </tr>
+ </table>
+</form>
+<!-- END install -->
+
+<!-- BEGIN install_end -->
+<div class="infos_title">{L_END_TITLE}</div>
+<div style="padding:5px;">{L_END_MESSAGE}</div>
+<!-- END install_end -->
+
+ </td>
+ </tr>
+ </table>
+ <div style="text-align:center;margin:20px;">{L_INSTALL_HELP}</div>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html> \ No newline at end of file
diff --git a/template/yoga/menubar.css b/template/yoga/menubar.css
new file mode 100644
index 000000000..9f2b9c2a3
--- /dev/null
+++ b/template/yoga/menubar.css
@@ -0,0 +1,66 @@
+#menubar {
+ /* Do not put font-size: 90% here for it makes it harder to have correct
+ margin for contentarea */
+ float: left;
+ left: 0px;
+
+ width: 22em;
+ margin: 0 0 10px 1em;
+ padding: 0;
+ /* Fix against the "double margin of a floated item" IE bug */
+ /* Damned: that screws up top_navbar in opera 7.54/Linux! */
+ display: inline;
+ text-align: left; /* follow-up of the "be nice to IE5" rule */
+}
+
+BODY#theAdminPage #menubar {
+ width: 12em;
+}
+
+#menubar DL, #menubar DT, #menubar DD {
+ margin: 0; padding: 0; display: block;
+}
+
+/* H2 properties copied here */
+#menubar DT {
+ font-weight: bold; /* default for h2 */
+
+ margin: 0;
+ padding: 5px 10px;
+ font-size: 120%;
+
+ text-align: center;
+}
+
+#menubar UL,
+#menubar HR,
+#menubar FORM,
+#menubar P, /* ooh, careful... */
+#menubar .totalImages {
+ font-size: 92%;
+ margin: 10px 0 10px 10px;
+}
+#menubar UL {
+ list-style-type: square;
+ list-style-position: inside;
+ padding: 0 0 0 2px;
+}
+#menubar UL UL {
+ font-size: 100%;
+ margin-top: 0;
+}
+#menubar LI.selected {
+ font-weight: bold;
+}
+#menubar HR {
+ display: block;
+ margin: 10px auto;
+ width: 90%;
+}
+#menubar FORM P {
+ margin: 5px;
+ font-size: 100%;
+}
+#menubar INPUT {
+ text-indent: 2px;
+}
diff --git a/template/yoga/mimetypes/avi.png b/template/yoga/mimetypes/avi.png
new file mode 100644
index 000000000..065f0b282
--- /dev/null
+++ b/template/yoga/mimetypes/avi.png
Binary files differ
diff --git a/template/yoga/mimetypes/mp3.png b/template/yoga/mimetypes/mp3.png
new file mode 100644
index 000000000..afb7e1b0a
--- /dev/null
+++ b/template/yoga/mimetypes/mp3.png
Binary files differ
diff --git a/template/yoga/mimetypes/mpg.png b/template/yoga/mimetypes/mpg.png
new file mode 100644
index 000000000..f7dbd2388
--- /dev/null
+++ b/template/yoga/mimetypes/mpg.png
Binary files differ
diff --git a/template/yoga/mimetypes/ogg.png b/template/yoga/mimetypes/ogg.png
new file mode 100644
index 000000000..ead3f62c3
--- /dev/null
+++ b/template/yoga/mimetypes/ogg.png
Binary files differ
diff --git a/template/yoga/mimetypes/zip.png b/template/yoga/mimetypes/zip.png
new file mode 100644
index 000000000..1f08fe1a3
--- /dev/null
+++ b/template/yoga/mimetypes/zip.png
Binary files differ
diff --git a/template/yoga/notification.tpl b/template/yoga/notification.tpl
new file mode 100644
index 000000000..974967e62
--- /dev/null
+++ b/template/yoga/notification.tpl
@@ -0,0 +1,13 @@
+<div id="content">
+
+ <div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li>
+ </ul>
+ <h2>{lang:Notification}</h2>
+ </div>
+
+ <p>{lang:The RSS notification feed provides notification on news from this website : new pictures, updated categories, new comments. Use a RSS feed reader.}</p>
+
+ <p><a href="{FEED_URL}">{lang:RSS feed}</a></p>
+</div>
diff --git a/template/yoga/picture.tpl b/template/yoga/picture.tpl
new file mode 100644
index 000000000..98704466c
--- /dev/null
+++ b/template/yoga/picture.tpl
@@ -0,0 +1,189 @@
+<!-- BEGIN information -->
+<div class="pleaseNote">{information.INFORMATION}</div>
+<!-- END information -->
+
+<div id="imageHeaderBar">
+ <div class="browsePath"><a href="{U_HOME}">{L_HOME}</a>{LEVEL_SEPARATOR}{CATEGORY}</div>
+ <div class="imageNumber">{PHOTO}</div>
+ <h1>{TITLE}</h1>
+</div>
+
+<div id="imageToolBar">
+
+<div class="randomButtons">
+ <a href="{U_SLIDESHOW}" title="{L_SLIDESHOW}"><img src="template/yoga/theme/slideshow.png" alt="{L_SLIDESHOW}"></a>
+ <a href="{U_METADATA}" title="{L_PICTURE_METADATA}"><img src="template/yoga/theme/metadata.png" alt="{L_PICTURE_METADATA}"></a>
+<!-- BEGIN representative -->
+ <a href="{representative.URL}" title="{lang:set as category representative}"><img src="template/yoga/theme/representative.png" alt="{lang:representative}" /></a>
+<!-- END representative -->
+<!-- BEGIN favorite -->
+ <a href="{favorite.U_FAVORITE}" title="{favorite.FAVORITE_HINT}"><img src="{favorite.FAVORITE_IMG}" alt="{favorite.FAVORITE_ALT}"></a>
+<!-- END favorite -->
+<!-- BEGIN download -->
+ <a href="{download.U_DOWNLOAD}" title="{L_DOWNLOAD}"><img src="template/yoga/theme/save.png" alt="{L_DOWNLOAD}"></a>
+<!-- END download -->
+<!-- BEGIN admin -->
+ <a href="{U_ADMIN}" title="{L_ADMIN}"><img src="template/yoga/theme/preferences.png" alt="{L_ADMIN}"></a>
+<!-- END admin -->
+<!-- BEGIN caddie -->
+ <a href="{caddie.URL}" title="{lang:add to caddie}"><img src="./template/default/theme/caddie_add.png" alt="{lang:caddie}"/></a>
+<!-- END caddie -->
+</div>
+
+<div class="navButtons">
+<!-- BEGIN next -->
+ <a class="navButton next" href="{next.U_IMG}" title="{L_NEXT_IMG}{next.TITLE_IMG}"><img src="template/yoga/theme/right.png" alt="next"></a>
+<!-- END next -->
+ <a class="navButton up" href="{U_UP}" title="{L_UP_HINT}"><img src="template/yoga/theme/up.png" alt="{L_UP_ALT}"></a>
+<!-- BEGIN previous -->
+ <a class="navButton prev" href="{previous.U_IMG}" title="{L_PREV_IMG}{previous.TITLE_IMG}"><img src="template/yoga/theme/left.png" alt="previous"></a>
+<!-- END previous -->
+</div>
+
+</div> <!-- imageToolBar -->
+
+<div id="theImage">
+<!-- BEGIN high -->
+<a href="javascript:phpWGOpenWindow('{high.U_HIGH}','{high.UUID}','scrollbars=yes,toolbar=yes,status=yes,resizable=yes,width={high.WIDTH_IMG},height={high.HEIGHT_IMG}')">
+<!-- END high -->
+ <img src="{SRC_IMG}" style="width:{WIDTH_IMG}px;height:{HEIGHT_IMG}px;" alt="{ALT_IMG}">
+<!-- BEGIN high -->
+</a>
+ <p>{L_PICTURE_HIGH}</p>
+<!-- END high -->
+<!-- BEGIN legend -->
+<p>{legend.COMMENT_IMG}</p>
+<!-- END legend -->
+<!-- BEGIN stop_slideshow -->
+<p>
+ [ <a href="{stop_slideshow.U_SLIDESHOW}">{L_STOP_SLIDESHOW}</a> ]
+</p>
+<!-- END stop_slideshow -->
+</div>
+
+<!-- BEGIN previous -->
+<a class="navThumb prev" href="{previous.U_IMG}" title="{L_PREV_IMG}{previous.TITLE_IMG}">
+ <img src="{previous.IMG}" class="thumbLink" style="margin-right:10px;margin-left:5px;" alt="{previous.TITLE_IMG}">
+</a>
+<!-- END previous -->
+<!-- BEGIN next -->
+<a class="navThumb next" href="{next.U_IMG}" title="{L_NEXT_IMG}{next.TITLE_IMG}">
+ <img src="{next.IMG}" alt="{next.TITLE_IMG}">
+</a>
+<!-- END next -->
+
+<table class="infoTable" summary="Some info about this picture">
+ <tr>
+ <td class="label">{lang:Author}</td>
+ <td class="value">{INFO_AUTHOR}</td>
+ </tr>
+ <tr>
+ <td class="label">{lang:Created on}</td>
+ <td class="value">{INFO_CREATION_DATE}</td>
+ </tr>
+ <tr>
+ <td class="label">{lang:Registered on}</td>
+ <td class="value">{INFO_AVAILABILITY_DATE}</td>
+ </tr>
+ <tr>
+ <td class="label">{lang:Dimensions}</td>
+ <td class="value">{INFO_DIMENSIONS}</td>
+ </tr>
+ <tr>
+ <td class="label">{lang:File}</td>
+ <td class="value">{INFO_FILE}</td>
+ </tr>
+ <tr>
+ <td class="label">{lang:Filesize}</td>
+ <td class="value">{INFO_FILESIZE}</td>
+ </tr>
+ <tr>
+ <td class="label">{lang:Keywords}</td>
+ <td class="value">{INFO_KEYWORDS}</td>
+ </tr>
+ <tr>
+ <td class="label">{lang:Categories}</td>
+ <td class="value">
+ <ul>
+ <!-- BEGIN category -->
+ <li>{category.LINE}</li>
+ <!-- END category -->
+ </ul>
+ </td>
+ </tr>
+ <tr>
+ <td class="label">{lang:Visits}</td>
+ <td class="value">{INFO_VISITS}</td>
+ </tr>
+ <!-- BEGIN info_rate -->
+ <tr>
+ <td class="label">{lang:Average rate}</td>
+ <td class="value">{info_rate.CONTENT}</td>
+ </tr>
+ <!-- END info_rate -->
+</table>
+
+<!-- BEGIN metadata -->
+<table class="infoTable" summary="Some more (technical) info about this picture">
+ <!-- BEGIN headline -->
+ <tr>
+ <th colspan="2">{metadata.headline.TITLE}</th>
+ </tr>
+ <!-- END headline -->
+ <!-- BEGIN line -->
+ <tr>
+ <td class="label">{metadata.line.KEY}</td>
+ <td class="value">{metadata.line.VALUE}</td>
+ </tr>
+ <!-- END line -->
+</table>
+<!-- END metadata -->
+
+<!-- BEGIN rate -->
+<p>
+{rate.SENTENCE} :
+<!-- BEGIN rate_option -->
+{rate.rate_option.SEPARATOR} <a href="{rate.rate_option.URL}">{rate.rate_option.OPTION}</a>
+<!-- END rate_option -->
+</p>
+<!-- END rate -->
+
+<hr class="separation">
+
+<!-- BEGIN comments -->
+<div id="comments">
+<h2>[{comments.NB_COMMENT}] {L_COMMENT_TITLE}</h2>
+
+<div class="navigationBar">{comments.NAV_BAR}</div>
+
+<!-- BEGIN comment -->
+<div class="comment">
+ <!-- BEGIN delete -->
+ <p class="userCommentDelete">
+ <a href="{comments.comment.delete.U_COMMENT_DELETE}" title="{L_DELETE_COMMENT}">
+ <img src="template/clear/theme/delete.gif" style="border:none;vertical-align:middle; margin-left:5px;" alt="[{L_DELETE}]"/>
+ </a>
+ </p>
+ <!-- END delete -->
+ <p class="commentInfo"><span class="author">{comments.comment.COMMENT_AUTHOR}</span> - {comments.comment.COMMENT_DATE}</p>
+ <blockquote>{comments.comment.COMMENT}</blockquote>
+</div>
+<!-- END comment -->
+
+<!-- BEGIN add_comment -->
+<h2>{L_ADD_COMMENT}</h2>
+<form method="post" action="{U_ADD_COMMENT}">
+ <!-- BEGIN author_field -->
+<p><label>{L_AUTHOR}:<input type="text" name="author"></label>
+ <!-- END author_field -->
+ <!-- BEGIN author_known -->
+ <input type="hidden" name="author" value="{comments.add_comment.author_known.KNOWN_AUTHOR}">
+ <!-- END author_known -->
+<p><label>{L_COMMENT}:
+<textarea name="content" rows="7" style="width:100%;"></textarea></label>
+<p><input type="submit" value="{L_SUBMIT}">
+</form>
+ <!-- END add_comment -->
+<!-- END comments -->
+
+</div>
diff --git a/template/yoga/popuphelp.css b/template/yoga/popuphelp.css
new file mode 100644
index 000000000..4c73d212d
--- /dev/null
+++ b/template/yoga/popuphelp.css
@@ -0,0 +1,34 @@
+BODY#thePopuphelpPage #copyright {
+ display: none;
+}
+
+BODY#thePopuphelpPage #theHeader P {
+ display: none;
+}
+
+BODY#thePopuphelpPage #content P {
+ text-align: justify;
+ padding: 0.5em;
+}
+
+BODY#thePopuphelpPage #content OL LI,
+BODY#thePopuphelpPage #content UL LI
+{
+ margin-bottom: 0.5em;
+}
+
+BODY#thePopuphelpPage #content SPAN.pwgScreen {
+ border-bottom: 1px dotted black;
+}
+
+BODY#thePopuphelpPage #content SPAN.filename:before {
+ content: "[";
+}
+
+BODY#thePopuphelpPage #content SPAN.filename:after {
+ content: "]";
+}
+
+BODY#thePopuphelpPage P#pageBottomActions A {
+ border: none;
+}
diff --git a/template/yoga/popuphelp.tpl b/template/yoga/popuphelp.tpl
new file mode 100644
index 000000000..23390c936
--- /dev/null
+++ b/template/yoga/popuphelp.tpl
@@ -0,0 +1,5 @@
+<div id="content">
+{HELP_CONTENT}
+</div> <!-- content -->
+
+<p id="pageBottomActions"><a href="#" onclick="window.close();" title="{lang:Close this window}"><img src="template/yoga/theme/exit.png" alt="close"></a></p>
diff --git a/template/yoga/print.css b/template/yoga/print.css
new file mode 100644
index 000000000..79a0aaa2e
--- /dev/null
+++ b/template/yoga/print.css
@@ -0,0 +1,13 @@
+#menubar, #categoryContent .navigationBar, #imageToolBar, .navThumb, TABLE.infoTable, #add_a_comment {
+ display: none;
+}
+
+BODY {
+ margin: 0;
+ color: #000000;
+ background: #ffffff;
+}
+
+#categoryContent {
+ margin: 0;
+}
diff --git a/template/yoga/profile.tpl b/template/yoga/profile.tpl
new file mode 100644
index 000000000..400078474
--- /dev/null
+++ b/template/yoga/profile.tpl
@@ -0,0 +1,128 @@
+<div id="content">
+
+<!-- BEGIN errors -->
+<div class="errors">
+ <ul>
+ <!-- BEGIN error -->
+ <li>{errors.error.ERROR}</li>
+ <!-- END error -->
+ </ul>
+</div>
+<!-- END errors -->
+
+ <div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_RETURN}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li>
+ </ul>
+ <h2>{lang:Profile}</h2>
+ </div>
+
+<form method="post" name="profile" action="{F_ACTION}" id="profile" class="properties">
+
+ <input type="hidden" name="userid" value="{USERID}" />
+
+ <fieldset>
+ <legend>{L_REGISTRATION_INFO}</legend>
+
+ <ul>
+ <li>
+ <label>{lang:Username}</label>
+ <strong>{USERNAME}</strong>
+ </li>
+
+ <li>
+ <label for="mail_address">{lang:Email address}</label>
+ <input type="text" name="mail_address" id="mail_address" value="{EMAIL}" onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+
+ <li>
+ <label for="password">{L_CURRENT_PASSWORD}</label>
+ <input type="password" name="password" id="password" value="" onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+
+ <li>
+ <label for="use_new_pwd">{L_NEW_PASSWORD}</label>
+ <input type="password" name="use_new_pwd" id="use_new_pwd" value="" onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+
+ <li>
+ <label for="passwordConf">{L_CONFIRM_PASSWORD}</label>
+ <input type="password" name="passwordConf" id="passwordConf" value="" onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+ </ul>
+ </fieldset>
+
+ <fieldset>
+ <legend>{L_PREFERENCES}</legend>
+
+ <ul>
+ <li>
+ <label for="nb_image_line">{L_NB_IMAGE_LINE}</label>
+ <input type="text" size="3" maxlength="2" name="nb_image_line" id="nb_image_line" value="{NB_IMAGE_LINE}"
+ onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+
+ <li>
+ <label for="nb_line_page">{L_NB_ROW_PAGE}</label>
+ <input type="text" size="3" maxlength="2" name="nb_line_page" id="nb_line_page" value="{NB_ROW_PAGE}"
+ onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+
+ <li>
+ <label for="template">{L_STYLE_SELECT}</label>
+ <select name="template" id="template"> <!-- FIXME: if onfocus is used, the behaviour becomes weird in Firefox -->
+ <!-- BEGIN template_option -->
+ <option value="{template_option.VALUE}" {template_option.SELECTED}>{template_option.CONTENT}</option>
+ <!-- END template_option -->
+ </select>
+ </li>
+
+ <li>
+ <label for="language">{L_LANG_SELECT}</label>
+ <select name="language" id="language"> <!-- same FIXME -->
+ <!-- BEGIN language_option -->
+ <option value="{language_option.VALUE}" {language_option.SELECTED}>{language_option.CONTENT}</option>
+ <!-- END language_option -->
+ </select>
+ </li>
+
+ <li>
+ <label for="recent_period">{L_RECENT_PERIOD}</label>
+ <input type="text" size="3" maxlength="2" name="recent_period" id="recent_period" value="{RECENT_PERIOD}"
+ onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+
+ <li>
+ <label>{L_EXPAND_TREE}</label>
+ <input type="radio" class="radio" name="expand" value="true" {EXPAND_TREE_YES}> {L_YES}
+ <input type="radio" class="radio" name="expand" value="false" {EXPAND_TREE_NO}> {L_NO}
+ </li>
+
+ <li>
+ <label>{L_NB_COMMENTS}</label>
+ <input type="radio" class="radio" name="show_nb_comments" value="true" {NB_COMMENTS_YES}> {L_YES}
+ <input type="radio" class="radio" name="show_nb_comments" value="false" {NB_COMMENTS_NO}> {L_NO}
+ </li>
+
+ <li>
+ <label for"maxwidth">{L_MAXWIDTH}</label>
+ <input type="text" size="4" maxlength="4" name="maxwidth" id="maxwidth" value="{MAXWIDTH}"
+ onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+
+ <li>
+ <label for="maxheight">{L_MAXHEIGHT}</label>
+ <input type="text" size="4" maxlength="4" name="maxheight" id="maxheight" value="{MAXHEIGHT}"
+ onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+ </ul>
+ </fieldset>
+
+ <p class="bottomButtons">
+ <input type="submit" name="validate" value="{L_SUBMIT}">
+ <input type="reset" name="reset" value="{L_RESET}">
+ </p>
+
+</form>
+
+</div> <!-- content -->
diff --git a/template/yoga/redirect.tpl b/template/yoga/redirect.tpl
new file mode 100644
index 000000000..d3c485c3d
--- /dev/null
+++ b/template/yoga/redirect.tpl
@@ -0,0 +1 @@
+redirection \ No newline at end of file
diff --git a/template/yoga/register.tpl b/template/yoga/register.tpl
new file mode 100644
index 000000000..09740e881
--- /dev/null
+++ b/template/yoga/register.tpl
@@ -0,0 +1,58 @@
+<div id="registerPage">
+
+<div id="content">
+
+ <div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li>
+ </ul>
+ <h2>{lang:Registration}</h2>
+ </div>
+
+ <!-- BEGIN errors -->
+ <div class="errors">
+ <ul>
+ <!-- BEGIN error -->
+ <li>{errors.error.ERROR}</li>
+ <!-- END error -->
+ </ul>
+ </div>
+ <!-- END errors -->
+
+<form method="post" action="{F_ACTION}" class="properties">
+ <fieldset>
+ <legend>{lang:Enter your personnal informations}</legend>
+
+ <ul>
+ <li>
+ <label for="login" class="mandatory">* {lang:Username}</label>
+ <input type="text" name="login" id="login" value="{F_LOGIN}" onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+
+ <li>
+ <label for="password" class="mandatory">* {lang:Password}</label>
+ <input type="password" name="password" id="password" onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+
+ <li>
+ <label for="password_conf" class="mandatory">* {lang:Confirm Password}</label>
+ <input type="password" name="password_conf" id="password_conf" onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+
+ <li>
+ <label for="mail_address">{lang:Mail address}</label>
+ <input type="text" name="mail_address" id="mail_address" value="{F_EMAIL}" onfocus="this.className='focus';" onblur="this.className='nofocus';">
+ </li>
+ </ul>
+
+ </fieldset>
+
+ <p class="bottomButtons">
+ <input type="submit" name="submit" value="{lang:Register}">
+ <input type="reset" value="{lang:Reset}">
+ </p>
+
+</form>
+
+</div> <!-- content -->
+</div> <!-- registerPage -->
diff --git a/template/yoga/search.tpl b/template/yoga/search.tpl
new file mode 100644
index 000000000..bb2cf08a5
--- /dev/null
+++ b/template/yoga/search.tpl
@@ -0,0 +1,138 @@
+<div id="content">
+
+ <div class="titrePage">
+ <ul class="categoryActions">
+ <li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li>
+ </ul>
+ <h2>{lang:Search}</h2>
+ </div>
+
+<!-- TO DO -->
+<form method="post" name="post" action="{S_SEARCH_ACTION}">
+<!-- BEGIN errors -->
+<div class="errors">
+ <ul>
+ <!-- BEGIN error -->
+ <li>{errors.error.ERROR}</li>
+ <!-- END error -->
+ </ul>
+</div>
+<!-- END errors -->
+<table width="100%" align="center" cellpadding="2">
+ <tr>
+ <td width="50%" colspan="2"><b>{L_SEARCH_KEYWORDS} : </b><br /><span class="small">{L_SEARCH_KEYWORDS_HINT}</span></td>
+ <td colspan="2" valign="top">
+ <input type="text" style="width: 300px" name="search_allwords" size="30" />
+ <br />
+ <input type="radio" name="mode" value="AND" checked="checked" /> {L_SEARCH_ALL_TERMS}<br />
+ <input type="radio" name="mode" value="OR" /> {L_SEARCH_ANY_TERMS}
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2"><b>{L_SEARCH_AUTHOR} :</b><br /><span class="small">{L_SEARCH_AUTHOR_HINT}</span></td>
+ <td colspan="2" valign="middle">
+ <input type="text" style="width: 300px" name="search_author" size="30" />
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2"><b>{L_SEARCH_DATE} :</b><br /><span class="small">{L_SEARCH_DATE_HINT}</span></td>
+ <td colspan="2" valign="middle">
+ <table>
+ <tr>
+ <td>{L_SEARCH_DATE_FROM} :</td>
+ <td>
+ <select name="start_day">
+ <!-- BEGIN start_day -->
+ <option {start_day.SELECTED} value="{start_day.VALUE}">{start_day.OPTION}</option>
+ <!-- END start_day -->
+ </select>
+ <select name="start_month">
+ <!-- BEGIN start_month -->
+ <option {start_month.SELECTED} value="{start_month.VALUE}">{start_month.OPTION}</option>
+ <!-- END start_month -->
+ </select>
+ <input name="start_year" type="text" size="4" maxlength="4">&nbsp;
+ <a href="#" name="#" onClick="document.post.start_day.value={TODAY_DAY};document.post.start_month.value={TODAY_MONTH};document.post.start_year.value={TODAY_YEAR};" />{L_TODAY}</a>
+ </td>
+ </tr>
+ <tr>
+ <td>{L_SEARCH_DATE_TO} :</td>
+ <td>
+ <select name="end_day">
+ <!-- BEGIN end_day -->
+ <option {end_day.SELECTED} value="{end_day.VALUE}">{end_day.OPTION}</option>
+ <!-- END end_day -->
+ </select>
+ <select name="end_month">
+ <!-- BEGIN end_month -->
+ <option {end_month.SELECTED} value="{end_month.VALUE}">{end_month.OPTION}</option>
+ <!-- END end_month -->
+ </select>
+ <input name="end_year" type="text" size="4" maxlength="4">&nbsp;
+ <a href="#" name="#" onClick="document.post.end_day.value={TODAY_DAY};document.post.end_month.value={TODAY_MONTH};document.post.end_year.value={TODAY_YEAR};" />{L_TODAY}</a>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr class="admin">
+ <th colspan="4">{L_SEARCH_OPTIONS}</th>
+ </tr>
+ <tr>
+ <td width="25%" ><b>{L_SEARCH_CATEGORIES} : </b><br /><span class="small">{L_SEARCH_CATEGORIES_HINT}</span></td>
+ <td width="25%" nowrap="nowrap">
+ <select style="width:200px" name="cat[]" multiple="multiple" size="8">
+ <!-- BEGIN category_option -->
+ <option value="{category_option.VALUE}">{category_option.OPTION}</option>
+ <!-- END category_option -->
+ </select>
+ </td>
+ <td width="25%" nowrap="nowrap"><b>{L_SEARCH_SUBFORUMS} : </b></td>
+ <td width="25%" nowrap="nowrap">
+ <input type="radio" name="subcats-included" value="1" checked="checked" />{L_YES}&nbsp;&nbsp;
+ <input type="radio" name="subcats-included" value="0" />{L_NO}
+ </td>
+ </tr>
+ <tr>
+ <td width="25%" nowrap="nowrap"><b>{L_SEARCH_DATE_TYPE} : </b></td>
+ <td width="25%" nowrap="nowrap">
+ <input type="radio" name="date_type" value="date_creation" checked="checked" />{L_SEARCH_CREATION}<br />
+ <input type="radio" name="date_type" value="date_available" />{L_SEARCH_AVAILABILITY}
+ </td>
+ <td><b>{L_RESULT_SORT} : </b></td>
+ <td nowrap="nowrap">
+ <input type="radio" name="sd" value="AND" />{L_SORT_ASCENDING}<br />
+ <input type="radio" name="sd" value="d" checked="checked" />{L_SORT_DESCENDING}
+ </td>
+ </tr>
+<!-- <tr>
+ <td width="25%" nowrap="nowrap"><b>{L_SEARCH_WITHIN} : </b></td>
+ <td width="25%" nowrap="nowrap">
+ <input type="radio" name="search_fields" value="all" checked="checked" />{L_SEARCH_ALL}<br />
+ <input type="radio" name="search_fields" value="imgonly" />{L_SEARCH_IMG_ONLY}<br />
+ <input type="radio" name="search_fields" value="commentsonly" />{L_SEARCH_COMMENTS_ONLY}
+ </td>
+ </tr>
+ <tr>
+ <td><b>{L_RESULT_SORT} : </b></td>
+ <td nowrap="nowrap">
+ {S_SELECT_SORT_KEY}<br />
+ <input type="radio" name="sd" value="a" />{L_SORT_ASCENDING}<br />
+ <input type="radio" name="sd" value="d" checked="checked" />{L_SORT_DESCENDING}
+ </td>
+ <td nowrap="nowrap"><b>{L_DISPLAY_RESULTS} : </b></td>
+ <td nowrap="nowrap">
+ <input type="radio" name="show_results" value="images" checked="checked" />{L_IMAGES}&nbsp;&nbsp;
+ <input type="radio" name="show_results" value="comments" /> {L_COMMENTS}
+ </td>
+ </tr>
+ -->
+<tr>
+<td align="center" valign="bottom" colspan="4" height="38">
+<input type="submit" name="submit" value="{L_SUBMIT}" class="bouton" />&nbsp;&nbsp;
+<input type="reset" value="{L_RESET}" class="bouton" />
+</td>
+</table>
+</form>
+
+</div> <!-- content -->
diff --git a/template/yoga/theme/button_bg.gif b/template/yoga/theme/button_bg.gif
new file mode 100644
index 000000000..442f2469c
--- /dev/null
+++ b/template/yoga/theme/button_bg.gif
Binary files differ
diff --git a/template/yoga/theme/caddie_add.png b/template/yoga/theme/caddie_add.png
new file mode 100644
index 000000000..eb20f4e06
--- /dev/null
+++ b/template/yoga/theme/caddie_add.png
Binary files differ
diff --git a/template/yoga/theme/categories.gif b/template/yoga/theme/categories.gif
new file mode 100644
index 000000000..cd3084434
--- /dev/null
+++ b/template/yoga/theme/categories.gif
Binary files differ
diff --git a/template/yoga/theme/category_children.png b/template/yoga/theme/category_children.png
new file mode 100644
index 000000000..7205c3f61
--- /dev/null
+++ b/template/yoga/theme/category_children.png
Binary files differ
diff --git a/template/yoga/theme/category_delete.png b/template/yoga/theme/category_delete.png
new file mode 100644
index 000000000..da796da11
--- /dev/null
+++ b/template/yoga/theme/category_delete.png
Binary files differ
diff --git a/template/yoga/theme/category_edit.png b/template/yoga/theme/category_edit.png
new file mode 100644
index 000000000..0f3b619ed
--- /dev/null
+++ b/template/yoga/theme/category_edit.png
Binary files differ
diff --git a/template/yoga/theme/category_elements.png b/template/yoga/theme/category_elements.png
new file mode 100644
index 000000000..1d367b38f
--- /dev/null
+++ b/template/yoga/theme/category_elements.png
Binary files differ
diff --git a/template/yoga/theme/category_jump-to.png b/template/yoga/theme/category_jump-to.png
new file mode 100644
index 000000000..62db1f4ee
--- /dev/null
+++ b/template/yoga/theme/category_jump-to.png
Binary files differ
diff --git a/template/yoga/theme/category_permissions.png b/template/yoga/theme/category_permissions.png
new file mode 100644
index 000000000..4780841ae
--- /dev/null
+++ b/template/yoga/theme/category_permissions.png
Binary files differ
diff --git a/template/yoga/theme/category_representant_random.png b/template/yoga/theme/category_representant_random.png
new file mode 100644
index 000000000..dfa69846f
--- /dev/null
+++ b/template/yoga/theme/category_representant_random.png
Binary files differ
diff --git a/template/yoga/theme/del_favorite.gif b/template/yoga/theme/del_favorite.gif
new file mode 100644
index 000000000..bc7a83037
--- /dev/null
+++ b/template/yoga/theme/del_favorite.gif
Binary files differ
diff --git a/template/yoga/theme/delete.gif b/template/yoga/theme/delete.gif
new file mode 100644
index 000000000..077b41ca8
--- /dev/null
+++ b/template/yoga/theme/delete.gif
Binary files differ
diff --git a/template/yoga/theme/delete.png b/template/yoga/theme/delete.png
new file mode 100644
index 000000000..af10be03e
--- /dev/null
+++ b/template/yoga/theme/delete.png
Binary files differ
diff --git a/template/yoga/theme/download.gif b/template/yoga/theme/download.gif
new file mode 100644
index 000000000..bf44419dd
--- /dev/null
+++ b/template/yoga/theme/download.gif
Binary files differ
diff --git a/template/yoga/theme/eCard.gif b/template/yoga/theme/eCard.gif
new file mode 100644
index 000000000..480872c4e
--- /dev/null
+++ b/template/yoga/theme/eCard.gif
Binary files differ
diff --git a/template/yoga/theme/exit.png b/template/yoga/theme/exit.png
new file mode 100644
index 000000000..2aafbb4cb
--- /dev/null
+++ b/template/yoga/theme/exit.png
Binary files differ
diff --git a/template/yoga/theme/favorite.gif b/template/yoga/theme/favorite.gif
new file mode 100644
index 000000000..6b103cd8c
--- /dev/null
+++ b/template/yoga/theme/favorite.gif
Binary files differ
diff --git a/template/yoga/theme/help.png b/template/yoga/theme/help.png
new file mode 100644
index 000000000..c76f68292
--- /dev/null
+++ b/template/yoga/theme/help.png
Binary files differ
diff --git a/template/yoga/theme/home.png b/template/yoga/theme/home.png
new file mode 100644
index 000000000..cce450d85
--- /dev/null
+++ b/template/yoga/theme/home.png
Binary files differ
diff --git a/template/yoga/theme/left-arrow.gif b/template/yoga/theme/left-arrow.gif
new file mode 100644
index 000000000..c60eb07c1
--- /dev/null
+++ b/template/yoga/theme/left-arrow.gif
Binary files differ
diff --git a/template/yoga/theme/left.png b/template/yoga/theme/left.png
new file mode 100644
index 000000000..63d306c9c
--- /dev/null
+++ b/template/yoga/theme/left.png
Binary files differ
diff --git a/template/yoga/theme/lost.gif b/template/yoga/theme/lost.gif
new file mode 100644
index 000000000..b8b873d15
--- /dev/null
+++ b/template/yoga/theme/lost.gif
Binary files differ
diff --git a/template/yoga/theme/metadata.gif b/template/yoga/theme/metadata.gif
new file mode 100644
index 000000000..69b77ec44
--- /dev/null
+++ b/template/yoga/theme/metadata.gif
Binary files differ
diff --git a/template/yoga/theme/metadata.png b/template/yoga/theme/metadata.png
new file mode 100644
index 000000000..d5d8fa6dc
--- /dev/null
+++ b/template/yoga/theme/metadata.png
Binary files differ
diff --git a/template/yoga/theme/permissions.png b/template/yoga/theme/permissions.png
new file mode 100644
index 000000000..33091eb85
--- /dev/null
+++ b/template/yoga/theme/permissions.png
Binary files differ
diff --git a/template/yoga/theme/preferences.png b/template/yoga/theme/preferences.png
new file mode 100644
index 000000000..0f3b619ed
--- /dev/null
+++ b/template/yoga/theme/preferences.png
Binary files differ
diff --git a/template/yoga/theme/profile.png b/template/yoga/theme/profile.png
new file mode 100644
index 000000000..397cd73a1
--- /dev/null
+++ b/template/yoga/theme/profile.png
Binary files differ
diff --git a/template/yoga/theme/properties.gif b/template/yoga/theme/properties.gif
new file mode 100644
index 000000000..f843e0636
--- /dev/null
+++ b/template/yoga/theme/properties.gif
Binary files differ
diff --git a/template/yoga/theme/recent.gif b/template/yoga/theme/recent.gif
new file mode 100644
index 000000000..ad91b9126
--- /dev/null
+++ b/template/yoga/theme/recent.gif
Binary files differ
diff --git a/template/yoga/theme/register.gif b/template/yoga/theme/register.gif
new file mode 100644
index 000000000..11b8f3171
--- /dev/null
+++ b/template/yoga/theme/register.gif
Binary files differ
diff --git a/template/yoga/theme/register.png b/template/yoga/theme/register.png
new file mode 100644
index 000000000..d1dd3c834
--- /dev/null
+++ b/template/yoga/theme/register.png
Binary files differ
diff --git a/template/yoga/theme/representative.png b/template/yoga/theme/representative.png
new file mode 100644
index 000000000..f1141d91b
--- /dev/null
+++ b/template/yoga/theme/representative.png
Binary files differ
diff --git a/template/yoga/theme/right-arrow.gif b/template/yoga/theme/right-arrow.gif
new file mode 100644
index 000000000..1a2162688
--- /dev/null
+++ b/template/yoga/theme/right-arrow.gif
Binary files differ
diff --git a/template/yoga/theme/right.png b/template/yoga/theme/right.png
new file mode 100644
index 000000000..f998098e4
--- /dev/null
+++ b/template/yoga/theme/right.png
Binary files differ
diff --git a/template/yoga/theme/save.png b/template/yoga/theme/save.png
new file mode 100644
index 000000000..b4b9da08b
--- /dev/null
+++ b/template/yoga/theme/save.png
Binary files differ
diff --git a/template/yoga/theme/slideshow.gif b/template/yoga/theme/slideshow.gif
new file mode 100644
index 000000000..79712c3ad
--- /dev/null
+++ b/template/yoga/theme/slideshow.gif
Binary files differ
diff --git a/template/yoga/theme/slideshow.png b/template/yoga/theme/slideshow.png
new file mode 100644
index 000000000..455d73fdf
--- /dev/null
+++ b/template/yoga/theme/slideshow.png
Binary files differ
diff --git a/template/yoga/theme/sync_metadata.png b/template/yoga/theme/sync_metadata.png
new file mode 100644
index 000000000..03570ead6
--- /dev/null
+++ b/template/yoga/theme/sync_metadata.png
Binary files differ
diff --git a/template/yoga/theme/tableh1_bg.gif b/template/yoga/theme/tableh1_bg.gif
new file mode 100644
index 000000000..9f0ef65bd
--- /dev/null
+++ b/template/yoga/theme/tableh1_bg.gif
Binary files differ
diff --git a/template/yoga/theme/up.png b/template/yoga/theme/up.png
new file mode 100644
index 000000000..0c9cda5b1
--- /dev/null
+++ b/template/yoga/theme/up.png
Binary files differ
diff --git a/template/yoga/upgrade.tpl b/template/yoga/upgrade.tpl
new file mode 100644
index 000000000..40b2ede4c
--- /dev/null
+++ b/template/yoga/upgrade.tpl
@@ -0,0 +1,45 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+ <title>PhpWebGallery : Upgrade to {RELEASE}</title>
+ </head>
+
+ <body>
+ <!-- BEGIN choices -->
+ <h1>Welcome to PhpWebGallery upgrade page.</h1>
+ <p>This page proposes to upgrade your database corresponding to your old version
+ of PhpWebGallery to the current version. Select the version you wish to upgrade
+ :</p>
+
+ <ul>
+ <!-- BEGIN choice -->
+ <li><a href="{choices.choice.URL}">{choices.choice.VERSION}</a></li>
+ <!-- END choice -->
+ </ul>
+ <!-- END choices -->
+
+ <!-- BEGIN upgrade -->
+ <h1>Upgrade from version {upgrade.VERSION} to {RELEASE}</h1>
+
+ <p>Statistics</p>
+ <ul>
+ <li>total upgrade time : {upgrade.TOTAL_TIME}</li>
+ <li>total SQL time : {upgrade.SQL_TIME}</li>
+ <li>SQL queries : {upgrade.NB_QUERIES}</li>
+ </ul>
+
+ <!-- BEGIN infos -->
+ <p>Upgrade informations</p>
+
+ <ul>
+ <!-- BEGIN info -->
+ <li>{upgrade.infos.info.CONTENT}</li>
+ <!-- END info -->
+ </ul>
+ <!-- END infos -->
+ <!-- END upgrade -->
+ </body>
+
+</html>
diff --git a/template/yoga/upload.tpl b/template/yoga/upload.tpl
new file mode 100644
index 000000000..fcf27b543
--- /dev/null
+++ b/template/yoga/upload.tpl
@@ -0,0 +1,93 @@
+<h2>{L_TITLE}</h2>
+<!-- BEGIN upload_not_successful -->
+<form enctype="multipart/form-data" method="post" action="{F_ACTION}">
+ <table style="width:80%;margin-left:auto;margin-right:auto;">
+ <!-- BEGIN errors -->
+ <tr>
+ <td colspan="2">
+ <div class="errors">
+ <ul>
+ <!-- BEGIN error -->
+ <li>{upload_not_successful.errors.error.ERROR}</li>
+ <!-- END error -->
+ </ul>
+ </div>
+ </td>
+ </tr>
+ <!-- END errors -->
+ <tr>
+ <td colspan="2" class="menu">
+ <div style="text-align:center;">{ADVISE_TITLE}</div>
+ <ul>
+ <!-- BEGIN advise -->
+ <li>{upload_not_successful.advise.ADVISE}</li>
+ <!-- END advise -->
+ </ul>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2" align="center" style="padding:10px;">
+ <input name="picture" type="file" value="" />
+ </td>
+ </tr>
+ <!-- BEGIN fields -->
+ <!-- username -->
+ <tr>
+ <td class="menu">{L_USERNAME} <span style="color:red;">*</span></td>
+ <td align="center" style="padding:10px;">
+ <input name="username" type="text" value="{NAME}" />
+ </td>
+ </tr>
+ <!-- mail address -->
+ <tr>
+ <td class="menu">{L_EMAIL} <span style="color:red;">*</span></td>
+ <td align="center" style="padding:10px;">
+ <input name="mail_address" type="text" value="{EMAIL}" />
+ </td>
+ </tr>
+ <!-- name of the picture -->
+ <tr>
+ <td class="menu">{L_NAME_IMG}</td>
+ <td align="center" style="padding:10px;">
+ <input name="name" type="text" value="{NAME_IMG}" />
+ </td>
+ </tr>
+ <!-- author -->
+ <tr>
+ <td class="menu">{L_AUTHOR}</td>
+ <td align="center" style="padding:10px;">
+ <input name="author" type="text" value="{AUTHOR_IMG}" />
+ </td>
+ </tr>
+ <!-- date of creation -->
+ <tr>
+ <td class="menu">{L_CREATION_DATE}</td>
+ <td align="center" style="padding:10px;">
+ <input name="date_creation" type="text" value="{DATE_IMG}" />
+ </td>
+ </tr>
+ <!-- comment -->
+ <tr>
+ <td class="menu">{L_COMMENT}</td>
+ <td align="center" style="padding:10px;">
+ <textarea name="comment" rows="3" cols="40" style="overflow:auto">{COMMENT_IMG}</textarea>
+ </td>
+ </tr>
+ <!-- END fields -->
+ <tr>
+ <td colspan="2" align="center">
+ <input name="submit" type="submit" value="{L_SUBMIT}" class="bouton" />
+ </td>
+ </tr>
+ </table>
+</form>
+<!-- END upload_not_successful -->
+<!-- BEGIN upload_successful -->
+{L_UPLOAD_DONE}<br />
+<!-- END upload_successful -->
+<div style="text-align:center;">
+ <a href="{U_RETURN}">[ {L_RETURN} ]</a>
+</div>
+<!-- BEGIN note -->
+<div style="text-align:left;"><span style="color:red;">*</span> : {L_MANDATORY}</div>
+<!-- END note -->