diff options
author | vdigital <vdigital@piwigo.org> | 2008-05-23 21:05:41 +0000 |
---|---|---|
committer | vdigital <vdigital@piwigo.org> | 2008-05-23 21:05:41 +0000 |
commit | 77fd1f51a3c5f5a52f72ef8a299fe368228e2285 (patch) | |
tree | a67ede42904657ccf3349ecdaef1cec8b8e36ff8 /BSF/template | |
parent | 553727dffacc48e8337c1d141f2a25af359e74b1 (diff) |
git-svn-id: http://piwigo.org/svn/trunk@2357 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'BSF/template')
225 files changed, 8850 insertions, 0 deletions
diff --git a/BSF/template/index.php b/BSF/template/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/about.tpl b/BSF/template/yoga/about.tpl new file mode 100644 index 000000000..62b51839d --- /dev/null +++ b/BSF/template/yoga/about.tpl @@ -0,0 +1,19 @@ +{* $Id$ *} +<div id="content" class="content"> + <div class="titrePage"> + <ul class="categoryActions"> + <li> + <a href="{$U_HOME}" title="{'return to homepage'|@translate}"> + <img src="{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/> + </a> + </li> + </ul> + <h2>{'About'|@translate}</h2> + </div> + <ul> + {$ABOUT_MESSAGE} + {if isset($THEME_ABOUT) } + <li>{$THEME_ABOUT}</li> + {/if} + </ul> +</div> diff --git a/BSF/template/yoga/admin.tpl b/BSF/template/yoga/admin.tpl new file mode 100644 index 000000000..188888951 --- /dev/null +++ b/BSF/template/yoga/admin.tpl @@ -0,0 +1,103 @@ +{* $Id$ *} +<div id="post-header"></div> +<div id="menubar"> + <dl> + <dt class="rdion">{'Links'|@translate}</dt> + <dd> + <ul> + <li><a href="{$U_RETURN}">{'home'|@translate}</a></li> + <li><a href="{$U_FAQ}">{'instructions'|@translate}</a></li> + <li><a href="{$U_ADMIN}" title="{'hint_admin'|@translate}">{'admin'|@translate}</a></li> + </ul> + </dd> + </dl> + <dl> + <dt class="rdion">{'config'|@translate}</dt> + <dd> + <ul> + <li><a href="{$U_CONFIG_GENERAL}">{'conf_general'|@translate}</a></li> + <li><a href="{$U_CONFIG_DISPLAY}">{'conf_display'|@translate}</a></li> + </ul> + </dd> + </dl> + <dl> + <dt class="rdion">{'Categories'|@translate}</dt> + <dd> + <ul> + <li><a href="{$U_SITE_MANAGER}">{'Site manager'|@translate}</a></li> + <li><a href="{$U_CAT_UPDATE}">{'update'|@translate}</a><br /> </li> + <li><a href="{$U_CATEGORIES}">{'manage'|@translate}</a></li> + <li><a href="{$U_MOVE}">{'Move'|@translate}</a></li> + <li><a href="{$U_CAT_OPTIONS}">{'cat_options_title'|@translate}</a></li> + <li><a href="{$U_PERMALINKS}">{'Permalinks'|@translate}</a></li> + </ul> + </dd> + </dl> + <dl> + <dt class="rdion">{'Pictures'|@translate}</dt> + <dd> + <ul> + <li><a href="{$U_WAITING}">{'waiting'|@translate}</a></li> + <li><a href="{$U_THUMBNAILS}">{'thumbnails'|@translate}</a></li> + <li><a href="{$U_RATING}">{'Rating'|@translate}</a></li> + <li><a href="{$U_TAGS}">{'Tags'|@translate}</a></li> + <li><a href="{$U_CADDIE}">{'Caddie'|@translate}</a></li> + </ul> + </dd> + </dl> + <dl> + <dt class="rdion">{'identification'|@translate}</dt> + <dd> + <ul> + <li><a href="{$U_USERS}">{'users'|@translate}</a></li> + <li><a href="{$U_GROUPS}">{'groups'|@translate}</a></li> + <li><a href="{$U_NOTIFICATION_BY_MAIL}">{'nbm_item_notification'|@translate}</a></li> + </ul> + </dd> + </dl> + <dl> + <dt class="rdion">{'special_admin_menu'|@translate}</dt> + <dd> + <ul> + <li><a href="{$U_HISTORY_STAT}">{'History'|@translate}</a></li> + <li><a href="{$U_MAINTENANCE}">{'Maintenance'|@translate}</a></li> + <li><a href="{$U_ADVANCED_FEATURE}">{'Advanced_features'|@translate}</a></li> + {if isset($U_WS_CHECKER) } + <li><a href="{$U_WS_CHECKER}">{'web_services'|@translate}</a></li> + {/if} + <li> + {'Plugins'|@translate} + <ul> +{foreach from=$plugin_menu_items item=menu_item} + <li><a href="{$menu_item.URL}">{$menu_item.NAME}</a></li> +{/foreach} + </ul> + </li> + </ul> + </dd> + </dl> +</div> <!-- menubar --> + +<div id="content" class="content"> + {if isset($errors)} + <div class="errors"> + <ul> + {foreach from=$errors item=error} + <li>{$error}</li> + {/foreach} + </ul> + </div> + {/if} + + {if isset($infos)} + <div class="infos"> + <ul> + {foreach from=$infos item=info} + <li>{$info}</li> + {/foreach} + </ul> + </div> + {/if} + + {$ADMIN_CONTENT} +</div> diff --git a/BSF/template/yoga/admin/advanced_feature.tpl b/BSF/template/yoga/admin/advanced_feature.tpl new file mode 100644 index 000000000..128428ba1 --- /dev/null +++ b/BSF/template/yoga/admin/advanced_feature.tpl @@ -0,0 +1,13 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'Advanced_features'|@translate}</h2> +</div> + +<ul> + {foreach from=$advanced_features item=feature} + <li><a href="{$feature.URL}" {$TAG_INPUT_ENABLED}>{$feature.CAPTION}</a></li> + {/foreach} +</ul> diff --git a/BSF/template/yoga/admin/cat_list.tpl b/BSF/template/yoga/admin/cat_list.tpl new file mode 100644 index 000000000..b408a5a50 --- /dev/null +++ b/BSF/template/yoga/admin/cat_list.tpl @@ -0,0 +1,65 @@ +{* $Id$ *} +<h2>{'title_categories'|@translate}</h2> + +<h3>{$CATEGORIES_NAV}</h3> + +<form id="addVirtual" action="{$F_ACTION}" method="post"> + <p> + {'cat_add'|@translate} : <input type="text" name="virtual_name" /> + <input class="submit" type="submit" value="{'Submit'|@translate}" name="submitAdd" {$TAG_INPUT_ENABLED} /> + {if count($categories)>9 } + <a href="#EoP" class="button"><img src="{$themeconf.icon_dir}/page_end.png" class="button" alt="page_end" /></a> + {/if} + </p> +</form> + +{if count($categories) } +<form id="categoryOrdering" action="{$F_ACTION}" method="post"> + <p> + <input class="submit" name="submitOrder" type="submit" value="{'Save order'|@translate}" {$TAG_INPUT_ENABLED} /> + <input class="submit" name="submitOrderAlphaNum" type="submit" value="{'Order alphanumerically'|@translate}" {$TAG_INPUT_ENABLED} /> + </p> + <ul class="categoryUl"> + + {foreach from=$categories item=category} + <li class="categoryLi{if $category.IS_VIRTUAL} virtual_cat{/if}"> + <!-- category {$category.ID} --> + <ul class="categoryActions"> + <li><a href="{$category.U_JUMPTO}" title="{'jump to category'|@translate}"><img src="{$themeconf.icon_dir}/category_jump-to.png" class="button" alt="{'jump to category'|@translate}" /></a></li> + <li><a href="{$category.U_EDIT}" title="{'edit category informations'|@translate}"><img src="{$themeconf.icon_dir}/category_edit.png" class="button" alt="{'edit'|@translate}"/></a></li> + {if isset($category.U_MANAGE_ELEMENTS) } + <li><a href="{$category.U_MANAGE_ELEMENTS}" title="{'manage category elements'|@translate}"><img src="{$themeconf.icon_dir}/category_elements.png" class="button" alt="{'elements'|@translate}" /></a></li> + {/if} + <li><a href="{$category.U_CHILDREN}" title="{'manage sub-categories'|@translate}"><img src="{$themeconf.icon_dir}/category_children.png" class="button" alt="{'sub-categories'|@translate}" /></a></li> + {if isset($category.U_MANAGE_PERMISSIONS) } + <li><a href="{$category.U_MANAGE_PERMISSIONS}" title="{'edit category permissions'|@translate}" ><img src="{$themeconf.icon_dir}/category_permissions.png" class="button" alt="{'permissions'|@translate}" /></a></li> + {/if} + {if isset($category.U_DELETE) } + <li><a href="{$category.U_DELETE}" title="{'delete category'|@translate}" onclick="return confirm('{'Are you sure?'|@translate|@escape:javascript}');"><img src="{$themeconf.icon_dir}/category_delete.png" class="button" alt="{'delete'|@translate}" /></a></li> + {/if} + </ul> + + <p> + <strong><a href="{$category.U_CHILDREN}" title="{'manage sub-categories'|@translate}">{$category.NAME}</a></strong> + {if $category.IS_VIRTUAL} + <img src="{$themeconf.icon_dir}/virt_category.png" class="button" alt="{'virtual_category'|@translate}" /> + {/if} + </p> + + <p> + <label> + {'Position'|@translate} : + <input type="text" size="4" name="catOrd[{$category.ID}]" maxlength="4" value="{$category.RANK}" /> + </label> + </p> + + </li> + {/foreach} + </ul> + <p> + <input class="submit" name="submitOrder" type="submit" value="{'Save order'|@translate}" {$TAG_INPUT_ENABLED} /> + <input class="submit" name="submitOrderAlphaNum" type="submit" value="{'Order alphanumerically'|@translate}" {$TAG_INPUT_ENABLED} /> + </p> + +</form> +{/if} diff --git a/BSF/template/yoga/admin/cat_modify.tpl b/BSF/template/yoga/admin/cat_modify.tpl new file mode 100644 index 000000000..88e07e329 --- /dev/null +++ b/BSF/template/yoga/admin/cat_modify.tpl @@ -0,0 +1,229 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'title_edit_cat'|@translate}</h2> +</div> + +<h3>{$CATEGORIES_NAV}</h3> + +<ul class="categoryActions"> + <li><a href="{$U_JUMPTO}" title="{'jump to category'|@translate}"><img src="{$themeconf.icon_dir}/category_jump-to.png" class="button" alt="{'jump to category'|@translate}" /></a></li> + {if isset($U_MANAGE_ELEMENTS) } + <li><a href="{$U_MANAGE_ELEMENTS}" title="{'manage category elements'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/category_elements.png" class="button" alt="{'elements'|@translate}" /></a></li> + {/if} + <li><a href="{$U_CHILDREN}" title="{'manage sub-categories'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/category_children.png" class="button" alt="{'sub-categories'|@translate}" /></a></li> + {if isset($U_MANAGE_PERMISSIONS) } + <li><a href="{$U_MANAGE_PERMISSIONS}" title="{'edit category permissions'|@translate}" ><img src="{$ROOT_URL}{$themeconf.icon_dir}/category_permissions.png" class="button" alt="{'permissions'|@translate}" /></a></li> + {/if} + {if isset($U_DELETE) } + <li><a href="{$U_DELETE}" title="{'delete category'|@translate}" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');"><img src="{$ROOT_URL}{$themeconf.icon_dir}/category_delete.png" class="button" alt="{'delete'|@translate}" /></a></li> + {/if} +</ul> + +<form action="{$F_ACTION}" method="POST" id="catModify"> + +<fieldset> + <legend>{'Informations'|@translate}</legend> + <table> + + {if isset($CAT_FULL_DIR) } + <tr> + <td><strong>{'storage'|@translate}</strong></td> + <td class="row1">{$CAT_FULL_DIR}</td> + </tr> + {/if} + + <tr> + <td><strong>{'name'|@translate}</strong></td> + <td> + <input type="text" name="name" value="{$CAT_NAME}" maxlength="60"/> + </td> + </tr> + <tr> + <td><strong>{'description'|@translate}</strong></td> + <td> + <textarea cols="50" rows="5" name="comment" class="description">{$CAT_COMMENT}</textarea> + </td> + </tr> + </table> +</fieldset> + +{if isset($move_cat_options) } +<fieldset id="move"> + <legend>{'Move'|@translate}</legend> + {'Parent category'|@translate} + <select class="categoryDropDown" name="parent"> + <option value="0">------------</option> + {html_options options=$move_cat_options selected=$move_cat_options_selected } + </select> +</fieldset> +{/if} + +<fieldset id="options"> + <legend>{'Options'|@translate}</legend> + <table> + <tr> + <td><strong>{'conf_access'|@translate}</strong> + <td> + {html_radios name='status' values=$status_values output=$status_values|translate selected=$CAT_STATUS} + </td> + </tr> + <tr> + <td><strong>{'lock'|@translate}</strong> + <td> + {html_radios name='visible' values='false,true'|@explode output='No,Yes'|@explode|translate selected=$CAT_VISIBLE} + </td> + </tr> + <tr> + <td><strong>{'comments'|@translate}</strong> + <td> + {html_radios name='commentable' values='false,true'|@explode output='No,Yes'|@explode|translate selected=$CAT_COMMENTABLE} + </td> + </tr> + {if isset($SHOW_UPLOADABLE) } + <tr> + <td><strong>{'editcat_uploadable'|@translate}</strong> + <td> + {html_radios name='uploadable' values='false,true'|@explode output='No,Yes'|@explode|translate selected=$CAT_UPLOADABLE} + </td> + </tr> + {/if} + </table> +</fieldset> + +<fieldset id="image_order"> + <legend>{'Sort order'|@translate}</legend> + <input type="checkbox" name="image_order_default" id="image_order_default" {$IMG_ORDER_DEFAULT} /> + <label for="image_order_default">{'Use default sort order'|@translate}</label> + <br/> + <input type="checkbox" name="image_order_subcats" id="image_order_subcats" /> + <label for="image_order_subcats">{'Apply to subcategories'|@translate}</label> + <br/> + + {foreach from=$image_orders item=order} + <select name="order_field_{$order.ID}"> + {html_options options=$image_order_field_options selected=$order.FIELD }} + </select> + <select name="order_direction_{$order.ID}"> + {html_options options=$image_order_direction_options selected=$order.DIRECTION }} + </select><br/> + {/foreach} + +</fieldset> + +<p style="text-align:center;"> + <input class="submit" type="submit" value="{'Submit'|@translate}" name="submit" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="reset" value="{'Reset'|@translate}" name="reset" /> +</p> + +{if isset($representant) } +<fieldset id="representant"> + <legend>{'Representant'|@translate}</legend> + <table> + <tr> + <td align="center"> + {if isset($representant.picture) } + <a href="{$representant.picture.URL}"><img src="{$representant.picture.SRC}" alt="" class="miniature" /></a> + {else} + <img src="{$ROOT_URL}{$themeconf.icon_dir}/category_representant_random.png" class="button" alt="{'Random picture'|@translate}" class="miniature" /> + {/if} + </td> + <td> + {if $representant.ALLOW_SET_RANDOM } + <p><input class="submit" type="submit" name="set_random_representant" value="{'cat_representant'|@translate}" {$TAG_INPUT_ENABLED}/></p> + {/if} + + {if isset($representant.ALLOW_DELETE) } + <p><input class="submit" type="submit" name="delete_representant" value="{'Delete Representant'|@translate}" /></p> + {/if} + </td> + </tr> + </table> +</fieldset> +{/if} + +</form> + +<form action="{$F_ACTION}" method="POST" id="links"> + +<fieldset id="linkAllNew"> + <legend>{'Link all category elements to a new category'|@translate}</legend> + + <table> + <tr> + <td>{'Virtual category name'|@translate}</td> + <td><input type="text" name="virtual_name"></td> + </tr> + + <tr> + <td>{'Parent category'|@translate}</td> + <td> + <select class="categoryDropDown" name="parent"> + <option value="0">------------</option> + {html_options options=$create_new_parent_options } + </select> + </td> + </tr> + </table> + + <p> + <input class="submit" type="submit" value="{'Submit'|@translate}" name="submitAdd" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="reset" value="{'Reset'|@translate}" name="reset" /> + </p> + +</fieldset> + +<fieldset id="linkAllExist"> + <legend>{'Link all category elements to some existing categories'|@translate}</legend> + + <table> + <tr> + <td>{'Categories'|@translate}</td> + <td> + <select class="categoryList" name="destinations[]" multiple="multiple" size="5"> + {html_options options=$category_destination_options } + </select> + </td> + </tr> + </table> + + <p> + <input class="submit" type="submit" value="{'Submit'|@translate}" name="submitDestinations" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="reset" value="{'Reset'|@translate}" name="reset" /> + </p> + +</fieldset> + +{if isset($group_mail_options)} +<fieldset id="emailCatInfo"> + <legend>{'Send an information email to group members'|@translate}</legend> + + <table> + <tr> + <td><strong>{'Group'|@translate}</strong></td> + <td> + <select name="group"> + {html_options options=$group_mail_options} + </select> + </td> + </tr> + <tr> + <td><strong>{'mail_content'|@translate}</strong></td> + <td> + <textarea cols="50" rows="5" name="mail_content" class="description">{$MAIL_CONTENT}</textarea> + </td> + </tr> + + </table> + + <p> + <input class="submit" type="submit" value="{'Submit'|@translate}" name="submitEmail" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="reset" value="{'Reset'|@translate}" name="reset" /> + </p> + +</fieldset> +{/if} + +</form> diff --git a/BSF/template/yoga/admin/cat_move.tpl b/BSF/template/yoga/admin/cat_move.tpl new file mode 100644 index 000000000..318a025ab --- /dev/null +++ b/BSF/template/yoga/admin/cat_move.tpl @@ -0,0 +1,38 @@ +{* $Id$ *} + +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'Move categories'|@translate}</h2> +</div> + +<form method="post" action="{$F_ACTION}" class="filter" id="catMove"> + <fieldset> + <legend>{'Virtual categories movement'|@translate}</legend> + + <label> + {'Virtual categories to move'|@translate} + + <select class="categoryList" name="selection[]" multiple="multiple"> + {html_options options=$category_to_move_options} + </select> + </label> + + <label> + {'New parent category'|@translate} + + <select class="categoryDropDown" name="parent"> + <option value="0">------------</option> + {html_options options=$category_parent_options} + </select> + </label> + + </fieldset> + + <p> + <input class="submit" type="submit" name="submit" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED}> + <input class="submit" type="reset" name="reset" value="{'Reset'|@translate}"> + </p> + +</form> diff --git a/BSF/template/yoga/admin/cat_options.tpl b/BSF/template/yoga/admin/cat_options.tpl new file mode 100644 index 000000000..f9087648a --- /dev/null +++ b/BSF/template/yoga/admin/cat_options.tpl @@ -0,0 +1,16 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'cat_options_title'|@translate} {$TABSHEET_TITLE}</h2> + {$TABSHEET} +</div> + +<form method="post" action="{$F_ACTION}" id="cat_options"> + <fieldset> + <legend>{$L_SECTION}</legend> + {$DOUBLE_SELECT} + </fieldset> +</form> + diff --git a/BSF/template/yoga/admin/cat_perm.tpl b/BSF/template/yoga/admin/cat_perm.tpl new file mode 100644 index 000000000..857448112 --- /dev/null +++ b/BSF/template/yoga/admin/cat_perm.tpl @@ -0,0 +1,68 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'Manage permissions for a category'|@translate}</h2> +</div> + +<h3>{$CATEGORIES_NAV}</h3> + +<form action="{$F_ACTION}" method="post" id="categoryPermissions"> + + <h4>{'Groups'|@translate}</h4> + + <fieldset> + <legend>{'Permission granted'|@translate}</legend> + <ul> + {foreach from=$group_granted_ids item=id} + <li><label><input type="checkbox" name="deny_groups[]" value="{$id}" /> {$all_groups[$id]}</label></li> + {/foreach} + </ul> + <input class="submit" type="submit" name="deny_groups_submit" value="{'Deny selected groups'|@translate}" {$TAG_INPUT_ENABLED}/> + </fieldset> + + <fieldset> + <legend>{'Permission denied'|@translate}</legend> + <ul> + {foreach from=$group_denied_ids item=id} + <li><label><input type="checkbox" name="grant_groups[]" value="{$id}"> {$all_groups[$id]}</label></li> + {/foreach} + </ul> + <input class="submit" type="submit" name="grant_groups_submit" value="{'Grant selected groups'|@translate}" {$TAG_INPUT_ENABLED}/> + </fieldset> + + <h4>{'Users'|@translate}</h4> + + <fieldset> + <legend>{'Permission granted'|@translate}</legend> + <ul> + {foreach from=$user_granted_direct_ids item=id} + <li><label><input type="checkbox" name="deny_users[]" value="{$id}" /> {$all_users[$id]}</label></li> + {/foreach} + </ul> + <input class="submit" type="submit" name="deny_users_submit" value="{'Deny selected users'|@translate}" {$TAG_INPUT_ENABLED}/> + </fieldset> + + <fieldset> + <legend>{'Permission granted thanks to a group'|@translate}</legend> + {if isset($user_granted_indirects) } + <ul> + {foreach from=$user_granted_indirects item=user_group} + <li>{$user_group.USER} ({$user_group.GROUP})</li> + {/foreach} + </ul> + {/if} + </fieldset> + + <fieldset> + <legend>{'Permission denied'|@translate}</legend> + <ul> + {foreach from=$user_denied_ids item=id} + <li><label><input type="checkbox" name="grant_users[]" value="{$id}"> {$all_users[$id]}</label></li> + {/foreach} + </ul> + <input class="submit" type="submit" name="grant_users_submit" value="{'Grant selected users'|@translate}" {$TAG_INPUT_ENABLED}/> + </fieldset> + +</form> diff --git a/BSF/template/yoga/admin/check_integrity.tpl b/BSF/template/yoga/admin/check_integrity.tpl new file mode 100644 index 000000000..1783e69e2 --- /dev/null +++ b/BSF/template/yoga/admin/check_integrity.tpl @@ -0,0 +1,84 @@ +{* $Id$ *} +<dl> + <dt>{'c13y_title'|@translate}</dt> + <dd> + <ul> + <form method="post" name="c13y" id="c13y" action="{$F_C13Y_ACTION}"> + <fieldset> + <table class="table2"> + <tr class="throw"> + <th></th> + <th>{'c13y_Anomaly'|@translate}</th> + <th>{'c13y_Correction'|@translate}</th> + </tr> + {if isset($c13y_list)} + {foreach from=$c13y_list item=c13y name=c13y_loop} + <tr class="{if $smarty.foreach.c13y_loop.index is odd}row1{else}row2{/if}"> + <td> + {if $c13y.can_select} + <input type="checkbox" name="c13y_selection[]" value="{$c13y.id}" id="c13y_selection-{$c13y.id}" /><label for="c13y_selection-{$c13y.id}"></label> + {/if} + </td> + <td><label for="c13y_selection-{$c13y.id}">{$c13y.anomaly}</label></td> + <td> + <label for="c13y_selection-{$c13y.id}"> + {if $c13y.show_ignore_msg} + {'c13y_ignore_msg1'|@translate} + <br /> + {'c13y_ignore_msg2'|@translate} + {/if} + {if $c13y.show_correction_fct} + {'c13y_Automatic_correction'|@translate} + {/if} + {if $c13y.show_correction_bad_fct} + {'c13y_Impossible_automatic_correction'|@translate} + {/if} + {if $c13y.show_correction_success_fct} + {'c13y_Correction_applied_success'|@translate} + {/if} + {if !empty($c13y.correction_error_fct)} + {'c13y_Correction_applied_error'|@translate} + <br /> + {$c13y.c13y.correction_error_fct} + {/if} + {if !empty($c13y.correction_msg)} + {if $c13y.show_correction_success_fct or !empty($c13y.correction_error_fct) or $c13y.show_correction_fct or $c13y.show_correction_bad_fct } + <br /> + {/if} + {$c13y.correction_msg|@nl2br} + {/if} + </label> + </td> + </tr> + {/foreach} + {/if} + </table> + + <p> + {if $c13y_show_submit_ignore} + <a href="#" onclick="SelectAll(document.getElementById('c13y')); return false;">{'Check all'|@translate}</a> + / <a href="#" onclick="DeselectAll(document.getElementById('c13y')); return false;">{'Uncheck all'|@translate}</a> + {/if} + {if isset($c13y_do_check)} + / <a href="#" onclick="DeselectAll(document.getElementById('c13y')); + {foreach from=$c13y_do_check item=ID} + document.getElementById('c13y_selection-{$ID}').checked = true; + {/foreach} + return false;">{'c13y_check_auto'|@translate}</a> + {/if} + </p> + + <p> + {if $c13y_show_submit_automatic_correction} + <input class="submit" type="submit" value="{'c13y_submit_correction'|@translate}" name="c13y_submit_correction" {$TAG_INPUT_ENABLED} /> + {/if} + {if $c13y_show_submit_ignore} + <input class="submit" type="submit" value="{'c13y_submit_ignore'|@translate}" name="c13y_submit_ignore" {$TAG_INPUT_ENABLED} /> + {/if} + <input class="submit" type="submit" value="{'c13y_submit_refresh'|@translate}" name="c13y_submit_refresh" /> + </p> + + </fieldset> + </form> + </ul> + </dd> diff --git a/BSF/template/yoga/admin/comments.tpl b/BSF/template/yoga/admin/comments.tpl new file mode 100644 index 000000000..84b1677c6 --- /dev/null +++ b/BSF/template/yoga/admin/comments.tpl @@ -0,0 +1,33 @@ +{* $Id$ *} +<div class="titrePage"> + <h2>{'waiting'|@translate} {$TABSHEET_TITLE}</h2> + {$TABSHEET} +</div> + +<h3>{'User comments validation'|@translate}</h3> + +{if !empty($comments) } +<form method="post" action="{$F_ACTION}"> + + {foreach from=$comments item=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" />{'Reject'|@translate}</label></li> + <li><label><input type="radio" name="action-{$comment.ID}" value="validate" />{'Validate'|@translate}</label></li> + </ul> + </div> + {/foreach} + + <p class="bottomButtons"> + <input type="hidden" name="list" value="{$LIST}" /> + <input class="submit" type="submit" name="submit" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="submit" name="validate-all" value="{'Validate All'|@translate}" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="submit" name="reject-all" value="{'Reject All'|@translate}" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="reset" value="{'Reset'|@translate}" /> + </p> + +</form> +{/if}
\ No newline at end of file diff --git a/BSF/template/yoga/admin/configuration.tpl b/BSF/template/yoga/admin/configuration.tpl new file mode 100644 index 000000000..04d8c7855 --- /dev/null +++ b/BSF/template/yoga/admin/configuration.tpl @@ -0,0 +1,179 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'title_configuration'|@translate} {$TABSHEET_TITLE}</h2> + {$TABSHEET} +</div> + +<form method="post" action="{$F_ACTION}" class="properties"> + +{if isset($main)} +<fieldset id="mainConf"> + <ul> + <li> + <span class="property"> + <label for="gallery_title">{'Gallery title'|@translate}</label> + </span> + <input type="text" maxlength="255" size="50" name="gallery_title" id="gallery_title" value="{$main.CONF_GALLERY_TITLE}" /> + </li> + + <li> + <span class="property"> + <label for="page_banner">{'Page banner'|@translate}</label> + </span> + <textarea class="description" name="page_banner" id="page_banner">{$main.CONF_PAGE_BANNER}</textarea> + </li> + + <li> + <span class="property"> + <label for="gallery_url">{'Gallery URL'|@translate}</label> + </span> + <input type="text" maxlength="255" size="50" name="gallery_url" id="gallery_url" value="{$main.CONF_GALLERY_URL}" /> + </li> + </ul> +</fieldset> + +<fieldset id="mainConfCheck"> + <ul> + + <li> + <label> + <span class="property">{'Lock gallery'|@translate}</span> + <input type="checkbox" name="gallery_locked" {if ($main.gallery_locked)}checked="checked"{/if} /> + </label> + </li> + + <li> + <label> + <span class="property">{'Rating'|@translate}</span> + <input type="checkbox" name="rate" {if ($main.rate)}checked="checked"{/if} /> + </label> + </li> + + <li> + <label> + <span class="property">{'Rating by guests'|@translate}</span> + <input type="checkbox" name="rate_anonymous" {if ($main.rate_anonymous)}checked="checked"{/if} /> + </label> + </li> + + <li> + <label> + <span class="property">{'Allow user registration'|@translate}</span> + <input type="checkbox" name="allow_user_registration" {if ($main.allow_user_registration)}checked="checked"{/if} /> + </label> + </li> + + <li> + <label> + <span class="property">{'obligatory_user_mail_address'|@translate}</span> + <input type="checkbox" name="obligatory_user_mail_address" {if ($main.obligatory_user_mail_address)}checked="checked"{/if} /> + </label> + </li> + + <li> + <label> + <span class="property">{'Email administrators when a new user registers'|@translate}</span> + <input type="checkbox" name="email_admin_on_new_user" {if ($main.email_admin_on_new_user)}checked="checked"{/if} /> + </label> + </li> + </ul> +</fieldset> +{/if} + +{if isset($history)} +<fieldset id="historyConf"> + <ul> + <li> + <label><span class="property">{'conf_history_guest'|@translate}</span><input type="checkbox" name="history_guest" {if ($history.history_guest)}checked="checked"{/if} /></label> + </li> + + <li> + <label><span class="property">{'conf_history_user'|@translate}</span><input type="checkbox" name="log" {if ($history.log)}checked="checked"{/if} /></label> + </li> + + <li> + <label><span class="property">{'conf_history_admin'|@translate}</span><input type="checkbox" name="history_admin" {if ($history.history_admin)}checked="checked"{/if} /></label> + </li> + </ul> +</fieldset> +{/if} + + +{if isset($comments)} +<fieldset id="commentsConf"> + <ul> + <li> + <label> + <span class="property">{'Comments for all'|@translate}</span> + <input type="checkbox" name="comments_forall" {if ($comments.comments_forall)}checked="checked"{/if} /> + </label> + </li> + + <li> + <span class="property"> + <label for="nb_comment_page">{'Number of comments per page'|@translate}</label> + </span> + <input type="text" size="3" maxlength="4" name="nb_comment_page" id="nb_comment_page" value="{$comments.NB_COMMENTS_PAGE}" /> + </li> + + <li> + <label> + <span class="property">{'Validation'|@translate}</span> + <input type="checkbox" name="comments_validation" {if ($comments.comments_validation)}checked="checked"{/if} /> + </label> + </li> + + + <li> + <label> + <span class="property">{'Email administrators when a valid comment is entered'|@translate}</span> + <input type="checkbox" name="email_admin_on_comment" {if ($comments.email_admin_on_comment)}checked="checked"{/if} /> + </label> + </li> + + <li> + <label> + <span class="property">{'Email administrators when a comment requires validation'|@translate}</span> + <input type="checkbox" name="email_admin_on_comment_validation" {if ($comments.email_admin_on_comment_validation)}checked="checked"{/if} /> + </label> + </li> + + </ul> +</fieldset> +{/if} + +{if isset($upload)} +<fieldset id="uploadConf"> + <ul> + <li> + <label><span class="property">{'Show upload link every time'|@translate}</span> + <input type="checkbox" name="upload_link_everytime" {if ($upload.upload_link_everytime)}checked="checked"{/if} /></label> + </li> + <li> + <label><span class="property">{'User access level to upload'|@translate}</span> + {html_options name="upload_user_access" options=$upload.upload_user_access_options selected=$upload.upload_user_access_options_selected} + </li> + <li> + <label> + <span class="property">{'Email administrators when a picture is uploaded'|@translate}</span> + <input type="checkbox" name="email_admin_on_picture_uploaded" {if ($upload.email_admin_on_picture_uploaded)}checked="checked"{/if} /> + </label> + </li> + </ul> +</fieldset> +{/if} + +{if isset($default)} +{$PROFILE_CONTENT} +{/if} + +{if !isset($default)} + <p> + <input class="submit" type="submit" name="submit" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED}> + <input class="submit" type="reset" name="reset" value="{'Reset'|@translate}"> + </p> +{/if} +</form> diff --git a/BSF/template/yoga/admin/default-layout.css b/BSF/template/yoga/admin/default-layout.css new file mode 100644 index 000000000..45e352606 --- /dev/null +++ b/BSF/template/yoga/admin/default-layout.css @@ -0,0 +1,245 @@ +/* $Id: */ +BODY#theAdminPage #theHeader P { + display: none; +} + +/* History tables */ +TABLE.table2 { + border: 1px solid black; + margin: 1em auto; + padding: 0; +} + +TABLE.table2 TD, TABLE.table2 TH { + padding: 0 0.8em; +} + +TABLE.table2 TR { + text-align: left; +} + +TABLE.table2 TR.throw { + text-align: center; +} + +.hour { + white-space: pre; +} + +.number { + text-align: right; +} + +TABLE#dailyStats { + width: 60%; +} + +TABLE#detailedStats { + width: 99%; +} + +/* categoryOrdering */ +SELECT.categoryList { + width: 100%; +} + +FORM#categoryOrdering { + padding-left: 1em; /* same as FIELDSET margin (there is no fieldset in this form) */ + padding-right: 1em; /* same as FIELDSET margin (there is no fieldset in this form) */ +} +FORM#categoryOrdering p { + text-align: left; + margin-top: 1em; + margin-bottom: 1em; +} +UL.categoryUl { + list-style: none; + padding: 0; + margin: 0; +} + +LI.categoryLi { + border: 1px solid gray; + padding: 0px 5px; + margin-bottom: 5px; +} + +FORM#categoryOrdering UL.categoryActions { + float: right; + margin-top: 5px; +} +/* */ + +FORM#catModify TABLE { width: auto; } + +FIELDSET.elementEdit A { + display: block; + float: right; +} + +TABLE.doubleSelect { + text-align: center; + margin: 0 auto; + width: 100%; +} + +TABLE.doubleSelect TD { + padding: 0 5px; + width: 50%; +} + +TABLE.doubleSelect SELECT.categoryList { + width: 100%; +} + +FORM#categoryPermissions LI { + display:inline; + white-space: nowrap; +} + +FIELDSET#mainConfCheck SPAN.property, +FIELDSET#historyConf SPAN.property, +FIELDSET#commentsConf SPAN.property, +FIELDSET#uploadConf SPAN.property { + float: right; + text-align: left; +} +FIELDSET#mainConfCheck INPUT, +FIELDSET#historyConf INPUT, +FIELDSET#commentsConf INPUT, +FIELDSET#uploadConf INPUT { + float: none; +} + +FIELDSET#mainConf SPAN.property { + width: 25%; +} +FIELDSET#mainConf TEXTAREA.description { + width: 70%; +} + +FIELDSET#mainConfCheck SPAN.property, +FIELDSET#historyConf SPAN.property { + width: 90%; +} +FIELDSET#mainConfCheck INPUT, +FIELDSET#historyConf INPUT, +FIELDSET#commentsConf INPUT, +FIELDSET#uploadConf SELECT, +FIELDSET#uploadConf INPUT { + margin-left: 5%; +} + +FIELDSET#commentsConf SPAN.property { + width: 85%; +} + +FIELDSET#uploadConf SPAN.property { + width: 75%; +} + +/* PWG Links Menu is fixed Graphic charts */ +.pwgmenu { + display: table; + list-style-type: none; + list-style-image: none; /* for firefox */ + white-space: nowrap; + position: relative; + text-decoration : none; + font-family: verdana, arial, helvetica, sans-serif; + font-size: 70%; + line-height: 1.1em; + width: 66em; + margin: 1px 8px 1px auto; + padding: 3px; + background: transparent; +} +.pwgmenu li { + float: left; + width: 10em !important; + text-align: center; + margin: 0 6px; + padding: 0; + +} +.pwgmenu a { + width: 9em !important; + display: block; + padding: 4px 8px; + background: #69c; /* PWG Graphic charts */ + color: white; + text-align: center; + text-decoration: none; + font-weight: bold; + border: 1px solid #fff; /* Why bordered? in case of #69c background */ +} +.pwgmenu a:hover { + background: #f92; + color: white; +} /* PWG Graphic charts */ + + +.statBar { + height: 10px; + background-color: #66f; + border: 1px solid black; +} + +/* Tabsheet */ +UL.tabsheet { + list-style: none; + white-space: nowrap; + text-decoration: none; + border-bottom: 1px solid #fff; + margin-left: 5px; margin-right: 5px; + padding: 3px 5px; +} + +UL.tabsheet LI { + display: inline; + margin: 0px 6px; + font-size: 120%; + font-weight: normal; + border: 1px solid #fff; + border-bottom: none; + padding: 3px 2em; +} + +UL.tabsheet LI.selected_tab { + font-weight: bold; + position: relative; + top: 1px; + padding-top: 4px; +} + +.over{ +position: relative; +z-index: 0; +} + +.over:hover{ +background-color: transparent; +z-index: 50; +} + +.over span{ /*CSS for enlarged image*/ +position: absolute; +background-color: #eee; +padding: 5px; +left: -1000px; +border: 1px solid #69c; +visibility: hidden; +color: black; +text-decoration: none; +} + +.over span img{ /*CSS for enlarged image*/ +border-width: 0; +padding: 2px; +} + +.over:hover span{ /*CSS for enlarged image on hover*/ +visibility: visible; +top: 0; +left: 60px; /*position where enlarged image should offset horizontally */ +} diff --git a/BSF/template/yoga/admin/double_select.tpl b/BSF/template/yoga/admin/double_select.tpl new file mode 100644 index 000000000..aeed8500a --- /dev/null +++ b/BSF/template/yoga/admin/double_select.tpl @@ -0,0 +1,20 @@ +{* $Id$ *} +<table class="doubleSelect"> + <tr> + <td> + <h3>{$L_CAT_OPTIONS_TRUE}</h3> + <select class="categoryList" name="cat_true[]" multiple="multiple" size="30"> + {html_options options=$category_option_true selected=$category_option_true_selected} + </select> + <p><input class="submit" type="submit" value="»" name="falsify" style="font-size:15px;" {$TAG_INPUT_ENABLED}/></p> + </td> + + <td> + <h3>{$L_CAT_OPTIONS_FALSE}</h3> + <select class="categoryList" name="cat_false[]" multiple="multiple" size="30"> + {html_options options=$category_option_false selected=$category_option_false_selected} + </select> + <p><input class="submit" type="submit" value="«" name="trueify" style="font-size:15px;" {$TAG_INPUT_ENABLED}/></p> + </td> + </tr> +</table> diff --git a/BSF/template/yoga/admin/element_set_global.tpl b/BSF/template/yoga/admin/element_set_global.tpl new file mode 100644 index 000000000..fc5a92e70 --- /dev/null +++ b/BSF/template/yoga/admin/element_set_global.tpl @@ -0,0 +1,190 @@ +{* $Id$ *} + +<h2>{'Batch management'|@translate}</h2> + +<h3>{$CATEGORIES_NAV}</h3> + +{if !empty($thumbnails)} + <p style="text-align:center;"> + {'global mode'|@translate} + | <a href="{$U_UNIT_MODE}">{'unit mode'|@translate}</a> + </p> + + <fieldset> + + <legend>{'Display options'|@translate}</legend> + + <p>{'elements per page'|@translate}: + <a href="{$U_DISPLAY}&display=20">20</a> + | <a href="{$U_DISPLAY}&display=50">50</a> + | <a href="{$U_DISPLAY}&display=100">100</a> + | <a href="{$U_DISPLAY}&display=all">{'all'|@translate}</a> + </p> + + </fieldset> + + <form action="{$F_ACTION}" method="post"> + + <fieldset> + + <legend>{'Elements'|@translate}</legend> + + {if !empty($NAV_BAR)}<div class="navigationBar">{$NAV_BAR}</div>{/if} + + {if !empty($thumbnails)} + <ul class="thumbnails"> + {foreach from=$thumbnails item=thumbnail} + <li><span class="wrap1"> + <label> + <span class="wrap2"> + {if $thumbnail.LEVEL > 0} + <em class="levelIndicatorB">{$thumbnail.LEVEL}</em> + <em class="levelIndicatorF" title="{$pwg->l10n($pwg->sprintf('Level %d',$thumbnail.LEVEL))}">{$thumbnail.LEVEL}</em> + {/if} + <span> + <img src="{$thumbnail.TN_SRC}" + alt="{$thumbnail.FILE}" + title="{$thumbnail.TITLE}" + class="thumbnail" /> + </span></span> + <input type="checkbox" name="selection[]" value="{$thumbnail.ID}" /> + </label> + </span> + </li> + {/foreach} + </ul> + {/if} + + </fieldset> + + <fieldset> + + <legend>{'Form'|@translate}</legend> + + <table> + + <tr> + <td>{'associate to category'|@translate}</td> + <td> + <select style="width:400px" name="associate" size="1"> + <option value="0">------------</option> + {html_options options=$associate_options } + </select> + </td> + </tr> + + <tr> + <td>{'dissociate from category'|@translate}</td> + <td> + <select style="width:400px" name="dissociate" size="1"> + <option value="0">------------</option> + {if !empty($dissociate_options)}{html_options options=$dissociate_options }{/if} + </select> + </td> + </tr> + + <tr> + <td>{'add tags'|@translate}</td> + <td>{if !empty($ADD_TAG_SELECTION)}{$ADD_TAG_SELECTION}{else}<p>{'No tag defined. Use Administration>Pictures>Tags'|@translate}</p>{/if}</td> + </tr> + + {if !empty($DEL_TAG_SELECTION)} + <tr> + <td>{'remove tags'|@translate}</td> + <td>{$DEL_TAG_SELECTION}</td> + </tr> + {/if} + + <tr> + <td>{'Author'|@translate}</td> + <td> + <label><input type="radio" name="author_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="author_action" value="unset" /> {'unset'|@translate}</label> + <label><input type="radio" name="author_action" value="set" id="author_action_set" /> {'set to'|@translate}</label> + <input onchange="document.getElementById('author_action_set').checked = true;" type="text" name="author" value="" /> + </td> + </tr> + + <tr> + <td>{'title'|@translate}</td> + <td> + <label><input type="radio" name="name_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="name_action" value="unset" /> {'unset'|@translate}</label> + <label><input type="radio" name="name_action" value="set" id="name_action_set" /> {'set to'|@translate}</label> + <input onchange="document.getElementById('name_action_set').checked = true;" type="text" name="name" value="" /> + </td> + </tr> + + <tr> + <td>{'Creation date'|@translate}</td> + <td> + <label><input type="radio" name="date_creation_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="date_creation_action" value="unset" /> {'unset'|@translate}</label> + <label><input type="radio" name="date_creation_action" value="set" id="date_creation_action_set" /> {'set to'|@translate}</label> + <select onchange="document.getElementById('date_creation_action_set').checked = true;" name="date_creation_day"> + <option value="0">--</option> + {section name=day start=1 loop=32} + <option value="{$smarty.section.day.index}" {if $smarty.section.day.index==$DATE_CREATION_DAY}selected="selected"{/if}>{$smarty.section.day.index}</option> + {/section} + </select> + <select onchange="document.getElementById('date_creation_action_set').checked = true;" name="date_creation_month"> + {html_options options=$month_list selected=$DATE_CREATION_MONTH} + </select> + <input onchange="document.getElementById('date_creation_action_set').checked = true;" + name="date_creation_year" + type="text" + size="4" + maxlength="4" + value="{$DATE_CREATION_YEAR}" /> + </td> + </tr> + + <tr> + <td>{'Minimum privacy level'|@translate}</td> + <td> + <label><input type="radio" name="level_action" value="leave" checked="checked" />{'leave'|@translate}</label> + <label><input type="radio" name="level_action" value="set" id="level_action_set" />{'set to'|@translate}</label> + <select onchange="document.getElementById('level_action_set').checked = true;" name="level" size="1"> + {html_options options=$level_options} + </select> + </td> + </tr> + + </table> + + <p> + {'target'|@translate} + <label><input type="radio" name="target" value="all" /> {'all'|@translate}</label> + <label><input type="radio" name="target" value="selection" checked="checked" /> {'selection'|@translate}</label> + </p> + + + <p><input class="submit" type="submit" value="{'Submit'|@translate}" name="submit" {$TAG_INPUT_ENABLED}/></p> + + </fieldset> + + <fieldset> + + <legend>{'Caddie management'|@translate}</legend> + + <ul style="list-style-type:none;"> + {if ($IN_CADDIE)} + <li><label><input type="radio" name="caddie_action" value="empty_all" /> {'Empty caddie'|@translate}</label></li> + <li><label><input type="radio" name="caddie_action" value="empty_selected" /> {'Take selected elements out of caddie'|@translate}</label></li> + {else} + <li><label><input type="radio" name="caddie_action" value="add_selected" /> {'Add selected elements to caddie'|@translate}</label></li> + {/if} + + <li><label><input type="radio" name="caddie_action" value="export" /> {'Export data'|@translate}</label></li> + + </ul> + + <p><input class="submit" type="submit" value="{'Submit'|@translate}" name="submit_caddie" /></p> + + </fieldset> + + </form> + +{else} + <div class="infos"><p>{'Caddie is currently empty'|@translate}</p></div> +{/if} diff --git a/BSF/template/yoga/admin/element_set_unit.tpl b/BSF/template/yoga/admin/element_set_unit.tpl new file mode 100644 index 000000000..34366fada --- /dev/null +++ b/BSF/template/yoga/admin/element_set_unit.tpl @@ -0,0 +1,93 @@ +{* $Id$ *} + +<h2>{'Batch management'|@translate}</h2> + +<h3>{$CATEGORIES_NAV}</h3> + +<p style="text-align:center;"> + <a href="{$U_GLOBAL_MODE}">{'global mode'|@translate}</a> + | {'unit mode'|@translate} +</p> + +<form action="{$F_ACTION}" method="POST"> +<fieldset> + <legend>{'Display options'|@translate}</legend> + <p>{'elements per page'|@translate} : + <a href="{$U_ELEMENTS_PAGE}&display=5">5</a> + | <a href="{$U_ELEMENTS_PAGE}&display=10">10</a> + | <a href="{$U_ELEMENTS_PAGE}&display=50">50</a> + | <a href="{$U_ELEMENTS_PAGE}&display=all">{'all'|@translate}</a> + </p> + +</fieldset> + +{if !empty($NAV_BAR) } +<div class="navigationBar">{$NAV_BAR}</div> +{/if} + +{if !empty($elements) } +<input type="hidden" name="element_ids" value="{$ELEMENT_IDS}" /> +{foreach from=$elements item=element} +<fieldset class="elementEdit"> + <legend>{$element.LEGEND}</legend> + + <a href="{$element.U_EDIT}"><img src="{$element.TN_SRC}" alt="" title="{'Edit all picture informations'|@translate}" /></a> + + <table> + + <tr> + <td><strong>{'Name'|@translate}</strong></td> + <td><input type="text" name="name-{$element.ID}" value="{$element.NAME}" /></td> + </tr> + + <tr> + <td><strong>{'Author'|@translate}</strong></td> + <td><input type="text" name="author-{$element.ID}" value="{$element.AUTHOR}" /></td> + </tr> + + <tr> + <td><strong>{'Creation date'|@translate}</strong></td> + <td> + <label><input type="radio" name="date_creation_action-{$element.ID}" value="unset" /> {'unset'|@translate}</label> + <label><input type="radio" name="date_creation_action-{$element.ID}" value="set" id="date_creation_action_set-{$element.ID}" /> {'set to'|@translate}</label> + + <select onmousedown="document.getElementById('date_creation_action_set-{$element.ID}').checked = true;" name="date_creation_day-{$element.ID}"> + <option value="0">--</option> + {section name=day start=1 loop=32} + <option value="{$smarty.section.day.index}" {if $smarty.section.day.index==$element.DATE_CREATION_DAY}selected="selected"{/if}>{$smarty.section.day.index}</option> + {/section} + </select> + <select onmousedown="document.getElementById('date_creation_action_set-{$element.ID}').checked = true;" name="date_creation_month-{$element.ID}"> + {html_options options=$month_list selected=$element.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>{'Tags'|@translate}</strong></td> + <td>{$element.TAG_SELECTION}</td> + </tr> + + <tr> + <td><strong>{'Description'|@translate}</strong></td> + <td><textarea name="description-{$element.ID}" class="description">{$element.DESCRIPTION}</textarea></td> + </tr> + + </table> + +</fieldset> +{/foreach} + +<p> + <input class="submit" type="submit" value="{'Submit'|@translate}" name="submit" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="reset" value="{'Reset'|@translate}" /> +</p> +{/if} + +</form> diff --git a/BSF/template/yoga/admin/group_list.tpl b/BSF/template/yoga/admin/group_list.tpl new file mode 100644 index 000000000..274445f4b --- /dev/null +++ b/BSF/template/yoga/admin/group_list.tpl @@ -0,0 +1,46 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'title_groups'|@translate}</h2> +</div> + +<form method="post" name="add_user" action="{$F_ADD_ACTION}" class="properties"> + <fieldset> + <legend>{'Add group'|@translate}</legend> + + <span class="property"> + <label for="groupname">{'Group name'|@translate}</label> + </span> + <input type="text" id="groupname" name="groupname" maxlength="50" size="20" /> + + <p> + <input class="submit" type="submit" name="submit_add" value="{'Add'|@translate}" {$TAG_INPUT_ENABLED}/> + </p> + </fieldset> +</form> + +<table class="table2"> + <tr class="throw"> + <th>{'Group name'|@translate}</th> + <th>{'Members'|@translate}</th> + <th>{'Actions'|@translate}</th> + </tr> + {if not empty($groups)} + {foreach from=$groups item=group name=group_loop} + <tr class="{if $smarty.foreach.group_loop.index is odd}row1{else}row2{/if}"> + <td>{$group.NAME}<i><small>{$group.IS_DEFAULT}</small></i></td> + <td><a href="{$group.U_MEMBERS}">{$group.MEMBERS}</a></td> + <td style="text-align:center;"> + <a href="{$group.U_PERM}"> + <img src="{$ROOT_URL}{$themeconf.icon_dir}/permissions.png" class="button" style="border:none" id="btn_permissions" alt="{'permissions'|@translate}" title="{'permissions'|@translate}" /></a> + <a href="{$group.U_DELETE}" onclick="return confirm( document.getElementById('btn_delete').title + '\n\n' + '{'Are you sure?'|@translate|@escape:'javascript'}');"> + <img src="{$ROOT_URL}{$themeconf.icon_dir}/delete.png" class="button" style="border:none" id="btn_delete" alt="{'delete'|@translate}" title="{'delete'|@translate}" {$TAG_INPUT_ENABLED}/></a> + <a href="{$group.U_ISDEFAULT}" onclick="return confirm( document.getElementById('btn_toggle_is_default_group').title + '\n\n' + '{'Are you sure?'|@translate|@escape:'javascript'}');"> + <img src="{$ROOT_URL}{$themeconf.icon_dir}/toggle_is_default_group.png" class="button" style="border:none" id="btn_toggle_is_default_group" alt="{'toggle_is_default_group'|@translate}" title="{'toggle_is_default_group'|@translate}" {$TAG_INPUT_ENABLED}/></a> + </td> + </tr> + {/foreach} + {/if} +</table> diff --git a/BSF/template/yoga/admin/group_perm.tpl b/BSF/template/yoga/admin/group_perm.tpl new file mode 100644 index 000000000..1dded1291 --- /dev/null +++ b/BSF/template/yoga/admin/group_perm.tpl @@ -0,0 +1,8 @@ +{* $Id *} +<h2>{$TITLE}</h2> + +<form method="post" action="{$F_ACTION}"> + {$DOUBLE_SELECT} +</form> + +<p>{'Only private categories are listed'|@translate}</p> diff --git a/BSF/template/yoga/admin/history.tpl b/BSF/template/yoga/admin/history.tpl new file mode 100644 index 000000000..a8b7701dc --- /dev/null +++ b/BSF/template/yoga/admin/history.tpl @@ -0,0 +1,151 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li> + <a + href="{$U_HELP}" + onclick="popuphelp(this.href); return false;" + title="{'Help'|@translate}" + > + <img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"> + </a> + </li> + </ul> + <h2>{'History'|@translate} {$TABSHEET_TITLE}</h2> + {$TABSHEET} +</div> + +<form class="filter" method="post" name="filter" action="{$F_ACTION}"> +<fieldset> + <legend>{'Filter'|@translate}</legend> + <ul> + <li><label>{'search_date_from'|@translate}</label></li> + <li> + <select name="start_day"> + <option value="0">--</option> + {section name=day start=1 loop=32} + <option value="{$smarty.section.day.index}" {if $smarty.section.day.index==$START_DAY_SELECTED}selected="selected"{/if}>{$smarty.section.day.index}</option> + {/section} + </select> + <select name="start_month"> + {html_options options=$month_list selected=$START_MONTH_SELECTED} + </select> + <input name="start_year" value="{$START_YEAR}" type="text" size="4" maxlength="4" > + </li> + </ul> + <ul> + <li><label>{'search_date_to'|@translate}</label></li> + <li> + <select name="end_day"> + <option value="0">--</option> + {section name=day start=1 loop=32} + <option value="{$smarty.section.day.index}" {if $smarty.section.day.index==$END_DAY_SELECTED}selected="selected"{/if}>{$smarty.section.day.index}</option> + {/section} + </select> + <select name="end_month"> + {html_options options=$month_list selected=$END_MONTH_SELECTED} + </select> + <input name="end_year" value="{$END_YEAR}" type="text" size="4" maxlength="4" > + </li> + </ul> + + <label> + {'Element type'|@translate} + <select name="types[]" multiple="multiple" size="4"> + {html_options values=$type_option_values output=$type_option_values|translate selected=$type_option_selected} + </select> + </label> + + <label> + {'User'|@translate} + <select name="user"> + <option value="-1">------------</option> + {html_options options=$user_options selected=$user_options_selected} + </select> + </label> + + <label> + {'Image id'|@translate} + <input name="image_id" value="{$IMAGE_ID}" type="text" size="5"> + </label> + + <label> + {'File name'|@translate} + <input name="filename" value="{$FILENAME}" type="text"> + </label> + + <input class="submit" type="submit" name="submit" value="{'Submit'|@translate}" /> +</fieldset> +<fieldset> + <legend>{'Display'|@translate}</legend> + <ul> + <li> + {'Thumbnails'|@translate} + <select name="display_thumbnail"> + {html_options values=$display_thumbnail_values output=$display_thumbnail_values|translate selected=$display_thumbnail_selected} + </select> + </li> + </ul> +</fieldset> +</form> + +{if isset($search_summary)} +<fieldset> + <legend>{'Summary'|@translate}</legend> + + <ul> + <li>{$search_summary.NB_LINES}, {$search_summary.FILESIZE}</li> + <li> + {$search_summary.USERS} + <ul> + <li>{$search_summary.MEMBERS}</li> + <li>{$search_summary.GUESTS}</li> + </ul> + </li> + </ul> +</fieldset> +{/if} + + +{if !empty($NAV_BAR)} +<div class="navigationBar"> + {$NAV_BAR} +</div> +{/if} + + +<table class="table2" id="detailedStats"> +<tr class="throw"> + <th>{'Date'|@translate}</th> + <th>{'time'|@translate}</th> + <th>{'user'|@translate}</th> + <th>{'IP'|@translate}</th> + <th>{'image'|@translate}</th> + <th>{'Element type'|@translate}</th> + <th>{'section'|@translate}</th> + <th>{'category'|@translate}</th> + <th>{'tags'|@translate}</th> +</tr> +{if !empty($search_results) } +{foreach from=$search_results item=detail name=res_loop} +<tr class="{if $smarty.foreach.res_loop.index is odd}row1{else}row2{/if}"> + <td class="hour">{$detail.DATE}</td> + <td class="hour">{$detail.TIME}</td> + <td>{$detail.USER}</td> + <td>{$detail.IP}</td> + <td>{$detail.IMAGE}</td> + <td>{$detail.TYPE}</td> + <td>{$detail.SECTION}</td> + <td>{$detail.CATEGORY}</td> + <td>{$detail.TAGS}</td> +</tr> +{/foreach} +{/if} +</table> + + +{if !empty($NAV_BAR)} +<div class="navigationBar"> + {$NAV_BAR} +</div> +{/if} diff --git a/BSF/template/yoga/admin/index.php b/BSF/template/yoga/admin/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/admin/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/admin/intro.tpl b/BSF/template/yoga/admin/intro.tpl new file mode 100644 index 000000000..069940ecf --- /dev/null +++ b/BSF/template/yoga/admin/intro.tpl @@ -0,0 +1,46 @@ +{* $Id$ *} +<h2>{'title_default'|@translate}</h2> +<dl> + <dt>{'Piwigo version'|@translate}</dt> + <dd> + <ul> + <li>Piwigo {$PWG_VERSION}</li> + <li><a href="{$U_CHECK_UPGRADE}">{'Check for upgrade'|@translate}</a></li> + </ul> + </dd> + + <dt>{'Environment'|@translate}</dt> + <dd> + <ul> + <li>{'Operating system'|@translate}: {$OS}</li> + <li>PHP: {$PHP_VERSION} (<a href="{$U_PHPINFO}">{'Show info'|@translate}</a>) [{$PHP_DATATIME}]</li> + <li>MySQL: {$MYSQL_VERSION} [{$DB_DATATIME}]</li> + </ul> + </dd> + + <dt>{'Database'|@translate}</dt> + <dd> + <ul> + <li> + {$DB_ELEMENTS} + {if isset($waiting)} + (<a href="{$waiting.URL}">{$waiting.INFO}</a>) + {/if} + + {if isset($first_added)} + ({$first_added.DB_DATE}) + {/if} + </li> + <li>{$DB_CATEGORIES} ({$DB_IMAGE_CATEGORY})</li> + <li>{$DB_TAGS} ({$DB_IMAGE_TAG})</li> + <li>{$DB_USERS}</li> + <li>{$DB_GROUPS}</li> + <li> + {$DB_COMMENTS} + {if isset($unvalidated)} + (<a href="{$unvalidated.URL}">{$unvalidated.INFO}</a>) + {/if} + </li> + </ul> + </dd> +</dl> diff --git a/BSF/template/yoga/admin/maintenance.tpl b/BSF/template/yoga/admin/maintenance.tpl new file mode 100644 index 000000000..59cf4ff82 --- /dev/null +++ b/BSF/template/yoga/admin/maintenance.tpl @@ -0,0 +1,25 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'Maintenance'|@translate}</h2> +</div> + +<ul> + <li><a href="{$U_MAINT_CATEGORIES}" {$TAG_INPUT_ENABLED}>{'update categories informations'|@translate}</a></li> + <li><a href="{$U_MAINT_IMAGES}" {$TAG_INPUT_ENABLED}>{'update images informations'|@translate}</a></li> + <li><a href="{$U_MAINT_DATABASE}" {$TAG_INPUT_ENABLED}>{'repair and optimize database'|@translate}</a></li> +</ul> + +<ul> + <li><a href="{$U_MAINT_HISTORY_DETAIL}" onclick="return confirm('{'Are you sure?'|@translate}');" {$TAG_INPUT_ENABLED}>{'purge history detail'|@translate}</a></li> + <li><a href="{$U_MAINT_HISTORY_SUMMARY}" onclick="return confirm('{'Are you sure?'|@translate}');" {$TAG_INPUT_ENABLED}>{'purge history summary'|@translate}</a></li> + <li><a href="{$U_MAINT_SESSIONS}" {$TAG_INPUT_ENABLED}>{'purge sessions'|@translate}</a></li> + <li><a href="{$U_MAINT_FEEDS}" {$TAG_INPUT_ENABLED}>{'purge never used notification feeds'|@translate}</a></li> + <li><a href="{$U_MAINT_COMPILED_TEMPLATES}" {$TAG_INPUT_ENABLED}>{'Purge compiled templates'|@translate}</a></li> +</ul> + +<ul> + <li><a href="{$U_MAINT_C13Y}" {$TAG_INPUT_ENABLED}>{'c13y_maintenance'|@translate}</a></li> +</ul> diff --git a/BSF/template/yoga/admin/notification_by_mail.tpl b/BSF/template/yoga/admin/notification_by_mail.tpl new file mode 100644 index 000000000..eb5e2a0f9 --- /dev/null +++ b/BSF/template/yoga/admin/notification_by_mail.tpl @@ -0,0 +1,124 @@ +{* $Id$ *} + +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'nbm_send_mail_to_users'|@translate} {$TABSHEET_TITLE}</h2> + {$TABSHEET} +</div> + +<form method="post" name="notification_by_mail" id="notification_by_mail" action="{$F_ACTION}"> + {if isset($REPOST_SUBMIT_NAME)} + <fieldset> + <div class="infos"> + <input class="submit" type="submit" value="{'nbm_repost_submit'|@translate}" name="{$REPOST_SUBMIT_NAME}" {$TAG_INPUT_ENABLED}/> + </div> + </fieldset> + {/if} + + {if isset($param)} + <fieldset> + <legend>{'nbm_title_param'|@translate}</legend> + <table> + <tr> + <td><label>{'nbm_send_html_mail'|@translate}</label></td> + <td> + <label><input type="radio" name="nbm_send_html_mail" value="true" {if $param.SEND_HTML_MAIL}checked="checked"{/if}/>{'Yes'|@translate}</label> + <label><input type="radio" name="nbm_send_html_mail" value="false" {if not $param.SEND_HTML_MAIL}checked="checked"{/if}/>{'No'|@translate}</label> + </td> + </tr> + <tr> + <td> + <label for="send_mail_as">{'nbm_send_mail_as'|@translate}</label> + <br/><i><small>{'nbm_info_send_mail_as'|@translate}</small></i> + </td> + <td><input type="text" maxlength="35" size="35" name="nbm_send_mail_as" id="send_mail_as" value="{$param.SEND_MAIL_AS}"/></td> + </tr> + <tr> + <td><label>{'nbm_send_detailed_content'|@translate}</label></td> + <td> + <label><input type="radio" name="nbm_send_detailed_content" value="true" {if $param.SEND_DETAILED_CONTENT}checked="checked"{/if}/>{'Yes'|@translate}</label> + <label><input type="radio" name="nbm_send_detailed_content" value="false" {if not $param.SEND_DETAILED_CONTENT}checked="checked"{/if}/>{'No'|@translate}</label> + </td> + </tr> + <tr> + <td><label for="complementary_mail_content">{'nbm_complementary_mail_content'|@translate}</label></td> + <td><textarea cols="50" rows="5" name="nbm_complementary_mail_content" id="complementary_mail_content">{$param.COMPLEMENTARY_MAIL_CONTENT}</textarea></td> + </tr> + <tr> + <td> + <label>{'nbm_send_recent_post_dates'|@translate}</label> + <br/><i><small>{'nbm_info_send_recent_post_dates'|@translate}</small></i> + </td> + <td> + <label><input type="radio" name="nbm_send_recent_post_dates" value="true" {if $param.SEND_RECENT_POST_DATES}checked="checked"{/if}/>{'Yes'|@translate}</label> + <label><input type="radio" name="nbm_send_recent_post_dates" value="false" {if not $param.SEND_RECENT_POST_DATES}checked="checked"{/if}/>{'No'|@translate}</label> + </td> + </tr> + </table> + </fieldset> + + <p> + <input class="submit" type="submit" value="{'Submit'|@translate}" name="param_submit" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="reset" value="{'Reset'|@translate}" name="param_reset"/> + </p> + {/if}{* isset $param*} + + {if isset($subscribe)} + <fieldset> + <legend>{'nbm_title_subscribe'|@translate}</legend> + <p><i>{'nbm_warning_subscribe_unsubscribe'|@translate}</i></p> + {$DOUBLE_SELECT} + </fieldset> + {/if}{* isset $subscribe*} + + {if isset($send)} + {if empty($send.users)} + <p>{'nbm_no_user_available_to_send_L1'|@translate}</p> + <p> + {'nbm_no_user_available_to_send_L2'|@translate}<br> + {'nbm_no_user_available_to_send_L3'|@translate} + </p> + {else} + <fieldset> + <legend>{'nbm_title_send'|@translate}</legend> + <table class="table2"> + <tr class="throw"> + <th>{'nbm_col_user'|@translate}</th> + <th>{'nbm_col_mail'|@translate}</th> + <th>{'nbm_col_last_send'|@translate}</th> + <th>{'nbm_col_check_user_send_mail'|@translate}</th> + </tr> + {foreach from=$send.users item=u name=user_loop} + <tr class="{if $smarty.foreach.user_loop.index is odd}row1{else}row2{/if}"> + <td><label for="send_selection-{$u.ID}">{$u.USERNAME}</label></td> + <td><label for="send_selection-{$u.ID}">{$u.EMAIL}</label></td> + <td><label for="send_selection-{$u.ID}">{$u.LAST_SEND}</label></td> + <td><input type="checkbox" name="send_selection[]" value="{$u.ID}" {$u.CHECKED} id="send_selection-{$u.ID}"/></td> + </tr> + {/foreach} + </table> + <p> + <a href="#" onclick="SelectAll(document.getElementById('notification_by_mail')); return false;">{'Check all'|@translate}</a> + / <a href="#" onclick="DeselectAll(document.getElementById('notification_by_mail')); return false;">{'Uncheck all'|@translate}</a> + </p> + </fieldset> + + <fieldset> + <legend>{'nbm_send_options'|@translate}</legend> + <table> + <tr> + <td><label for="send_customize_mail_content">{'nbm_send_complementary_mail_content'|@translate}</label></td> + <td><textarea cols="50" rows="5" name="send_customize_mail_content" id="send_customize_mail_content">{$send.CUSTOMIZE_MAIL_CONTENT}</textarea></td> + </tr> + </table> + </fieldset> + + <p> + <input class="submit" type="submit" value="{'nbm_send_submit'|@translate}" name="send_submit" {$TAG_INPUT_ENABLED}/> + </p> + {/if} + {/if}{* isset $send*} + +</form> diff --git a/BSF/template/yoga/admin/permalinks.tpl b/BSF/template/yoga/admin/permalinks.tpl new file mode 100644 index 000000000..f6a1d72ac --- /dev/null +++ b/BSF/template/yoga/admin/permalinks.tpl @@ -0,0 +1,70 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'Permalinks'|@translate}</h2> +</div> + +<form method="post" action="{$F_ACTION}"> +<fieldset><legend>{'Add/delete a permalink'|@translate}</legend> + <label>{'Category'|@translate}: + <select name="cat_id"> + <option value="0">------</option> + {html_options options=$categories selected=$categories_selected} + </select> + </label> + + <label>{'Permalink'|@translate}: + <input name="permalink" /> + </label> + + <label>{'Save to permalink history'|@translate}: + <input type="checkbox" name="save" checked="checked" /> + </label> + + <p> + <input type="submit" class="submit" name="set_permalink" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED}/> + </p> + </fieldset> +</form> + +<h3>{'Permalinks'|@translate}</h3> +<table class="table2"> + <tr class="throw"> + <td>Id {$SORT_ID}</td> + <td>{'Category'|@translate} {$SORT_NAME}</td> + <td>{'Permalink'|@translate} {$SORT_PERMALINK}</td> + </tr> +{foreach from=$permalinks item=permalink name="permalink_loop"} + <tr class="{if $smarty.foreach.permalink_loop.index is odd}row1{else}row2{/if}"> + <td>{$permalink.id}</td> + <td>{$permalink.name}</td> + <td>{$permalink.permalink}</td> + </tr> +{/foreach} +</table> + +<h3>{'Permalink history'|@translate} <a name="old_permalinks"></a></h3> +<table class="table2"> + <tr class="throw"> + <td>Id {$SORT_OLD_CAT_ID}</td> + <td>{'Category'|@translate}</td> + <td>{'Permalink'|@translate} {$SORT_OLD_PERMALINK}</td> + <td>Deleted on {$SORT_OLD_DATE_DELETED}</td> + <td>Last hit {$SORT_OLD_LAST_HIT}</td> + <td>Hit {$SORT_OLD_HIT}</td> + <td></td> + </tr> +{foreach from=$deleted_permalinks item=permalink} + <tr> + <td>{$permalink.cat_id}</td> + <td>{$permalink.name}</td> + <td>{$permalink.permalink}</td> + <td>{$permalink.date_deleted}</td> + <td>{$permalink.last_hit}</td> + <td>{$permalink.hit}</td> + <td><a href="{$permalink.U_DELETE}" {$TAG_INPUT_ENABLED}><img src="{$ROOT_URL}{$themeconf.icon_dir}/delete.png" alt="[{'delete'|@translate}]" class="button"></a></td> + </tr> +{/foreach} +</table> diff --git a/BSF/template/yoga/admin/picture_modify.tpl b/BSF/template/yoga/admin/picture_modify.tpl new file mode 100644 index 000000000..f6243acb9 --- /dev/null +++ b/BSF/template/yoga/admin/picture_modify.tpl @@ -0,0 +1,190 @@ +{* $Id$ *} +<h2>{'title_picmod'|@translate}</h2> + +<img src="{$TN_SRC}" alt="{'thumbnail'|@translate}" class="thumbnail" /> + +<ul class="categoryActions"> + {if isset($U_JUMPTO) } + <li><a href="{$U_JUMPTO}" title="{'jump to image'|@translate}"><img src="{$themeconf.icon_dir}/category_jump-to.png" class="button" alt="{'jump to image'|@translate}" /></a></li> + {/if} + <li><a href="{$U_SYNC}" title="{'synchronize metadata'|@translate}" {$TAG_INPUT_ENABLED}><img src="{$themeconf.icon_dir}/sync_metadata.png" class="button" alt="{'synchronize'|@translate}" /></a></li> +</ul> + +<form action="{$F_ACTION}" method="post" id="properties"> + + <fieldset> + <legend>{'Informations'|@translate}</legend> + + <table> + + <tr> + <td><strong>{'Path'|@translate}</strong></td> + <td>{$PATH}</td> + </tr> + + <tr> + <td><strong>{'Post date'|@translate}</strong></td> + <td>{$REGISTRATION_DATE}</td> + </tr> + + <tr> + <td><strong>{'Dimensions'|@translate}</strong></td> + <td>{$DIMENSIONS}</td> + </tr> + + <tr> + <td><strong>{'Filesize'|@translate}</strong></td> + <td>{$FILESIZE}</td> + </tr> + +{if isset($HIGH_FILESIZE) } + <tr> + <td><strong>{'High filesize'|@translate}</strong></td> + <td>{$HIGH_FILESIZE}</td> + </tr> +{/if} + + <tr> + <td><strong>{'Storage category'|@translate}</strong></td> + <td>{$STORAGE_CATEGORY}</td> + </tr> + + {if isset($related_categories) } + <tr> + <td><strong>{'Linked categories'|@translate}</strong></td> + <td> + <ul> + {foreach from=$related_categories item=name} + <li>{$name}</li> + {/foreach} + </ul> + </td> + </tr> + {/if} + + </table> + + </fieldset> + + <fieldset> + <legend>{'Properties'|@translate}</legend> + + <table> + + <tr> + <td><strong>{'Name'|@translate}</strong></td> + <td><input type="text" name="name" value="{$NAME}" /></td> + </tr> + + <tr> + <td><strong>{'Author'|@translate}</strong></td> + <td><input type="text" name="author" value="{$AUTHOR}" /></td> + </tr> + + <tr> + <td><strong>{'Creation date'|@translate}</strong></td> + <td> + <label><input type="radio" name="date_creation_action" value="unset" /> {'unset'|@translate}</label> + <input type="radio" name="date_creation_action" value="set" id="date_creation_action_set" /> {'set to'|@translate} + <select onmousedown="document.getElementById('date_creation_action_set').checked = true;" name="date_creation_day"> + <option value="0">--</option> + {section name=day start=1 loop=32} + <option value="{$smarty.section.day.index}" {if $smarty.section.day.index==$DATE_CREATION_DAY_VALUE}selected="selected"{/if}>{$smarty.section.day.index}</option> + {/section} + </select> + <select onmousedown="document.getElementById('date_creation_action_set').checked = true;" name="date_creation_month"> + {html_options options=$month_list selected=$DATE_CREATION_MONTH_VALUE} + </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>{'Tags'|@translate}</strong></td> + <td>{$TAG_SELECTION}</td> + </tr> + + + <tr> + <td><strong>{'Description'|@translate}</strong></td> + <td><textarea name="description" class="description">{$DESCRIPTION}</textarea></td> + </tr> + + <tr> + <td><strong>{'Minimum privacy level'|@translate}</strong></td> + <td> + <select name="level" size="1"> + {html_options options=$level_options selected=$level_options_selected} + </select> + </td> + </tr> + + </table> + + <p style="text-align:center;"> + <input class="submit" type="submit" value="{'Submit'|@translate}" name="submit" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="reset" value="{'Reset'|@translate}" name="reset" /> + </p> + + </fieldset> + +</form> + +<form id="associations" method="post" action="{$F_ACTION}#associations"> + <fieldset> + <legend>{'Association to categories'|@translate}</legend> + + <table class="doubleSelect"> + <tr> + <td> + <h3>{'Associated'|@translate}</h3> + <select class="categoryList" name="cat_associated[]" multiple="multiple" size="30"> + {html_options options=$associated_options} + </select> + <p><input class="submit" type="submit" value="»" name="dissociate" style="font-size:15px;" {$TAG_INPUT_ENABLED}/></p> + </td> + + <td> + <h3>{'Dissociated'|@translate}</h3> + <select class="categoryList" name="cat_dissociated[]" multiple="multiple" size="30"> + {html_options options=$dissociated_options} + </select> + <p><input class="submit" type="submit" value="«" name="associate" style="font-size:15px;" {$TAG_INPUT_ENABLED}/></p> + </td> + </tr> + </table> + + </fieldset> +</form> + +<form id="representation" method="post" action="{$F_ACTION}#representation"> + <fieldset> + <legend>{'Representation of categories'|@translate}</legend> + + <table class="doubleSelect"> + <tr> + <td> + <h3>{'Represents'|@translate}</h3> + <select class="categoryList" name="cat_elected[]" multiple="multiple" size="30"> + {html_options options=$elected_options} + </select> + <p><input class="submit" type="submit" value="»" name="dismiss" style="font-size:15px;" {$TAG_INPUT_ENABLED}/></p> + </td> + + <td> + <h3>{'Does not represent'|@translate}</h3> + <select class="categoryList" name="cat_dismissed[]" multiple="multiple" size="30"> + {html_options options=$dismissed_options} + </select> + <p><input class="submit" type="submit" value="«" name="elect" style="font-size:15px;" {$TAG_INPUT_ENABLED}/></p> + </td> + </tr> + </table> + + </fieldset> +</form> diff --git a/BSF/template/yoga/admin/plugins_list.tpl b/BSF/template/yoga/admin/plugins_list.tpl new file mode 100644 index 000000000..abba01861 --- /dev/null +++ b/BSF/template/yoga/admin/plugins_list.tpl @@ -0,0 +1,51 @@ +<div class="titrePage"> + <h2>{'Plugins'|@translate}</h2> +{$TABSHEET} +</div> + +{'Sort order'|@translate} : + <select onchange="document.location = this.options[this.selectedIndex].value;" style="width:100px"> + {html_options options=$order_options selected=$order_selected} + </select> + +{if isset($plugins)} +<table class="table2"> +<thead> + <tr class="throw"> + <td>{'Name'|@translate}</td> + <td>{'Version'|@translate}</td> + <td>{'Description'|@translate}</td> + <td>{'Actions'|@translate}</td> + </tr> +</thead> +{html_head} {*add the style to html head for strict standard compliance*} +<style type="text/css"> +TABLE.table2 TR TD.pluginState {ldelim} + padding-left:16px; +} +TABLE.table2 TR TD.active {ldelim} + background: url({$ROOT_URL}{$themeconf.admin_icon_dir}/plugin_active.gif) no-repeat center left +} +TABLE.table2 TR TD.inactive {ldelim} + background: url({$ROOT_URL}{$themeconf.admin_icon_dir}/plugin_inactive.gif) no-repeat center left +} +</style> +{/html_head} +{foreach from=$plugins item=plugin name=plugins_loop} + <tr class="{if $smarty.foreach.plugins_loop.index is odd}row1{else}row2{/if}"> + <td class="pluginState{if not empty($plugin.STATE)} {$plugin.STATE}{/if}"> + {$plugin.NAME} + </td> + <td>{$plugin.VERSION}</td> + <td>{$plugin.DESCRIPTION}</td> + <td> + {foreach from=$plugin.actions item=action} + <a href="{$action.U_ACTION}" + {if isset($action.CONFIRM)} onclick="return confirm('{$action.CONFIRM|@escape:'javascript'}');"{/if} + {$TAG_INPUT_ENABLED}>{$action.L_ACTION}</a> + {/foreach} + </td> + </tr> +{/foreach} +</table> +{/if} diff --git a/BSF/template/yoga/admin/plugins_new.tpl b/BSF/template/yoga/admin/plugins_new.tpl new file mode 100644 index 000000000..fa22aaa26 --- /dev/null +++ b/BSF/template/yoga/admin/plugins_new.tpl @@ -0,0 +1,37 @@ +<div class="titrePage"> + <h2>{'Plugins'|@translate}</h2> +{$TABSHEET} +</div> + +{'Sort order'|@translate} : + <select onchange="document.location = this.options[this.selectedIndex].value;" style="width:150px"> + {html_options options=$order_options selected=$order_selected} + </select> + +{if isset($plugins)} +<br> +<table class="table2"> +<thead> + <tr class="throw"> + <td>{'Name'|@translate}</td> + <td>{'Version'|@translate}</td> + <td>{'Date'|@translate}</td> + <td>{'Author'|@translate}</td> + <td>{'Actions'|@translate}</td> + </tr> +</thead> +{foreach from=$plugins item=plugin name=plugins_loop} + <tr class="{if $smarty.foreach.plugins_loop.index is odd}row1{else}row2{/if}"> + <td><a href="{$plugin.EXT_URL}" onclick="window.open(this.href); return false;" class="tooltip">{$plugin.EXT_NAME} + <span>{$plugin.EXT_DESC}</span></a></td> + <td style="text-align:center;"><a href="{$plugin.VERSION_URL}" onclick="window.open(this.href); return false;" class="tooltip">{$plugin.VERSION} + <span>{$plugin.VER_DESC}</span></a></td> + <td>{$plugin.DATE}</td> + <td>{$plugin.AUTHOR}</td> + <td style="text-align:center;"><a href="{$plugin.URL_INSTALL}" onclick="return confirm('{'plugins_confirm_install'|@translate|@escape:javascript}');">{'plugins_auto_install'|@translate}</a> + / <a href="{$plugin.URL_DOWNLOAD}">{'plugins_download'|@translate}</a> + </td> + </tr> +{/foreach} +</table> +{/if} diff --git a/BSF/template/yoga/admin/plugins_update.tpl b/BSF/template/yoga/admin/plugins_update.tpl new file mode 100644 index 000000000..df0ac4ae0 --- /dev/null +++ b/BSF/template/yoga/admin/plugins_update.tpl @@ -0,0 +1,71 @@ +<div class="titrePage"> + <h2>{'Plugins'|@translate}</h2> +{$TABSHEET} +</div> + +{if isset($plugins_not_uptodate)} +<br> +<b>{'plugins_need_update'|@translate}</b> +<table class="table2"> +<thead> + <tr class="throw"> + <td>{'Name'|@translate}</td> + <td>{'plugins_actual_version'|@translate}</td> + <td>{'plugins_new_version'|@translate}</td> + <td>{'Actions'|@translate}</td> + </tr> +</thead> +{foreach from=$plugins_not_uptodate item=plugin name=plugins_loop} + <tr class="{if $smarty.foreach.plugins_loop.index is odd}row1{else}row2{/if}"> + <td><a href="{$plugin.EXT_URL}" onclick="window.open(this.href); return false;" class="tooltip">{$plugin.EXT_NAME} + <span>{$plugin.EXT_DESC}</span></a></td> + <td style="text-align:center;">{$plugin.VERSION}</td> + <td style="text-align:center;"><a href="{$plugin.VERSION_URL}" onclick="window.open(this.href); return false;" class="tooltip">{$plugin.NEW_VERSION} + <span>{$plugin.NEW_VER_DESC}</span></a></td> + <td style="text-align:center;"><a href="{$plugin.URL_UPDATE}" onclick="return confirm('{'plugins_confirm_upgrade'|@translate|@escape:javascript}');">{'plugins_auto_update'|@translate}</a> + / <a href="{$plugin.URL_DOWNLOAD}">{'plugins_download'|@translate}</a></td> + </tr> +{/foreach} +</table> +{/if} + + +{if isset($plugins_uptodate)} +<br> +<b>{'plugins_dontneed_update'|@translate}</b> +<table class="table2"> +<thead> + <tr class="throw"> + <td>{'Name'|@translate}</td> + <td>{'Version'|@translate}</td> + </tr> +</thead> +{foreach from=$plugins_uptodate item=plugin name=plugins_loop} + <tr class="{if $smarty.foreach.plugins_loop.index is odd}row1{else}row2{/if}"> + <td><a href="{$plugin.URL}" onclick="window.open(this.href); return false;" class="tooltip">{$plugin.NAME} + <span>{$plugin.EXT_DESC}</span></a></td> + <td style="text-align:center;">{$plugin.VERSION}</td> + </tr> +{/foreach} +</table> +{/if} + + +{if isset($plugins_cant_check)} +<br> +<b>{'plugins_cant_check'|@translate}</b> +<table class="table2"> +<thead> + <tr class="throw"> + <td>{'Name'|@translate}</td> + <td>{'Version'|@translate}</td> + </tr> +</thead> +{foreach from=$plugins_cant_check item=plugin name=plugins_loop} + <tr class="{if $smarty.foreach.plugins_loop.index is odd}row1{else}row2{/if}"> + <td>{$plugin.NAME}</td> + <td style="text-align:center;">{$plugin.VERSION}</td> + </tr> +{/foreach} +</table> +{/if} diff --git a/BSF/template/yoga/admin/profile.tpl b/BSF/template/yoga/admin/profile.tpl new file mode 100644 index 000000000..f6326319c --- /dev/null +++ b/BSF/template/yoga/admin/profile.tpl @@ -0,0 +1,6 @@ +{* $Id$ *} +<div class="titrePage"> + <h2>{'Profile'|@translate}</h2> +</div> + +{$PROFILE_CONTENT} diff --git a/BSF/template/yoga/admin/rating.tpl b/BSF/template/yoga/admin/rating.tpl new file mode 100644 index 000000000..aa91892dc --- /dev/null +++ b/BSF/template/yoga/admin/rating.tpl @@ -0,0 +1,64 @@ +{* $Id$ *} +<h2>{'Rating'|@translate} [{$NB_ELEMENTS} {'elements'|@translate}]</h2> + +<form action="{$F_ACTION}" method="GET" id="update" class="filter"> + <fieldset> + <legend>{'Filter'|@translate}</legend> + + <label> + {'Sort by'|@translate} + <select name="order_by"> + {html_options options=$order_by_options selected=$order_by_options_selected} + </select> + </label> + + <label> + {'Users'|@translate} + <select name="users"> + {html_options options=$user_options selected=$user_options_selected} + </select> + </label> + + <label> + {'Number of items'|@translate} + <input type="text" name="display" size="2" value="{$DISPLAY}"> + </label> + + <input class="submit" type="submit" name="submit_filter" value="{'Submit'|@translate}" /> + <input type="hidden" name="page" value="rating" /> + </fieldset> +</form> + +<div class="navigationBar">{$NAVBAR}</div> +<table width="99%"> +<tr class="throw"> + <td>{'File'|@translate}</td> + <td>{'Number of rates'|@translate}</td> + <td>{'Average rate'|@translate}</td> + <td>{'Controversy'|@translate}</td> + <td>{'Sum of rates'|@translate}</td> + <td>{'Rate'|@translate}</td> + <td>{'Username'|@translate}</td> + <td>{'Rate date'|@translate}</td> + <td></td> +</tr> +{foreach from=$images item=image} +<tr valign="bottom"> + <td rowspan="{$image.NB_RATES_TOTAL+1}"><a href="{$image.U_URL}"><img src="{$image.U_THUMB}" alt="{$image.FILE}" title="{$image.FILE}"></a></td> + <td rowspan="{$image.NB_RATES_TOTAL+1}"><strong>{$image.NB_RATES}/{$image.NB_RATES_TOTAL}</strong></td> + <td rowspan="{$image.NB_RATES_TOTAL+1}"><strong>{$image.AVG_RATE}</strong></td> + <td rowspan="{$image.NB_RATES_TOTAL+1}"><strong>{$image.STD_RATE}</strong></td> + <td rowspan="{$image.NB_RATES_TOTAL+1}" style="border-right: 1px solid;" ><strong>{$image.SUM_RATE}</strong></td> +</tr> +{foreach from=$image.rates item=rate} +<tr> + <td>{$rate.RATE}</td> + <td><b>{$rate.USER}</b></td> + <td><span class="date">{$rate.DATE}</span></td> + <td><a href="{$rate.U_DELETE}" {$TAG_INPUT_ENABLED}><img src="{$themeconf.icon_dir}/delete.png" class="button" style="border:none;vertical-align:middle; margin-left:5px;" alt="[{'delete'|@translate}]"/></a></td> +</tr> +{/foreach} {*rates*} +{/foreach} {*images*} +</table> + +<div class="navigationBar">{$NAVBAR}</div> diff --git a/BSF/template/yoga/admin/site_manager.tpl b/BSF/template/yoga/admin/site_manager.tpl new file mode 100644 index 000000000..627181c5a --- /dev/null +++ b/BSF/template/yoga/admin/site_manager.tpl @@ -0,0 +1,73 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'Site manager'|@translate}</h2> +</div> + +{if not empty($remote_output)} +<div class="remoteOutput"> + <ul> + {foreach from=$remote_output item=remote_line} + <li class="{$remote_line.CLASS}">{$remote_line.CONTENT}</li> + {/foreach} + </ul> +</div> +{/if} + +{if isset($local_listing)} +{'remote_site_local_found'|@translate} {$local_listing.URL} +{if isset($local_listing.CREATE)} +<form action="{$F_ACTION}" method="post"> + <p> + {'remote_site_local_create'|@translate}: + <input type="hidden" name="no_check" value="1"/> + <input type="hidden" name="galleries_url" value="{$local_listing.URL}" /> + <input type="submit" name="submit" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED} /> + </p> +</form> +{/if} +{if isset($local_listing.U_SYNCHRONIZE)} + <a href="{$local_listing.U_SYNCHRONIZE}" title="{'remote_site_local_update'|@translate}">{'site_synchronize'|@translate}</a> +<br/><br/> +{/if} +{/if} + +{if not empty($sites)} +<table border="1" cellpadding="0" cellspacing="0"> + {foreach from=$sites item=site} + <tr style="text-align:left"><td> + <a href="{$site.NAME}">{$site.NAME}</a><br/>({$site.TYPE}, {$site.CATEGORIES} {'Categories'|@translate}, {$pwg->l10n_dec('%d element','%d elements',$site.IMAGES)}) + </td><td> + [<a href="{$site.U_SYNCHRONIZE}" title="{'site_synchronize_hint'|@translate}">{'site_synchronize'|@translate}</a>] + {if isset($site.U_DELETE)} + [<a href="{$site.U_DELETE}" onclick="return confirm('{'Are you sure?'|@translate|escape:'javascript'}');" + title="{'site_delete_hint'|@translate}" {$TAG_INPUT_ENABLED}>{'site_delete'|@translate}</a>] + {/if} + {if isset($site.remote)} + <br/> + [<a href="{$site.remote.U_TEST}" title="{'remote_site_test_hint'|@translate}" {$TAG_INPUT_ENABLED}>{'remote_site_test'|@translate}</a>] + [<a href="{$site.remote.U_GENERATE}" title="{'remote_site_generate_hint'|@translate}" {$TAG_INPUT_ENABLED}>{'remote_site_generate'|@translate}</a>] + [<a href="{$site.remote.U_CLEAN}" title="{'remote_site_clean_hint'|@translate}" {$TAG_INPUT_ENABLED}>{'remote_site_clean'|@translate}</a>] + {/if} + {if not empty($site.plugin_links)} + <br> + {foreach from=$site.plugin_links item=plugin_link} + [<a href="{$plugin_link.U_HREF}" title='{$plugin_link.U_HINT}' {$TAG_INPUT_ENABLED}>{$plugin_link.U_CAPTION}</a>] + {/foreach} + {/if} + </td></tr> + {/foreach} +</table> +{/if} + +<form action="{$F_ACTION}" method="post"> + <p> + <label for="galleries_url" >{'site_create'|@translate}</label> + <input type="text" name="galleries_url" id="galleries_url" /> + </p> + <p> + <input class="submit" type="submit" name="submit" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED} /> + </p> +</form> diff --git a/BSF/template/yoga/admin/site_update.tpl b/BSF/template/yoga/admin/site_update.tpl new file mode 100644 index 000000000..fc0899a90 --- /dev/null +++ b/BSF/template/yoga/admin/site_update.tpl @@ -0,0 +1,109 @@ +{* $Id$ *} + +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'title_update'|@translate}: <a href="{$SITE_URL}">{$SITE_URL}</a></h2> +</div> + +{if isset($update_result)} +<h3>{$L_RESULT_UPDATE}</h3> +<ul> + <li class="update_summary_new">{$update_result.NB_NEW_CATEGORIES} {'update_nb_new_categories'|@translate}</li> + <li class="update_summary_new">{$update_result.NB_NEW_ELEMENTS} {'update_nb_new_elements'|@translate}</li> + <li class="update_summary_del">{$update_result.NB_DEL_CATEGORIES} {'update_nb_del_categories'|@translate}</li> + <li class="update_summary_del">{$update_result.NB_DEL_ELEMENTS} {'update_nb_del_elements'|@translate}</li> + <li>{$update_result.NB_UPD_ELEMENTS} {'update_nb_upd_elements'|@translate}</li> + <li class="update_summary_err">{$update_result.NB_ERRORS} {'update_nb_errors'|@translate}</li> +</ul> +{/if} + +{if isset($metadata_result)} +<h3>{$L_RESULT_METADATA}</h3> +<ul> + <li>{$metadata_result.NB_ELEMENTS_DONE} {'update_nb_elements_metadata_sync'|@translate}</li> + <li>{$metadata_result.NB_ELEMENTS_CANDIDATES} {'update_nb_elements_metadata_available'|@translate}</li> + <li>{'update_used_metadata'|@translate} : {$METADATA_LIST}</li> +</ul> +{/if} + + +{if not empty($sync_errors)} +<h3>{'update_error_list_title'|@translate}</h3> +<div class="errors"> +<ul> + {foreach from=$sync_errors item=error} + <li>[{$error.ELEMENT}] {$error.LABEL}</li> + {/foreach} +</ul> +</div> +<h3>{'update_errors_caption'|@translate}</h3> +<ul> + {foreach from=$sync_error_captions item=caption} + <li><strong>{$caption.TYPE}</strong>: {$caption.LABEL}</li> + {/foreach} +</ul> +{/if} + +{if not empty($sync_infos)} +<h3>{'update_infos_title'|@translate}</h3> +<div class="infos"> +<ul> + {foreach from=$sync_infos item=info} + <li>[{$info.ELEMENT}] {$info.LABEL}</li> + {/foreach} +</ul> +</div> +{/if} + +{if isset($introduction)} +<h3>{'update_default_title'|@translate}</h3> +<form action="" method="post" id="update"> + + <fieldset id="syncFiles"> + <legend>{'update_sync_files'|@translate}</legend> + <ul> + <li><label><input type="radio" name="sync" value="dirs" {if 'dirs'==$introduction.sync}checked="checked"{/if}/> {'update_sync_dirs'|@translate}</label></li> + <li><label><input type="radio" name="sync" value="files" {if 'files'==$introduction.sync}checked="checked"{/if}/> {'update_sync_all'|@translate}</label></li> + <li><label><input type="checkbox" name="display_info" value="1" {if $introduction.display_info}checked="checked"{/if}/> {'update_display_info'|@translate}</label></li> + <li><label><input type="checkbox" name="add_to_caddie" value="1" {if $introduction.add_to_caddie}checked="checked"{/if}/> {'add new elements to caddie'|@translate}</label></li> + <li><label>{'Minimum privacy level'|@translate} <select name="privacy_level">{html_options options=$introduction.privacy_level_options selected=$introduction.privacy_level_selected}</select></label></li> + </ul> + </fieldset> + + <fieldset id="syncMetadata"> + <legend>{'update_sync_metadata'|@translate}</legend> + {'update_used_metadata'|@translate} : {$METADATA_LIST}.<br/> + <ul> + <li><label><input type="radio" name="sync" value="metadata_new" {if 'metadata_new'==$introduction.sync}checked="checked"{/if}/> {'update_sync_metadata_new'|@translate}</label></li> + <li><label><input type="radio" name="sync" value="metadata_all" {if 'metadata_all'==$introduction.sync}checked="checked"{/if}/> {'update_sync_metadata_all'|@translate}</label></li> + </ul> + </fieldset> + + <fieldset id="syncSimulate"> + <legend></legend> + <ul><li><label><input type="checkbox" name="simulate" value="1" checked="checked" {$TAG_INPUT_ENABLED} /> {'update_simulate'|@translate}</label></li></ul> + </fieldset> + + <fieldset id="catSubset"> + <legend>{'update_cats_subset'|@translate}</legend> + <ul> + <li> + <select class="categoryList" name="cat" size="10"> + {html_options options=$category_options selected=$category_options_selected} + </select> + </li> + + <li><label><input type="checkbox" name="subcats-included" value="1" {if $introduction.subcats_included}checked="checked"{/if}/> {'search_subcats_included'|@translate}</label></li> + </ul> + </fieldset> + + <p class="bottomButtons"> + <input class="submit" type="submit" value="{'Submit'|@translate}" name="submit" /> + <input class="submit" type="reset" value="{'Reset'|@translate}" name="reset" /> + </p> +</form> +{/if}{*isset $introduction*} + +<p><a href="{$U_SITE_MANAGER}">{'Site manager'|@translate}</a></p> diff --git a/BSF/template/yoga/admin/stats.tpl b/BSF/template/yoga/admin/stats.tpl new file mode 100644 index 000000000..95331b7ef --- /dev/null +++ b/BSF/template/yoga/admin/stats.tpl @@ -0,0 +1,38 @@ +{* $Id$ *} + +<div class="titrePage"> + <ul class="categoryActions"> + <li> + <a + href="{$U_HELP}" + onclick="popuphelp(this.href); return false;" + title="{'Help'|@translate}" + > + <img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"> + </a> + </li> + </ul> + <h2>{'History'|@translate} {$TABSHEET_TITLE}</h2> + {$TABSHEET} +</div> + +<h3>{$L_STAT_TITLE}</h3> + +<table class="table2" id="dailyStats"> + <tr class="throw"> + <th>{$PERIOD_LABEL}</th> + <th>{'Pages seen'|@translate}</th> + <th></th> + </tr> + +{if not empty($statrows)} +{foreach from=$statrows item=row} + <tr> + <td style="white-space: nowrap">{$row.VALUE}</td> + <td class="number">{$row.PAGES}</td> + <td><div class="statBar" style="width:{$row.WIDTH}px"></div></td> + </tr> +{/foreach} +{/if} + +</table> diff --git a/BSF/template/yoga/admin/tabsheet.tpl b/BSF/template/yoga/admin/tabsheet.tpl new file mode 100644 index 000000000..a89adfd8d --- /dev/null +++ b/BSF/template/yoga/admin/tabsheet.tpl @@ -0,0 +1,8 @@ +{* $Id$ *} +{if isset($tabsheet) and count($tabsheet)} +<ul class="tabsheet"> +{foreach from=$tabsheet key=name item=sheet} + <li class="{if ($name == $tabsheet_selected)}selected_tab{else}normal_tab{/if}"><a href="{$sheet.url}">{$sheet.caption}</a></li> +{/foreach} +</ul> +{/if}
\ No newline at end of file diff --git a/BSF/template/yoga/admin/tags.tpl b/BSF/template/yoga/admin/tags.tpl new file mode 100644 index 000000000..b2ce57341 --- /dev/null +++ b/BSF/template/yoga/admin/tags.tpl @@ -0,0 +1,54 @@ +{* $Id$ *} +<div class="titrePage"> + <h2>{'Manage tags'|@translate}</h2> +</div> + +<form action="{$F_ACTION}" method="post"> + + {if isset($EDIT_TAGS_LIST)} + <fieldset> + <legend>{'Edit tags'|@translate}</legend> + <input type="hidden" name="edit_list" value="{$EDIT_TAGS_LIST}" /> + <table class="table2"> + <tr class="throw"> + <th>{'Current name'|@translate}</th> + <th>{'New name'|@translate}</th> + </tr> + {foreach from=$tags item=tag} + <tr> + <td>{$tag.NAME}</td> + <td><input type="text" name="tag_name-{$tag.ID}" value="{$tag.NAME}" /></td> + </tr> + {/foreach} + </table> + + <p> + <input class="submit" type="submit" name="submit" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED} /> + <input class="submit" type="reset" value="{'Reset'|@translate}" /> + </p> + </fieldset> + {/if} + + <fieldset> + <legend>{'Add a tag'|@translate}</legend> + + <label> + {'New tag'|@translate} + <input type="text" name="add_tag" /> + </label> + + <p><input class="submit" type="submit" name="add" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED}/></p> + </fieldset> + + <fieldset> + <legend>{'Tag selection'|@translate}</legend> + + {$TAG_SELECTION} + + <p> + <input class="submit" type="submit" name="edit" value="{'Edit selected tags'|@translate}"/> + <input class="submit" type="submit" name="delete" value="{'Delete selected tags'|@translate}" onclick="return confirm('{'Are you sure?'|@translate}');" {$TAG_INPUT_ENABLED}/> + </p> + </fieldset> + +</form> diff --git a/BSF/template/yoga/admin/thumbnail.tpl b/BSF/template/yoga/admin/thumbnail.tpl new file mode 100644 index 000000000..6bb652caa --- /dev/null +++ b/BSF/template/yoga/admin/thumbnail.tpl @@ -0,0 +1,123 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'title_thumbnails'|@translate}</h2> +</div> + +{if isset($results) } +<div class="admin">{'tn_results_title'|@translate}</div> +<table style="width:100%;"> + <tr class="throw"> + <td>{'path'|@translate}</td> + <td>{'thumbnail'|@translate}</td> + <td>{'tn_results_gen_time'|@translate}</td> + <td>{'filesize'|@translate}</td> + <td>{'Dimensions'|@translate}</td> + </tr> + {foreach from=$results.elements item=elt} + <tr> + <td>{$elt.PATH}</td> + <td><img src="{$elt.TN_FILE_IMG}" /></td> + <td style="text-align:right;">{$elt.GEN_TIME}</td> + <td style="text-align:right;">{$elt.TN_FILESIZE_IMG}</td> + <td style="text-align:right;">{$elt.TN_WIDTH_IMG} x {$elt.TN_HEIGHT_IMG}</td> + </tr> + {/foreach} +</table> + +<table class="table2"> + <tr class="throw"> + <td colspan="2">{'tn_stats'|@translate}</td> + </tr> + <tr> + <td>{'tn_stats_nb'|@translate}</td> + <td style="text-align:center;">{$results.TN_NB}</td> + </tr> + <tr> + <td>{'tn_stats_total'|@translate}</td> + <td style="text-align:right;">{$results.TN_TOTAL}</td> + </tr> + <tr> + <td>{'tn_stats_max'|@translate}</td> + <td style="text-align:right;">{$results.TN_MAX}</td> + </tr> + <tr> + <td>{'tn_stats_min'|@translate}</td> + <td style="text-align:right;">{$results.TN_MIN}</td> + </tr> + <tr> + <td>{'tn_stats_mean'|@translate}</td> + <td style="text-align:right;">{$results.TN_AVERAGE}</td> + </tr> +</table> +<br /> +{/if} + +{if isset($params) } +<form method="post" action="{$params.F_ACTION}" class="properties"> + + <fieldset> + <legend>{'tn_params_title'|@translate}</legend> + + <ul> + <li> + <span class="property">{'tn_params_GD'|@translate}</span> + <label> + <input type="radio" name="gd" value="2" {if $params.GD_SELECTED==2}checked="checked"{/if} />2.x + </label> + <label> + <input type="radio" name="gd" value="1" {if $params.GD_SELECTED==1}checked="checked"{/if} />1.x + </label> + </li> + + <li> + <span class="property"> + <label for="width">{'maximum width'|@translate}</label> + </span> + <input type="text" id="width" name="width" value="{$params.WIDTH_TN}" /> + </li> + + <li> + <span class="property"> + <label for="height">{'maximum height'|@translate}</label> + </span> + <input type="text" id="height" name="height" value="{$params.HEIGHT_TN}" /> + </li> + + <li> + <span class="property">{'Number of thumbnails to create'|@translate}</span> + <label><input type="radio" name="n" value="5" {if $params.N_SELECTED==5}checked="checked"{/if} /> 5</label> + <label><input type="radio" name="n" value="10" {if $params.N_SELECTED==10}checked="checked"{/if} /> 10</label> + <label><input type="radio" name="n" value="20" {if $params.N_SELECTED==20}checked="checked"{/if} /> 20</label> + <label><input type="radio" name="n" value="all" {if $params.N_SELECTED=='all'}checked="checked"{/if} /> {'tn_all'|@translate}</label> + </li> + </ul> + </fieldset> + + <p><input class="submit" type="submit" name="submit" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED}/></p> +</form> +{/if} {*isset params*} + +{if !empty($remainings) } +<div class="admin">{$TOTAL_NB_REMAINING} {'tn_alone_title'|@translate}</div> +<table style="width:100%;"> + <tr class="throw"> + <td> </td> + <td style="width:60%;">{'path'|@translate}</td> + <td>{'filesize'|@translate}</td> + <td>{'Dimensions'|@translate}</td> + </tr> + {foreach from=$remainings item=elt name=remain_loop} + <tr class="{if $smarty.foreach.remain_loop.index is odd}row1{else}row2{/if}"> + <td>{$smarty.foreach.remain_loop.iteration}</td> + <td><div style="margin-left:10px;">{$elt.PATH}</div></td> + <td><div style="margin-left:10px;">{$elt.FILESIZE_IMG}</div></td> + <td><div style="margin-left:10px;">{$elt.WIDTH_IMG} x {$elt.HEIGHT_IMG}</div></td> + </tr> + {/foreach} +</table> +{else} +<div style="text-align:center;font-weight:bold;margin:10px;"> [ {'tn_no_missing'|@translate} ]</div> +{/if} diff --git a/BSF/template/yoga/admin/upload.tpl b/BSF/template/yoga/admin/upload.tpl new file mode 100644 index 000000000..f95609316 --- /dev/null +++ b/BSF/template/yoga/admin/upload.tpl @@ -0,0 +1,53 @@ +{* $Id$ *} +<div class="titrePage"> + <h2>{'waiting'|@translate} {$TABSHEET_TITLE}</h2> + {$TABSHEET} +</div> + +<h3>{'title_upload'|@translate}</h3> + +<form action="{$F_ACTION}" method="post" id="waiting"> + <table style="width:99%;" > + <tr class="throw"> + <th style="width:20%;">{'category'|@translate}</th> + <th style="width:20%;">{'Date'|@translate}</th> + <th style="width:20%;">{'file'|@translate}</th> + <th style="width:20%;">{'thumbnail'|@translate}</th> + <th style="width:20%;">{'Author'|@translate}</th> + <th style="width:1px;"> </th> + </tr> + + {if not empty($pictures) } + {foreach from=$pictures item=picture name=picture_loop} + <tr class="{if $smarty.foreach.picture_loop.index is odd}row1{else}row2{/if}"> + <td style="white-space:nowrap;">{$picture.CATEGORY_IMG}</td> + <td style="white-space:nowrap;">{$picture.DATE_IMG}</td> + <td style="white-space:nowrap;"> + <a href="{$picture.PREVIEW_URL_IMG}" title="{$picture.FILE_TITLE}">{$picture.FILE_IMG}</a> + </td> + <td style="white-space:nowrap;"> + {if not empty($picture.thumbnail) } + <a href="{$picture.thumbnail.PREVIEW_URL_TN_IMG}" title="{$picture.thumbnail.FILE_TN_TITLE}">{$picture.thumbnail.FILE_TN_IMG}</a> + {/if} + </td> + <td style="white-space:nowrap;"> + <a href="mailto:{$picture.UPLOAD_EMAIL}">{$picture.UPLOAD_USERNAME}</a> + </td> + <td style="white-space:nowrap;"> + <label><input type="radio" name="action-{$picture.ID_IMG}" value="validate" /> {'Validate'|@translate}</label> + <label><input type="radio" name="action-{$picture.ID_IMG}" value="reject" /> {'Reject'|@translate}</label> + </td> + </tr> + {/foreach} + {/if} + </table> + + <p class="bottomButtons"> + <input type="hidden" name="list" value="{$LIST}" /> + <input class="submit" type="submit" name="submit" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="submit" name="validate-all" value="{'Validate All'|@translate}" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="submit" name="reject-all" value="{'Reject All'|@translate}" {$TAG_INPUT_ENABLED}/> + <input class="submit" type="reset" value="{'Reset'|@translate}" /> + </p> + +</form> diff --git a/BSF/template/yoga/admin/user_list.tpl b/BSF/template/yoga/admin/user_list.tpl new file mode 100644 index 000000000..db67093f6 --- /dev/null +++ b/BSF/template/yoga/admin/user_list.tpl @@ -0,0 +1,312 @@ +{* $Id$ *} +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'title_liste_users'|@translate}</h2> +</div> + +<form class="filter" method="post" name="add_user" action="{$F_ADD_ACTION}"> + <fieldset> + <legend>{'Add a user'|@translate}</legend> + <label>{'Username'|@translate} <input type="text" name="login" maxlength="50" size="20" /></label> + <label>{'Password'|@translate} <input type="text" name="password" /></label> + <label>{'Email address'|@translate} <input type="text" name="email" /></label> + <input class="submit" type="submit" name="submit_add" value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED} /> + </fieldset> +</form> + +<form class="filter" method="get" name="filter" action="{$F_FILTER_ACTION}"> +<fieldset> + <legend>{'Filter'|@translate}</legend> + <input type="hidden" name="page" value="user_list" /> + + <label>{'Username'|@translate} <input type="text" name="username" value="{$F_USERNAME}" /></label> + + <label> + {'status'|@translate} + {html_options name=status options=$status_options selected=$status_selected} + </label> + + <label> + {'group'|@translate} + {html_options name=group options=$group_options selected=$group_selected} + </label> + + <label> + {'Sort by'|@translate} + {html_options name=order_by options=$order_options selected=$order_selected} + </label> + + <label> + {'Sort order'|@translate} + {html_options name=direction options=$direction_options selected=$direction_selected} + </label> + + <input class="submit" type="submit" value="{'Submit'|@translate}" /> + +</fieldset> + +</form> + +<form method="post" name="preferences" action=""> + +<table class="table2"> + <tr class="throw"> + <th> </th> + <th>{'Username'|@translate}</th> + <th>{'user_status'|@translate}</th> + <th>{'Email address'|@translate}</th> + <th>{'Groups'|@translate}</th> + <th>{'properties'|@translate}</th> + {if not empty($plugin_user_list_column_titles)} + {foreach from=$plugin_user_list_column_titles item=title} + <th>{$title}</th> + {/foreach} + {/if} + <th>{'Actions'|@translate}</th> + </tr> + {foreach from=$users item=user name=users_loop} + <tr class="{if $smarty.foreach.users_loop.index is odd}row1{else}row2{/if}"> + <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>{$user.PROPERTIES}</td> + {foreach from=$user.plugin_columns item=data} + <td>{$data}</td> + {/foreach} + <td style="text-align:center;"> + <a href="{$user.U_PERM}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/permissions.png" class="button" style="border:none" alt="{'permissions'|@translate}" title="{'permissions'|@translate}" /></a> + <a href="{$user.U_PROFILE}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/edit_s.png" class="button" style="border:none" alt="{'Profile'|@translate}" title="{'Profile'|@translate}" /></a> + {foreach from=$user.plugin_actions item=data} + {$data} + {/foreach} + </td> + </tr> + {/foreach} +</table> + +<div class="navigationBar">{$NAVBAR}</div> + +{* delete the selected users ? *} +<fieldset> + <legend>{'Deletions'|@translate}</legend> + <label><input type="checkbox" name="confirm_deletion" value="1" /> {'confirm'|@translate}</label> + <input class="submit" type="submit" value="{'Delete selected users'|@translate}" name="delete" {$TAG_INPUT_ENABLED}/> +</fieldset> + +<fieldset> + <legend>{'Status'|@translate}</legend> + + <table> + <tr> + <td>{'Status'|@translate}</td> + <td> + <label><input type="radio" name="status_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="status_action" value="set" id="status_action_set" /> {'set to'|@translate}</label> + <select onchange="document.getElementById('status_action_set').checked = true;" name="status" size="1"> + {html_options options=$pref_status_options selected=$pref_status_selected} + </select> + </td> + </tr> + + {if isset($adviser)} + <tr> + <td>{'adviser'|@translate}</td> + <td> + <label><input type="radio" name="adviser" value="leave" checked="checked" /> {'leave'|@translate}</label> + / {'set to'|@translate} + <label><input type="radio" name="adviser" value="true" />{'Yes'|@translate}</label> + <label><input type="radio" name="adviser" value="false" />{'No'|@translate}</label> + </td> + </tr> + {/if} + + </table> +</fieldset> + +{* form to set properties for many users at once *} +<fieldset> + <legend>{'Groups'|@translate}</legend> + +<table> + + <tr> + <td>{'associate to group'|@translate}</td> + <td> + {html_options name=associate options=$association_options selected=$associate_selected} + </td> + </tr> + + <tr> + <td>{'dissociate from group'|@translate}</td> + <td> + {html_options name=dissociate options=$association_options selected=$dissociate_selected} + </td> + </tr> + +</table> + +</fieldset> + +{* Properties *} +<fieldset> + <legend>{'properties'|@translate}</legend> + + <table> + + <tr> + <td>{'enabled_high'|@translate}</td> + <td> + <label><input type="radio" name="enabled_high" value="leave" checked="checked" /> {'leave'|@translate}</label> + / {'set to'|@translate} + <label><input type="radio" name="enabled_high" value="true" />{'Yes'|@translate}</label> + <label><input type="radio" name="enabled_high" value="false" />{'No'|@translate}</label> + </td> + </tr> + + <tr> + <td>{'Privacy level'|@translate}</td> + <td> + <label><input type="radio" name="level_action" value="leave" checked="checked" />{'leave'|@translate}</label> + <label><input type="radio" name="level_action" value="set" id="level_action_set" />{'set to'|@translate}</label> + <select onchange="document.getElementById('level_action_set').checked = true;" name="level" size="1"> + {html_options options=$level_options selected=$level_selected} + </select> + </td> + </tr> + + </table> + +</fieldset> + +{* preference *} +<fieldset> + <legend>{'Preferences'|@translate}</legend> + +<table> + + <tr> + <td>{'nb_image_per_row'|@translate}</td> + <td> + <label><input type="radio" name="nb_image_line_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="nb_image_line_action" value="set" id="nb_image_line_action_set" /> {'set to'|@translate}</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>{'nb_row_per_page'|@translate}</td> + <td> + <label><input type="radio" name="nb_line_page_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="nb_line_page_action" value="set" id="nb_line_page_action_set" /> {'set to'|@translate}</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>{'theme'|@translate}</td> + <td> + <label><input type="radio" name="template_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="template_action" value="set" id="template_action_set" /> {'set to'|@translate}</label> + <select onchange="document.getElementById('template_action_set').checked = true;" name="template" size="1"> + {html_options values=$template_options output=$template_options selected=$template_selected} + </select> + </td> + </tr> + + <tr> + <td>{'language'|@translate}</td> + <td> + <label><input type="radio" name="language_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="language_action" value="set" id="language_action_set" /> {'set to'|@translate}</label> + <select onchange="document.getElementById('language_action_set').checked = true;" name="language" size="1"> + {html_options options=$language_options selected=$language_selected} + </select> + </td> + </tr> + + <tr> + <td>{'recent_period'|@translate}</td> + <td> + <label><input type="radio" name="recent_period_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="recent_period_action" value="set" id="recent_period_action_set" /> {'set to'|@translate}</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>{'auto_expand'|@translate}</td> + <td> + <label><input type="radio" name="expand" value="leave" checked="checked" /> {'leave'|@translate}</label> + / {'set to'|@translate} + <label><input type="radio" name="expand" value="true" />{'Yes'|@translate}</label> + <label><input type="radio" name="expand" value="false" />{'No'|@translate}</label> + </td> + </tr> + + <tr> + <td>{'show_nb_comments'|@translate}</td> + <td> + <label><input type="radio" name="show_nb_comments" value="leave" checked="checked" /> {'leave'|@translate}</label> + / {'set to'|@translate} + <label><input type="radio" name="show_nb_comments" value="true" />{'Yes'|@translate}</label> + <label><input type="radio" name="show_nb_comments" value="false" />{'No'|@translate}</label> + </td> + </tr> + + <tr> + <td>{'show_nb_hits'|@translate}</td> + <td> + <label><input type="radio" name="show_nb_hits" value="leave" checked="checked" /> {'leave'|@translate}</label> + / {'set to'|@translate} + <label><input type="radio" name="show_nb_hits" value="true" />{'Yes'|@translate}</label> + <label><input type="radio" name="show_nb_hits" value="false" />{'No'|@translate}</label> + </td> + </tr> + + <tr> + <td>{'maxwidth'|@translate}</td> + <td> + <label><input type="radio" name="maxwidth_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="maxwidth_action" value="unset" /> {'unset'|@translate}</label> + <label><input type="radio" name="maxwidth_action" value="set" id="maxwidth_action_set" /> {'set to'|@translate}</label> + <input onmousedown="document.getElementById('maxwidth_action_set').checked = true;" + type="text" size="4" maxlength="4" name="maxwidth" value="{$MAXWIDTH}" /> + </td> + </tr> + + + <tr> + <td>{'maxheight'|@translate}</td> + <td> + <label><input type="radio" name="maxheight_action" value="leave" checked="checked" /> {'leave'|@translate}</label> + <label><input type="radio" name="maxheight_action" value="unset" /> {'unset'|@translate}</label> + <label><input type="radio" name="maxheight_action" value="set" id="maxheight_action_set" /> {'set to'|@translate}</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> + {'target'|@translate} + <label><input type="radio" name="target" value="all" /> {'all'|@translate}</label> + <label><input type="radio" name="target" value="selection" checked="checked" /> {'selection'|@translate}</label> +</p> + +<p> + <input class="submit" type="submit" value="{'Submit'|@translate}" name="pref_submit" {$TAG_INPUT_ENABLED} /> + <input class="submit" type="reset" value="{'Reset'|@translate}" name="pref_reset" /> +</p> + +</form> diff --git a/BSF/template/yoga/admin/user_perm.tpl b/BSF/template/yoga/admin/user_perm.tpl new file mode 100644 index 000000000..3183c82e7 --- /dev/null +++ b/BSF/template/yoga/admin/user_perm.tpl @@ -0,0 +1,23 @@ +{* $Id$ *} +<h2>{$TITLE}</h2> + +{if isset($categories_because_of_groups) } +<fieldset> + <legend>{'Categories authorized thanks to group associations'|@translate}</legend> + + <ul> + {foreach from=$categories_because_of_groups item=cat } + <li>{$cat}</li> + {/foreach} + </ul> +</fieldset> +{/if} + + +<fieldset> + <legend>{'Other private categories'|@translate}</legend> + + <form method="post" action="{$F_ACTION}"> + {$DOUBLE_SELECT} + </form> +</fieldset> diff --git a/BSF/template/yoga/admin/ws_checker.tpl b/BSF/template/yoga/admin/ws_checker.tpl new file mode 100644 index 000000000..cce3c7f49 --- /dev/null +++ b/BSF/template/yoga/admin/ws_checker.tpl @@ -0,0 +1,218 @@ +{* $Id$ *} + +<div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}"><img src="{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + </ul> + <h2>{'title_wscheck'|@translate} - {'web_services'|@translate}</h2> +</div> + +{if !empty($update_results)} +<ul> + {foreach from=$update_results item=result} + <li>$result</li> + {/foreach} +</ul> +{/if} + +{* Add Access *} +<form method="post" name="adding_access" action="{$F_STATUS_ACTION}"> + <!-- Current Default --> + <fieldset> + <legend>{'ws_adding_legend'|@translate}</legend> + <table> + {* Access key *} + <tr> + <td> + <label for="KeyName">{'Confidential partner key'|@translate} </label> + </td> + <td> + <input type="text" maxlength="35" size="35" name="add_partner" + id="add_partner" value="{$F_ADD_PARTNER}" + title="{'Basis of access key calculation'|@translate}" /> + </td> + </tr> + + {* Target (cat/ids, tag/ids, or list/ids ids=id,id-id,...) *} + <tr> + <td> + <label for="Access">{'Target'|@translate}</label> + </td> + <td> + <input type="text" maxlength="128" size="35" name="add_target" + id="add_target" value="{$F_ADD_ACCESS}" + title="{'Facultative and restrictive option'|@translate}" /> + <i><small> ({'Access: see help text for more'|@translate}) + </small></i> + </td> + </tr> + + {* Restricted access to specific request *} + <tr> + <td> + <label for="add_request">{'Restrict access to'|@translate}</label> + </td> + <td> + <select name="add_request" id="add_request" style="width: 18em" + onfocus="this.className='focus';" + onblur="this.className='nofocus';"> + <option value=""></option> + {html_options values=$add_requests output=$add_requests} + </select> + <i><small> ({'ws_Methods'|@translate})</small></i> + </td> + </tr> + + {* Limit number of images information to be return *} + <tr> + <td> + <label for="add_limit">{'Returned images limit'|@translate}</label> + </td> + <td> + <select name="add_limit" id="add_limit" style="width: 10em" + onfocus="this.className='focus';" + onblur="this.className='nofocus';"> + {html_options values=$add_limits output=$add_limits} + </select> + </td> + </tr> + + {* Open service is postponed by n days *} + {* In comment currently + <tr> + <td> + <label for="add_start">{'Postponed availability in days'|@translate}</label> + </td> + <td> + <select name="add_start" id="add_start" style="width: 10em" + onfocus="this.className='focus';" + onblur="this.className='nofocus';"> + <!-- BEGIN add_start --> + <option value="{add_start.VALUE}" + {add_start.SELECTED}>{add_start.CONTENT} + </option> + <!-- END add_start --> + </select> + </td> + </tr> + *} + + {* Opened service only for n days *} + <tr> + <td> + <label for="add_end">{'Duration in days'|@translate}</label> + </td> + <td> + <select name="add_end" id="add_end" style="width: 10em" + onfocus="this.className='focus';" + onblur="this.className='nofocus';"> + {html_options values=$add_ends output=$add_ends} + </select> + </td> + </tr> + + {* Idendify your partner (name / website / phone) as you want *} + <tr> + <td> + <label for="add_Comment">{'ws_Comment'|@translate}</label> + <br /> + </td> + <td> + <textarea name="add_comment" id="add_comment" + rows="4" cols="80">{'Comment to identify your partner clearly'|@translate}</textarea> + </td> + </tr> + + {* Add submit button *} + <tr> + <td> + </td> + <td> + <input class="submit" type="submit" name="wsa_submit" style="width: 10em; padding-top: 3px;" + value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED} + title="{'Add this access definition'|@translate}" /> + </td> + </tr> + </table> + </fieldset> +</form> + +{if !empty($access_list)} +<!-- Access list --> +<form method="post" name="preferences" action="{$F_STATUS_ACTION}"> + <input type="hidden" name="partner_prev" value="{$F_PREV_PARTNER}"> + <input type="hidden" name="request_prev" value="{$F_PREV_REQUEST}"> + <input type="hidden" name="high_prev" value="{$F_PREV_HIGH}"> + <input type="hidden" name="normal_prev" value="{$F_PREV_NORMAL}"> + <input type="hidden" name="order_prev" value="{$F_PREV_ORDER}"> + <input type="hidden" name="dir5n_prev" value="{$F_PREV_DIR5N}"> + <!-- Delete / Update Selected --> + <fieldset> + <legend>{'ws_update_legend'|@translate}</legend> + <table class="table2"> + <tr class="throw"> + <th> </th> + <th>{'ws_KeyName'|@translate}</th> + <th>{'ws_Access'|@translate}</th> + <th>{'ws_End'|@translate}</th> + <th>{'ws_Request'|@translate}</th> + <th>{'ws_Limit'|@translate}</th> + <th>{'ws_Comment'|@translate}</th> + </tr> + {foreach from=$access_list item=access name=access_loop} + <tr class="{if $smarty.foreach.access_loop.index is odd}row1{else}row2{/if}"> + <td> + <input type="radio" name="selection" + value="{$access.ID}" id="selection-{$access.ID}"> + </td> + <td><label for="selection-{$access.ID}">{$access.NAME}</label></td> + <td>{$access.TARGET}</td> + <td>{$access.END}</td> + <td>{$access.REQUEST}</td> + <td>{$access.LIMIT}</td> + <td>{$access.COMMENT}</td> + </tr> + {/foreach} + </table> + + <table> + <tr> + <td> + {'ws_delete_legend'|@translate} + </td> + <td> + <input type="radio" name="delete_confirmation" + value="true"> + <input class="submit" type="submit" name="wsX_submit" style="width: 10em; padding-top: 3px;" + value="{'Delete'|@translate}" {$TAG_INPUT_ENABLED}> + </td> + </tr> + </table> + <hr> + <table> + <tr> + <td> + <span class="property"> + <label for="upd_end">{'Modify End from Now +'|@translate} </label> + </span> + <select name="upd_end" id="upd_end" style="width: 10em" + onfocus="this.className='focus';" + onblur="this.className='nofocus';"> + {html_options values=$add_ends output=$add_ends} + </select> + <input class="submit" type="submit" name="wsu_submit" style="width: 10em; padding-top: 3px;" + value="{'Submit'|@translate}" {$TAG_INPUT_ENABLED}> + </td> + <td> + <i><small> ({'Web Services availability duration in days'|@translate})</small></i> + </td> + </tr> + </table> + + </fieldset> +</form> +{/if} + +{if isset($WS_STATUS)} + <h3>{$WS_STATUS}</h3> +{/if} diff --git a/BSF/template/yoga/comments.tpl b/BSF/template/yoga/comments.tpl new file mode 100644 index 000000000..2e2beaf34 --- /dev/null +++ b/BSF/template/yoga/comments.tpl @@ -0,0 +1,99 @@ +{* $Id$ *} +<div id="content" class="content"> + + <div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}"><img src="{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/></a></li> + </ul> + <h2>{'User comments'|@translate}</h2> + </div> + +<form class="filter" action="{$F_ACTION}" method="get"> + + <fieldset> + <legend>{'Filter'|@translate}</legend> + + <label>{'Keyword'|@translate}<input type="text" name="keyword" value="{$F_KEYWORD}" /></label> + + <label>{'Author'|@translate}<input type="text" name="author" value="{$F_AUTHOR}" /></label> + + <label> + {'Category'|@translate} + <select name="cat"> + <option value="0">------------</option> + {html_options options=$categories selected=$categories_selected} + </select> + </label> + + <label> + {'Since'|@translate} + <select name="since"> + {html_options options=$since_options selected=$since_options_selected} + </select> + </label> + + </fieldset> + + <fieldset> + + <legend>{'Display'|@translate}</legend> + + <label> + {'Sort by'|@translate} + <select name="sort_by"> + {html_options options=$sort_by_options selected=$sort_by_options_selected} + </select> + </label> + + <label> + {'Sort order'|@translate} + <select name="sort_order"> + {html_options options=$sort_order_options selected=$sort_order_options_selected} + </select> + </label> + + <label> + {'Number of items'|@translate} + <select name="items_number"> + {html_options options=$item_number_options selected=$item_number_options_selected} + </select> + </label> + + </fieldset> + + <p><input class="submit" type="submit" value="{'Filter and display'|@translate}"></p> + +</form> + +<div class="navigationBar">{$NAVBAR}</div> + +{if isset($comments)} +<div id="comments"> + + {foreach from=$comments item=comment} + <div class="comment"> + <a class="illustration" href="{$comment.U_PICTURE}"><img src="{$comment.TN_SRC}" alt="{$comment.ALT}" /></a> + <p class="commentHeader"><span class="author">{$comment.AUTHOR}</span> - <span class="date">{$comment.DATE}</span> + + {if isset($comment.U_DELETE)} + <a href="{$comment.U_DELETE}" title="{'comments_del'|@translate}"> + <img src="{$ROOT_URL}{$themeconf.icon_dir}/delete.png" class="button" style="border:none;vertical-align:middle; margin-left:5px;" alt="[{'delete'|@translate}]"/> + </a> + {/if} + + {if isset($comment.U_VALIDATE)} + <a href="{$comment.U_VALIDATE}" title="validate this comment"> + <img src="{$ROOT_URL}{$themeconf.icon_dir}/validate_s.png" class="button" style="border:none;vertical-align:middle; margin-left:5px;" alt="[validate]"/> + </a> + {/if} + + </p> + <blockquote>{$comment.CONTENT}</blockquote> + <hr class="separation"> + </div> + + {/foreach} +</div> +{/if} + +</div> <!-- content --> diff --git a/BSF/template/yoga/content.css b/BSF/template/yoga/content.css new file mode 100644 index 000000000..05e246069 --- /dev/null +++ b/BSF/template/yoga/content.css @@ -0,0 +1,241 @@ +/* $Id$ */ +.content { + margin-right: 1em; + margin-bottom: 1em; /* when it's longer than menu bar */ +} + +BODY#theCommentsPage .content, +BODY#theUploadPage .content, +BODY#theRegisterPage .content, +BODY#theIdentificationPage .content, +BODY#theProfilePage .content, +BODY#theSearchPage .content, +BODY#theAboutPage .content, +BODY#thePopuphelpPage .content, +BODY#thePasswordPage .content, +BODY#theNotificationPage .content, +BODY#theTagsPage .content, +BODY#theNBMPage .content +{ + margin: 1em; +} + +.content H3 { + margin-bottom: 1ex; +} + +.content H2 { margin-bottom: 3px;} /*<- for IE otherwise calendar select is displaced to middle of page*/ + +.content H3 { + text-align: center; +} + +.content .navigationBar, .content .additional_info { + margin: 10px 0; + text-align: center; +} + +.content .pageNumberSelected { + font-style: italic; + font-weight: bold; +} + +.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 { + margin: 0 2px; + width: auto; + padding: 0; + text-indent: 0; + list-style: none; + text-align: center; +} + +.content DIV.titrePage UL.categoryActions { + float: right; + text-align: center; +} + +.content DIV.titrePage { + padding: 0 0 3px; +} + +.content UL.categoryActions LI { + display: inline; +} + +.content UL.categoryActions A IMG, UL.categoryActions A { + border: none; + margin-bottom: -5px; +} + +/* User comments */ + +.content DIV#comments { + padding-left: 5px; + padding-right: 5px; +} +.content DIV.comment { + margin: 0 0 0.5em 0; + padding: 0; + overflow: hidden; /* these 2 lines keep the floating child in the DIV */ + width: 100%; /* don't ask why. It's a very usefull trick */ +} + +.content DIV.comment A.illustration { + display: block; + float: left; + margin: 0.5em 0 0 0.5em; +} + +.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 BLOCKQUOTE { + margin-right: 0.5em; + overflow: visible; /*avoid a very strange margin behaviour (all browsers) */ +} + +/* begin chronology/calendar elements*/ +.content DIV.calendarViews { + display: block; + float: right; + margin: 2px 0 0; +} + +.content DIV.calendarBar { margin: 8px 4px; } + +SPAN.calItem, SPAN.calItemEmpty { + font-weight: bold; + margin: 0 1px; +} + +SPAN.calItem A { border:0 } + +.content DIV.calendarCalBar { + margin: 10px 10px; + text-align: left; +} + +SPAN.calCalHead { + font-weight: bold; + font-size: 110%; + margin: 0 2px; +} + +SPAN.calCal { margin: 0 2px; } + +/* nice looking month calendar*/ +TABLE.calMonth { + border: none; + border-collapse: collapse; + margin-bottom: 10px; /*<-IE ignores this */ +} + +TD.calDayCellFull, TD.calDayCellEmpty, TD.calDayCellBlank { + text-align:left; + vertical-align: top; + font: bold 18px Arial, Helvetica, sans-serif; +} + +TD.calDayHead { font: bold 12px Arial, Helvetica, sans-serif; } + +DIV.calImg { + overflow: hidden; + vertical-align: bottom; + z-index: 1; + position: relative; /*<- this required by IE*/ +} + +.calImg img { + position: relative; + border: 0; +} + +.calBackDate { + padding-left: 4px; + padding-top: 0px; + z-index: 2; + position: absolute; + text-align: left; + vertical-align: top; + color: #000; +} + +.calForeDate { + padding-left: 5px; + padding-top: 1px; + z-index: 3; + position: absolute; + text-align: left; + vertical-align: top; + color: #fff; +} + +/* Category thumbnails on main page, CSS code inspired from MOD subcatify */ +.content UL.thumbnailCategories { + margin: 0; + padding: 0; + list-style: none; + text-align: center; + overflow: hidden; + width: 100%; +} + +.content UL.thumbnailCategories LI { + margin:0; + padding:0; + float:left; +} + +.content DIV.thumbnailCategory { + display:block; + padding: 2px 0px 0px 2px; + margin: 5px; +} + +.content DIV.thumbnailCategory DIV.description { + font-size: 90%; + overflow: auto; + /*width: inherit;*/ +} + +.content DIV.thumbnailCategory DIV.description H3 { + text-align: left; + background: transparent; + margin: 0; + padding: 0.1em; + font-size: 120%; +} + +.content DIV.thumbnailCategory DIV.description P { + margin: 0; +} + +.content DIV.thumbnailCategory DIV.illustration { + text-align: left; + margin: 2px 0 0 2px; + float: left; +} diff --git a/BSF/template/yoga/default-colors.css b/BSF/template/yoga/default-colors.css new file mode 100644 index 000000000..1534e4f11 --- /dev/null +++ b/BSF/template/yoga/default-colors.css @@ -0,0 +1,112 @@ +/* $Id$ */ + +/* others */ + +#imageToolBar * { + background: inherit; +} + +/* So that non-links are slightly greyed out */ +.content .navigationBar, SPAN.calItemEmpty, TD.calDayCellEmpty { + color: #b0b0b0; +} + +/* Tables & forms */ + +/* IE <= 6 is so bad with this that you can't merge with the following rule */ +INPUT[type="text"], INPUT[type="password"], INPUT[type="button"], +INPUT[type="submit"], INPUT[type="reset"], INPUT[type="file"] { + color:black; + background-color: #d3d3d3; /* lightgrey */ +} + +INPUT.text, INPUT.password, INPUT.button, +INPUT.submit, INPUT.reset, INPUT.file, +SELECT, TEXTAREA { + color:black; + background-color: #d3d3d3; /* lightgrey */ +} + +INPUT:focus, SELECT:focus, TEXTAREA:focus, INPUT.focus, FORM .focus { + background-color: #f5f5f5; /* whitesmoke */ +} + +/* some theme set a border on INPUT which is not pretty for radio/checkbox */ +INPUT[type="radio"], INPUT[type="checkbox"] { + border: none; /* <= Opera needs this */ +} + +INPUT.radio, INPUT.checkbox { + border: none; /* <= IE6 needs this */ +} + +/* rate buttons displayed like links */ +INPUT.rateButton, INPUT.rateButtonSelected, INPUT.rateButtonStarFull, INPUT.rateButtonStarEmpty { + color:inherit; + background-color:transparent; /* Konqueror doesn't accept transparent here */ +} + +.errors { /* Errors display */ + color: red; + background-color: #ffe1e1; + font-weight: bold; + text-align: left; + margin: 5px; + border: 1px solid red; + background-image: url(icon/admin/errors.png); + background-repeat: no-repeat; + background-position: top right; + padding: 10px 50px 10px 10px; +} + +/** + * Informations box in administration + */ +.infos { + text-align: left; + color: #002000; + background-color: #98fb98; /* palegreen */ + background-image: url(icon/admin/infos.png); + background-repeat: no-repeat; + background-position: top right; + margin: 5px; + padding: 10px 50px 10px 10px; +} + +/** + * Header message like upgrade or adviser mode + */ +.header_msgs { + text-align:center; + font-weight: bold; + color:#696969; /* dimgray */ + background-color: #d3d3d3; + margin: 1px; + padding: 1px; +} + +/** + * Header notes box in public/administration + */ +.header_notes { + border: 1px solid #aaaaaa; /* border color and style */ + text-align: center; + background-image: url(icon/note.png); + background-repeat: no-repeat; + background-position: top left; + font-weight: bold; + margin: 14px; + padding: 5px 00px 0px 0px; +} + +LEGEND { + font-style: italic; +} + +/*calendar*/ +SPAN.calItem, SPAN.calItemEmpty, +TD.calDayCellEmpty, TD.calDayCellFull { + border: 1px solid gray; +} + + diff --git a/BSF/template/yoga/default-layout.css b/BSF/template/yoga/default-layout.css new file mode 100644 index 000000000..c6b229481 --- /dev/null +++ b/BSF/template/yoga/default-layout.css @@ -0,0 +1,270 @@ +/* $Id$ */ +@import "admin/default-layout.css"; +BODY { + margin: 5px; + padding: 0; + font-size: 0.8em; + font-family: Univers, Helvetica, Optima, "Bitstream Vera Sans", 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: 0.5em 0 1em 0; +} + +H2 { + margin: 0; + padding: 5px 0.5em 5px 0.5em; + text-align: left; + font-size: 120%; +} + +A { + text-decoration:none; + border-bottom: 1px dotted #005e89; +} +A:hover { + border-bottom: 1px solid #858460; +} +A.button, A.button:hover { + border: 0; +} +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 **/ +INPUT, SELECT { + margin: 0; + font-size: 1em; /* <= some browsers don't set it correctly */ +} +UL, DL, LI { text-align: left;} +TABLE { /* horizontaly centered */ + margin-left: auto; + margin-right: auto; +} +/* for debugging purpose */ +PRE { text-align:left; } + +/** forms **/ + +FORM { padding: 0em; } + +FORM P { + text-align: center; + margin-top: 2em; + margin-bottom: 2em; +} + +FORM FIELDSET P { + margin-top: 1em; + margin-bottom: 0; +} + +.small { + font-size: 80%; +} + +TEXTAREA.description { + height: 6em; + width: 40em; + overflow: auto; +} + +SELECT.categoryList { + height: 20em; + width: auto; +} + +DIV.comment BLOCKQUOTE { + padding: 0.5em; + overflow: auto; /* no solution for IE6 */ + min-height: 2.75em; /* fix a Gecko bug whith scrollbar and 1 line only */ +} + + +/** + * Filter forms are displayed label by label with the input (or select...) + * below the label. Use an UL to make a group (radiobox for instance). + * Use a SPAN to group objects in line + */ +FIELDSET { + padding: 1em; + margin: 1em; + overflow: hidden; /* <- makes Opera happy */ +} + +FORM.filter FIELDSET UL { + margin: 0; +} +FORM.filter FIELDSET UL, +FORM.filter FIELDSET LABEL { + display: block; + float: left; + margin-right: 1em; + padding: 0; +} + +FORM.filter FIELDSET LI { + list-style: none; + margin-bottom: 0.5em; +} + +FORM.filter FIELDSET LI LABEL { + display: inline; + float: none; +} + +FORM.filter FIELDSET UL.tagSelection LABEL { + display: inline; + float: none; + margin-right:0.5em;/*reduce from above*/ +} + +/* cannot use FIELDSET>LABEL because of IE<=6 */ +FORM.filter FIELDSET LABEL INPUT, +FORM.filter FIELDSET LABEL SELECT, +FORM.filter FIELDSET LABEL SPAN, +FORM.filter FIELDSET LABEL TEXTAREA { + display: block; + margin: 0.5em 0; +} +FORM.filter FIELDSET * LABEL INPUT, +FORM.filter FIELDSET * LABEL SELECT, +FORM.filter FIELDSET * LABEL TEXTAREA, +FORM.filter FIELDSET LABEL SPAN INPUT, +FORM.filter FIELDSET LABEL SPAN SELECT, +FORM.filter FIELDSET LABEL SPAN TEXTAREA { + display: inline; + vertical-align: top; + margin: 0 0.5em 0 0; +} + +FORM.filter FIELDSET UL.tagSelection LI LABEL INPUT { + margin-right:0; +} + +/* following declaration is important to avoid strange FF behaviour */ +FORM.filter FIELDSET LABEL SPAN SELECT { + margin: 0; +} + +FORM.filter FIELDSET P +{ + clear: left; + display: block; +} + +FORM.filter INPUT[type="submit"] { + margin-top: 1em; +} + +FORM.properties UL, FORM#update UL { + list-style-type: none; + margin: 0; + padding: 0; +} + +FORM.properties LI, FORM#update UL { + margin-bottom: 0.5em; + padding: 0; + line-height: 1.8em; + clear: left; +} + +FORM.properties SPAN.property { + font-weight: bold; + float: left; + width: 50%; + text-align: right; + margin: 0; + padding: 0 0.5em 0 0; +} + +#theHeader H1 { + margin-bottom: 0.5em; +} + +/* button tools */ +UL.actions { + text-indent: 0; + list-style: none; +} +UL.actions LI { + display: inline; +} +UL.actions A { + border: none; +} + +UL.tagSelection { + width: 99%; + margin: 1em 0 1em 0; + padding: 0; +} + +UL.tagSelection LI { + display: inline; + white-space: nowrap; +} + +#fullTagCloud { + font-size: 120%; + text-align: justify; + padding: 0; + margin: 1em 2em 1em 2em; +} + +#fullTagCloud LI { + display: inline; + white-space: nowrap; + margin: 0 2px; +} + + +.tagLevel5 { font-size: 150%; } +.tagLevel4 { font-size: 140%; } +.tagLevel3 { font-size: 120%; } +.tagLevel2 { font-size: 100%; } +.tagLevel1 { font-size: 90%; } + + +/* Popup help page */ +BODY#thePopuphelpPage #copyright { + 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 P#pageBottomActions A { + border: none; +} diff --git a/BSF/template/yoga/fix-ie5-ie6.css b/BSF/template/yoga/fix-ie5-ie6.css new file mode 100644 index 000000000..b78bc7bf4 --- /dev/null +++ b/BSF/template/yoga/fix-ie5-ie6.css @@ -0,0 +1,23 @@ +/* $Id$ */ +/* Issues in IE from 5 to 6 only not to be used with IE7 */ + +@import "thumbnails-fix-ie5-ie6.css"; + +/* to avoid vanishing objects in IE6 */ +H1, #theHeader { + width: 100%; /* <- useless but seems to make IE6 happy */ +} +.content { + height: 1em; /* for IE6 it's like min-height */ +} + +/* fix category thumbnails on main page */ +.content UL.thumbnailCategories { + width: 99%; /* buggy IE box model */ +} + + +/* fix quickconnect layout */ +FORM#quickconnect FIELDSET { + width: 99%; /* correct an ugly 1 or 2 px misalignement with IE */ +} diff --git a/BSF/template/yoga/fix-ie7.css b/BSF/template/yoga/fix-ie7.css new file mode 100644 index 000000000..33599dd18 --- /dev/null +++ b/BSF/template/yoga/fix-ie7.css @@ -0,0 +1,22 @@ +/* $Id$ */ +/* fix IE with another layout for thumbnails */ + +.content UL.thumbnails SPAN.wrap2 { + display: block; + position: relative; + text-align: left; +} +.content UL.thumbnails SPAN.wrap2 A, +.content UL.thumbnails SPAN.wrap2 SPAN { + overflow: visible; + position: absolute; + top: 50%; + text-align: center; +} + +.content UL.thumbnails IMG.thumbnail { + position: relative; + top: -50%; + margin-top: 2%; +} + diff --git a/BSF/template/yoga/fix-khtml.css b/BSF/template/yoga/fix-khtml.css new file mode 100644 index 000000000..29ffd1877 --- /dev/null +++ b/BSF/template/yoga/fix-khtml.css @@ -0,0 +1,20 @@ +/* $Id$ */ +/* Issue in Safari/Konqueror only */ +/* If H2 has a 0 margin-top categoryActions doesn't float right but overwrites H2 */ +.content>DIV.titrePage>H2 { + margin: 1px 0 0 0; /* add an arbitrary margin-top */ +} + +.content>div.titrePage { + position: relative; + top: -1px; /* move the container up by the same amount */ + margin-bottom: 5px; +} + +#menubar #menuTagCloud LI +{ + display: inline-block;/* required for Safari 3.1 - otherwise overflows on the right */ +} + +/* end Safari/Konqueror */ + diff --git a/BSF/template/yoga/footer.tpl b/BSF/template/yoga/footer.tpl new file mode 100644 index 000000000..fff70e1f1 --- /dev/null +++ b/BSF/template/yoga/footer.tpl @@ -0,0 +1,32 @@ +{* $Id$ *} +<div id="copyright"> + <a name="EoP"></a> <!-- End of Page --> + {if isset($debug.TIME) } + {'generation_time'|@translate} {$debug.TIME} ({$debug.NB_QUERIES} {'sql_queries_in'|@translate} {$debug.SQL_TIME}) - + {/if} + + {* Please, do not remove this copyright. If you really want to, + contact us on http://piwigo.org to find a solution on how + to show the origin of the script... + *} + + {'powered_by'|@translate} + <a href="http://piwigo.org" class="PWG"> + <span class="P">Php</span><span class="W">Web</span><span class="G">Gallery</span></a> + {$VERSION} + {if isset($CONTACT_MAIL)} + - {'send_mail'|@translate} + <a href="mailto:{$CONTACT_MAIL}?subject={'title_send_mail'|@translate|@escape:url}">{'Webmaster'|@translate}</a> + {/if} + +</div> <!-- copyright --> +{if isset($footer_elements)} +{foreach from=$footer_elements item=v} +{$v} +{/foreach} +{/if} +</div> <!-- the_page --> + +{if isset($debug.QUERIES_LIST)}{$debug.QUERIES_LIST}{/if} +</body> +</html>
\ No newline at end of file diff --git a/BSF/template/yoga/header.tpl b/BSF/template/yoga/header.tpl new file mode 100644 index 000000000..d0bec5e61 --- /dev/null +++ b/BSF/template/yoga/header.tpl @@ -0,0 +1,84 @@ +{* $Id$ *} +<!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}"> +<meta name="generator" content="Piwigo (aka PWG), see piwigo.org"> +<title>{$GALLERY_TITLE} :: {$PAGE_TITLE}</title> +<link rel="shortcut icon" type="image/x-icon" href="{$ROOT_URL}template-common/favicon.ico"> + +<link rel="start" title="{'home'|@translate}" href="{$U_HOME}" > +<link rel="search" title="{'Search'|@translate}" href="{$ROOT_URL}search.php" > +{if isset($first.U_IMG) }<link rel="first" title="{'first_page'|@translate}" href="{$first.U_IMG}" >{/if} +{if isset($previous.U_IMG)}<link rel="prev" title="{'previous_page'|@translate}" href="{$previous.U_IMG}" >{/if} +{if isset($next.U_IMG) }<link rel="next" title="{'next_page'|@translate}" href="{$next.U_IMG}" >{/if} +{if isset($last.U_IMG) }<link rel="last" title="{'last_page'|@translate}" href="{$last.U_IMG}" >{/if} +{if isset($U_UP) }<link rel="up" title="{'thumbnails'|@translate}" href="{$U_UP}" >{/if} + +<link rel="stylesheet" type="text/css" href="{$ROOT_URL}template/{$themeconf.template}/layout.css"> +{* the next css is used to fix khtml (Konqueror/Safari) issue the "text/nonsense" prevents gecko based browsers to load it *} +<link rel="stylesheet" type="text/nonsense" href="{$ROOT_URL}template/{$themeconf.template}/fix-khtml.css"> +<!--[if lt IE 7]> + <link rel="stylesheet" type="text/css" href="{$ROOT_URL}template/{$themeconf.template}/fix-ie5-ie6.css"> +<![endif]--> +<!--[if gt IE 6]> + <link rel="stylesheet" type="text/css" href="{$ROOT_URL}template/{$themeconf.template}/fix-ie7.css"> +<![endif]--> +<!--[if !IE]> <--> + <link rel="stylesheet" href="{$ROOT_URL}template/{$themeconf.template}/not-ie.css" type="text/css"> +<!--> <![endif]--> +<link rel="stylesheet" type="text/css" media="print" href="{$ROOT_URL}template/{$themeconf.template}/print.css"> +<link rel="stylesheet" type="text/css" href="{$ROOT_URL}template/{$themeconf.template}/default-colors.css"> +<link rel="stylesheet" type="text/css" href="{$ROOT_URL}template/{$themeconf.template}/theme/{$themeconf.theme}/theme.css"> +{$themeconf.local_head} +{if isset($U_PREFETCH) }<link rel="prefetch" href="{$U_PREFETCH}">{/if} + +{if not empty($page_refresh) }<meta http-equiv="refresh" content="{$page_refresh.TIME};url={$page_refresh.U_REFRESH}">{/if} + +<script type="text/javascript" src="{$ROOT_URL}template-common/scripts.js"></script> +<!--[if lt IE 7]> +<style> + {* only because we need {$ROOT_URL} otherwise use fix-ie5-ie6.css *} + BODY {ldelim} behavior:url("{$ROOT_URL}template-common/csshover.htc"); } + A IMG, .button, .icon {ldelim} + behavior:url("{$ROOT_URL}template-common/tooltipfix.htc"); + } + FORM {ldelim} behavior: url("{$ROOT_URL}template-common/inputfix.htc"); } +</style> +<script type="text/javascript" src="{$ROOT_URL}template-common/pngfix.js"></script> +<![endif]--> + +{if not empty($head_elements)} + {foreach from=$head_elements item=elt}{$elt}{/foreach} +{/if} + +</head> + +<body id="{$BODY_ID}"> +<div id="the_page"> + +{if not empty($header_msgs)} +<div class="header_msgs"> + {foreach from=$header_msgs item=elt} + <p>{$elt}</p> + {/foreach} +</div> +{/if} + +<div id="theHeader">{$PAGE_BANNER}</div> +{if isset($pwgmenu)} +<ul class="pwgmenu"> + <li><a href="{$pwgmenu.HOME}" onclick="window.open(this.href, ''); return false;"><span class="bg">{'HOME'|@translate}</span></a></li> + <li><a href="{$pwgmenu.WIKI}" onclick="window.open(this.href, ''); return false;"><span class="bg">{'WIKI / DOC'|@translate}</span></a></li> + <li><a href="{$pwgmenu.FORUM}" onclick="window.open(this.href, ''); return false;"><span class="bg">{'FORUM'|@translate}</span></a></li> + <li><a href="{$pwgmenu.EXTENSIONS}" onclick="window.open(this.href, ''); return false;"><span class="bg">{'EXTENSIONS'|@translate}</span></a></li> +</ul> +{/if} +{if not empty($header_notes)} +<div class="header_notes"> + {foreach from=$header_notes item=elt} + <p>{$elt}</p> + {/foreach} +</div> +{/if} diff --git a/BSF/template/yoga/icon/add_tag.png b/BSF/template/yoga/icon/add_tag.png Binary files differnew file mode 100644 index 000000000..9051a1d26 --- /dev/null +++ b/BSF/template/yoga/icon/add_tag.png diff --git a/BSF/template/yoga/icon/admin/errors.png b/BSF/template/yoga/icon/admin/errors.png Binary files differnew file mode 100644 index 000000000..3c8a37df5 --- /dev/null +++ b/BSF/template/yoga/icon/admin/errors.png diff --git a/BSF/template/yoga/icon/admin/index.php b/BSF/template/yoga/icon/admin/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/icon/admin/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/icon/admin/infos.png b/BSF/template/yoga/icon/admin/infos.png Binary files differnew file mode 100644 index 000000000..dc8c8a457 --- /dev/null +++ b/BSF/template/yoga/icon/admin/infos.png diff --git a/BSF/template/yoga/icon/admin/plugin_active.gif b/BSF/template/yoga/icon/admin/plugin_active.gif Binary files differnew file mode 100644 index 000000000..fe49227da --- /dev/null +++ b/BSF/template/yoga/icon/admin/plugin_active.gif diff --git a/BSF/template/yoga/icon/admin/plugin_inactive.gif b/BSF/template/yoga/icon/admin/plugin_inactive.gif Binary files differnew file mode 100644 index 000000000..19d551865 --- /dev/null +++ b/BSF/template/yoga/icon/admin/plugin_inactive.gif diff --git a/BSF/template/yoga/icon/caddie_add.png b/BSF/template/yoga/icon/caddie_add.png Binary files differnew file mode 100644 index 000000000..eb20f4e06 --- /dev/null +++ b/BSF/template/yoga/icon/caddie_add.png diff --git a/BSF/template/yoga/icon/calendar.png b/BSF/template/yoga/icon/calendar.png Binary files differnew file mode 100644 index 000000000..e0a44a13d --- /dev/null +++ b/BSF/template/yoga/icon/calendar.png diff --git a/BSF/template/yoga/icon/calendar_created.png b/BSF/template/yoga/icon/calendar_created.png Binary files differnew file mode 100644 index 000000000..14a84c43c --- /dev/null +++ b/BSF/template/yoga/icon/calendar_created.png diff --git a/BSF/template/yoga/icon/category_children.png b/BSF/template/yoga/icon/category_children.png Binary files differnew file mode 100644 index 000000000..7205c3f61 --- /dev/null +++ b/BSF/template/yoga/icon/category_children.png diff --git a/BSF/template/yoga/icon/category_delete.png b/BSF/template/yoga/icon/category_delete.png Binary files differnew file mode 100644 index 000000000..da796da11 --- /dev/null +++ b/BSF/template/yoga/icon/category_delete.png diff --git a/BSF/template/yoga/icon/category_edit.png b/BSF/template/yoga/icon/category_edit.png Binary files differnew file mode 100644 index 000000000..0f3b619ed --- /dev/null +++ b/BSF/template/yoga/icon/category_edit.png diff --git a/BSF/template/yoga/icon/category_elements.png b/BSF/template/yoga/icon/category_elements.png Binary files differnew file mode 100644 index 000000000..1d367b38f --- /dev/null +++ b/BSF/template/yoga/icon/category_elements.png diff --git a/BSF/template/yoga/icon/category_jump-to.png b/BSF/template/yoga/icon/category_jump-to.png Binary files differnew file mode 100644 index 000000000..62db1f4ee --- /dev/null +++ b/BSF/template/yoga/icon/category_jump-to.png diff --git a/BSF/template/yoga/icon/category_permissions.png b/BSF/template/yoga/icon/category_permissions.png Binary files differnew file mode 100644 index 000000000..4780841ae --- /dev/null +++ b/BSF/template/yoga/icon/category_permissions.png diff --git a/BSF/template/yoga/icon/category_representant_random.png b/BSF/template/yoga/icon/category_representant_random.png Binary files differnew file mode 100644 index 000000000..dfa69846f --- /dev/null +++ b/BSF/template/yoga/icon/category_representant_random.png diff --git a/BSF/template/yoga/icon/check.png b/BSF/template/yoga/icon/check.png Binary files differnew file mode 100644 index 000000000..d9abf2763 --- /dev/null +++ b/BSF/template/yoga/icon/check.png diff --git a/BSF/template/yoga/icon/dec_period.png b/BSF/template/yoga/icon/dec_period.png Binary files differnew file mode 100644 index 000000000..107cd16ec --- /dev/null +++ b/BSF/template/yoga/icon/dec_period.png diff --git a/BSF/template/yoga/icon/dec_period_unactive.png b/BSF/template/yoga/icon/dec_period_unactive.png Binary files differnew file mode 100644 index 000000000..5bc67affd --- /dev/null +++ b/BSF/template/yoga/icon/dec_period_unactive.png diff --git a/BSF/template/yoga/icon/del_favorite.png b/BSF/template/yoga/icon/del_favorite.png Binary files differnew file mode 100644 index 000000000..cfc609749 --- /dev/null +++ b/BSF/template/yoga/icon/del_favorite.png diff --git a/BSF/template/yoga/icon/delete.png b/BSF/template/yoga/icon/delete.png Binary files differnew file mode 100644 index 000000000..af10be03e --- /dev/null +++ b/BSF/template/yoga/icon/delete.png diff --git a/BSF/template/yoga/icon/edit_s.png b/BSF/template/yoga/icon/edit_s.png Binary files differnew file mode 100644 index 000000000..e4951d22f --- /dev/null +++ b/BSF/template/yoga/icon/edit_s.png diff --git a/BSF/template/yoga/icon/exit.png b/BSF/template/yoga/icon/exit.png Binary files differnew file mode 100644 index 000000000..2aafbb4cb --- /dev/null +++ b/BSF/template/yoga/icon/exit.png diff --git a/BSF/template/yoga/icon/favorite.png b/BSF/template/yoga/icon/favorite.png Binary files differnew file mode 100644 index 000000000..58befd9e3 --- /dev/null +++ b/BSF/template/yoga/icon/favorite.png diff --git a/BSF/template/yoga/icon/first.png b/BSF/template/yoga/icon/first.png Binary files differnew file mode 100644 index 000000000..2b8db1cff --- /dev/null +++ b/BSF/template/yoga/icon/first.png diff --git a/BSF/template/yoga/icon/first_unactive.png b/BSF/template/yoga/icon/first_unactive.png Binary files differnew file mode 100644 index 000000000..f0c0364f2 --- /dev/null +++ b/BSF/template/yoga/icon/first_unactive.png diff --git a/BSF/template/yoga/icon/flat.png b/BSF/template/yoga/icon/flat.png Binary files differnew file mode 100644 index 000000000..43584e825 --- /dev/null +++ b/BSF/template/yoga/icon/flat.png diff --git a/BSF/template/yoga/icon/help.png b/BSF/template/yoga/icon/help.png Binary files differnew file mode 100644 index 000000000..c76f68292 --- /dev/null +++ b/BSF/template/yoga/icon/help.png diff --git a/BSF/template/yoga/icon/home.png b/BSF/template/yoga/icon/home.png Binary files differnew file mode 100644 index 000000000..cce450d85 --- /dev/null +++ b/BSF/template/yoga/icon/home.png diff --git a/BSF/template/yoga/icon/inc_period.png b/BSF/template/yoga/icon/inc_period.png Binary files differnew file mode 100644 index 000000000..28fef3d1b --- /dev/null +++ b/BSF/template/yoga/icon/inc_period.png diff --git a/BSF/template/yoga/icon/inc_period_unactive.png b/BSF/template/yoga/icon/inc_period_unactive.png Binary files differnew file mode 100644 index 000000000..f45507dce --- /dev/null +++ b/BSF/template/yoga/icon/inc_period_unactive.png diff --git a/BSF/template/yoga/icon/index.php b/BSF/template/yoga/icon/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/icon/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/icon/last.png b/BSF/template/yoga/icon/last.png Binary files differnew file mode 100644 index 000000000..12e1367a7 --- /dev/null +++ b/BSF/template/yoga/icon/last.png diff --git a/BSF/template/yoga/icon/last_unactive.png b/BSF/template/yoga/icon/last_unactive.png Binary files differnew file mode 100644 index 000000000..90469d5c4 --- /dev/null +++ b/BSF/template/yoga/icon/last_unactive.png diff --git a/BSF/template/yoga/icon/left.png b/BSF/template/yoga/icon/left.png Binary files differnew file mode 100644 index 000000000..63d306c9c --- /dev/null +++ b/BSF/template/yoga/icon/left.png diff --git a/BSF/template/yoga/icon/left_unactive.png b/BSF/template/yoga/icon/left_unactive.png Binary files differnew file mode 100644 index 000000000..0aefc64e4 --- /dev/null +++ b/BSF/template/yoga/icon/left_unactive.png diff --git a/BSF/template/yoga/icon/lost_password.png b/BSF/template/yoga/icon/lost_password.png Binary files differnew file mode 100644 index 000000000..ad6d71422 --- /dev/null +++ b/BSF/template/yoga/icon/lost_password.png diff --git a/BSF/template/yoga/icon/metadata.png b/BSF/template/yoga/icon/metadata.png Binary files differnew file mode 100644 index 000000000..d5d8fa6dc --- /dev/null +++ b/BSF/template/yoga/icon/metadata.png diff --git a/BSF/template/yoga/icon/mimetypes/avi.png b/BSF/template/yoga/icon/mimetypes/avi.png Binary files differnew file mode 100644 index 000000000..065f0b282 --- /dev/null +++ b/BSF/template/yoga/icon/mimetypes/avi.png diff --git a/BSF/template/yoga/icon/mimetypes/index.php b/BSF/template/yoga/icon/mimetypes/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/icon/mimetypes/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/icon/mimetypes/mp3.png b/BSF/template/yoga/icon/mimetypes/mp3.png Binary files differnew file mode 100644 index 000000000..afb7e1b0a --- /dev/null +++ b/BSF/template/yoga/icon/mimetypes/mp3.png diff --git a/BSF/template/yoga/icon/mimetypes/mpg.png b/BSF/template/yoga/icon/mimetypes/mpg.png Binary files differnew file mode 100644 index 000000000..f7dbd2388 --- /dev/null +++ b/BSF/template/yoga/icon/mimetypes/mpg.png diff --git a/BSF/template/yoga/icon/mimetypes/ogg.png b/BSF/template/yoga/icon/mimetypes/ogg.png Binary files differnew file mode 100644 index 000000000..ead3f62c3 --- /dev/null +++ b/BSF/template/yoga/icon/mimetypes/ogg.png diff --git a/BSF/template/yoga/icon/mimetypes/zip.png b/BSF/template/yoga/icon/mimetypes/zip.png Binary files differnew file mode 100644 index 000000000..1f08fe1a3 --- /dev/null +++ b/BSF/template/yoga/icon/mimetypes/zip.png diff --git a/BSF/template/yoga/icon/normal_mode.png b/BSF/template/yoga/icon/normal_mode.png Binary files differnew file mode 100644 index 000000000..92d27a234 --- /dev/null +++ b/BSF/template/yoga/icon/normal_mode.png diff --git a/BSF/template/yoga/icon/note.png b/BSF/template/yoga/icon/note.png Binary files differnew file mode 100644 index 000000000..5849f791b --- /dev/null +++ b/BSF/template/yoga/icon/note.png diff --git a/BSF/template/yoga/icon/page_end.png b/BSF/template/yoga/icon/page_end.png Binary files differnew file mode 100644 index 000000000..c8f54fb91 --- /dev/null +++ b/BSF/template/yoga/icon/page_end.png diff --git a/BSF/template/yoga/icon/page_top.png b/BSF/template/yoga/icon/page_top.png Binary files differnew file mode 100644 index 000000000..8b18f13c3 --- /dev/null +++ b/BSF/template/yoga/icon/page_top.png diff --git a/BSF/template/yoga/icon/pause.png b/BSF/template/yoga/icon/pause.png Binary files differnew file mode 100644 index 000000000..6a3928c51 --- /dev/null +++ b/BSF/template/yoga/icon/pause.png diff --git a/BSF/template/yoga/icon/permissions.png b/BSF/template/yoga/icon/permissions.png Binary files differnew file mode 100644 index 000000000..33091eb85 --- /dev/null +++ b/BSF/template/yoga/icon/permissions.png diff --git a/BSF/template/yoga/icon/play.png b/BSF/template/yoga/icon/play.png Binary files differnew file mode 100644 index 000000000..dfde7e96a --- /dev/null +++ b/BSF/template/yoga/icon/play.png diff --git a/BSF/template/yoga/icon/preferences.png b/BSF/template/yoga/icon/preferences.png Binary files differnew file mode 100644 index 000000000..0f3b619ed --- /dev/null +++ b/BSF/template/yoga/icon/preferences.png diff --git a/BSF/template/yoga/icon/rating-stars.gif b/BSF/template/yoga/icon/rating-stars.gif Binary files differnew file mode 100644 index 000000000..535443e06 --- /dev/null +++ b/BSF/template/yoga/icon/rating-stars.gif diff --git a/BSF/template/yoga/icon/recent.png b/BSF/template/yoga/icon/recent.png Binary files differnew file mode 100644 index 000000000..78c1428ca --- /dev/null +++ b/BSF/template/yoga/icon/recent.png diff --git a/BSF/template/yoga/icon/recent_by_child.png b/BSF/template/yoga/icon/recent_by_child.png Binary files differnew file mode 100644 index 000000000..48e2b4bf7 --- /dev/null +++ b/BSF/template/yoga/icon/recent_by_child.png diff --git a/BSF/template/yoga/icon/register.png b/BSF/template/yoga/icon/register.png Binary files differnew file mode 100644 index 000000000..d1dd3c834 --- /dev/null +++ b/BSF/template/yoga/icon/register.png diff --git a/BSF/template/yoga/icon/remove_s.png b/BSF/template/yoga/icon/remove_s.png Binary files differnew file mode 100644 index 000000000..c78c38f17 --- /dev/null +++ b/BSF/template/yoga/icon/remove_s.png diff --git a/BSF/template/yoga/icon/representative.png b/BSF/template/yoga/icon/representative.png Binary files differnew file mode 100644 index 000000000..f1141d91b --- /dev/null +++ b/BSF/template/yoga/icon/representative.png diff --git a/BSF/template/yoga/icon/right.png b/BSF/template/yoga/icon/right.png Binary files differnew file mode 100644 index 000000000..f998098e4 --- /dev/null +++ b/BSF/template/yoga/icon/right.png diff --git a/BSF/template/yoga/icon/right_unactive.png b/BSF/template/yoga/icon/right_unactive.png Binary files differnew file mode 100644 index 000000000..cf2f9614c --- /dev/null +++ b/BSF/template/yoga/icon/right_unactive.png diff --git a/BSF/template/yoga/icon/save.png b/BSF/template/yoga/icon/save.png Binary files differnew file mode 100644 index 000000000..b4b9da08b --- /dev/null +++ b/BSF/template/yoga/icon/save.png diff --git a/BSF/template/yoga/icon/search_rules.png b/BSF/template/yoga/icon/search_rules.png Binary files differnew file mode 100644 index 000000000..300186647 --- /dev/null +++ b/BSF/template/yoga/icon/search_rules.png diff --git a/BSF/template/yoga/icon/start_filter.png b/BSF/template/yoga/icon/start_filter.png Binary files differnew file mode 100644 index 000000000..3d81a4d2e --- /dev/null +++ b/BSF/template/yoga/icon/start_filter.png diff --git a/BSF/template/yoga/icon/start_repeat.png b/BSF/template/yoga/icon/start_repeat.png Binary files differnew file mode 100644 index 000000000..74272979e --- /dev/null +++ b/BSF/template/yoga/icon/start_repeat.png diff --git a/BSF/template/yoga/icon/start_slideshow.png b/BSF/template/yoga/icon/start_slideshow.png Binary files differnew file mode 100644 index 000000000..9733eb445 --- /dev/null +++ b/BSF/template/yoga/icon/start_slideshow.png diff --git a/BSF/template/yoga/icon/stop_filter.png b/BSF/template/yoga/icon/stop_filter.png Binary files differnew file mode 100644 index 000000000..1ff012e96 --- /dev/null +++ b/BSF/template/yoga/icon/stop_filter.png diff --git a/BSF/template/yoga/icon/stop_repeat.png b/BSF/template/yoga/icon/stop_repeat.png Binary files differnew file mode 100644 index 000000000..f1cc1b564 --- /dev/null +++ b/BSF/template/yoga/icon/stop_repeat.png diff --git a/BSF/template/yoga/icon/stop_slideshow.png b/BSF/template/yoga/icon/stop_slideshow.png Binary files differnew file mode 100644 index 000000000..7b8d3ac26 --- /dev/null +++ b/BSF/template/yoga/icon/stop_slideshow.png diff --git a/BSF/template/yoga/icon/sync_metadata.png b/BSF/template/yoga/icon/sync_metadata.png Binary files differnew file mode 100644 index 000000000..03570ead6 --- /dev/null +++ b/BSF/template/yoga/icon/sync_metadata.png diff --git a/BSF/template/yoga/icon/toggle_is_default_group.png b/BSF/template/yoga/icon/toggle_is_default_group.png Binary files differnew file mode 100644 index 000000000..9eaa3c601 --- /dev/null +++ b/BSF/template/yoga/icon/toggle_is_default_group.png diff --git a/BSF/template/yoga/icon/uncheck.png b/BSF/template/yoga/icon/uncheck.png Binary files differnew file mode 100644 index 000000000..2f7df3503 --- /dev/null +++ b/BSF/template/yoga/icon/uncheck.png diff --git a/BSF/template/yoga/icon/up.png b/BSF/template/yoga/icon/up.png Binary files differnew file mode 100644 index 000000000..0c9cda5b1 --- /dev/null +++ b/BSF/template/yoga/icon/up.png diff --git a/BSF/template/yoga/icon/validate_s.png b/BSF/template/yoga/icon/validate_s.png Binary files differnew file mode 100644 index 000000000..400bf8a24 --- /dev/null +++ b/BSF/template/yoga/icon/validate_s.png diff --git a/BSF/template/yoga/icon/virt_category.png b/BSF/template/yoga/icon/virt_category.png Binary files differnew file mode 100644 index 000000000..15f4f2267 --- /dev/null +++ b/BSF/template/yoga/icon/virt_category.png diff --git a/BSF/template/yoga/identification.tpl b/BSF/template/yoga/identification.tpl new file mode 100644 index 000000000..71ba02750 --- /dev/null +++ b/BSF/template/yoga/identification.tpl @@ -0,0 +1,71 @@ +{* $Id$ *} +<div id="content" class="content"> + + <div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_LOST_PASSWORD}" title="{'Forgot your password?'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/lost_password.png" class="button" alt="{'Forgot your password?'|@translate}"></a></li> + {if isset($U_REGISTER) } + <li><a href="{$U_REGISTER}" title="{'Create a new account'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/register.png" class="button" alt="{'Register'|@translate}"/></a></li> + {/if} + <li><a href="{$U_HOME}" title="{'Go through the gallery as a visitor'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/></a></li> + </ul> + <h2>{'Identification'|@translate}</h2> + </div> + + {if isset($errors) } + <div class="errors"> + <ul> + {foreach from=$errors item=error} + <li>{$error}</li> + {/foreach} + </ul> + </div> + {/if} + +<form action="{$F_LOGIN_ACTION}" method="post" name="login_form" class="properties"> + <fieldset> + <legend>{'Connection settings'|@translate}</legend> + + <input type="hidden" name="redirect" value="{$U_REDIRECT}"> + + <ul> + <li> + <span class="property"> + <label for="username">{'Username'|@translate}</label> + </span> + <input tabindex="1" class="login" type="text" name="username" id="username" size="25" maxlength="40" /> + </li> + + <li> + <span class="property"> + <label for="password">{'Password'|@translate}</label> + </span> + <input tabindex="2" class="login" type="password" name="password" id="password" size="25" maxlength="25" /> + </li> + + {if $authorize_remembering } + <li> + <span class="property"> + <label for="remember_me">{'remember_me'|@translate}</label> + </span> + <input tabindex="3" type="checkbox" name="remember_me" id="remember_me" value="1"> + </li> + {/if} + </ul> + </fieldset> + + <p><input class="submit" tabindex="4" type="submit" name="login" value="{'Submit'|@translate}"></p> +</form> + +<script type="text/javascript"><!-- +document.login_form.username.focus(); +//--></script> + + <p> + {if isset($U_REGISTER) } + <a href="{$U_REGISTER}" title="{'Create a new account'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/register.png" class="button" alt="{'Register'|@translate}"> {'Register'|@translate}</a> + {/if} + <a href="{$U_LOST_PASSWORD}" title="{'Forgot your password?'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/lost_password.png" class="button" alt="{'Forgot your password?'|@translate}"> {'Forgot your password?'|@translate}</a> + </p> + +</div> <!-- content --> diff --git a/BSF/template/yoga/index.php b/BSF/template/yoga/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/index.tpl b/BSF/template/yoga/index.tpl new file mode 100644 index 000000000..814cce81f --- /dev/null +++ b/BSF/template/yoga/index.tpl @@ -0,0 +1,119 @@ +{* $Id$ *} +{$MENUBAR} +{if !empty($PLUGIN_INDEX_CONTENT_BEFORE)}{$PLUGIN_INDEX_CONTENT_BEFORE}{/if} +<div id="content" class="content"> + <div class="titrePage"> + <ul class="categoryActions"> + <li> </li> + {if !empty($image_orders) } + <li> + {'Sort order'|@translate}: + <select onchange="document.location = this.options[this.selectedIndex].value;"> + {foreach from=$image_orders item=image_order } + <option value="{$image_order.URL}"{if $image_order.SELECTED} selected="selected"{/if}}>{$image_order.DISPLAY}</option> + {/foreach} + </select> + </li> + {/if} + + {if isset($U_CADDIE) } + <li><a href="{$U_CADDIE}" title="{'add to caddie'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/caddie_add.png" class="button" alt="{'caddie'|@translate}"/></a></li> + {/if} + + {if isset($U_EDIT) } + <li><a href="{$U_EDIT}" title="{'edit category informations'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/category_edit.png" class="button" alt="{'edit'|@translate}"/></a></li> + {/if} + + {if isset($U_SEARCH_RULES) } + <li><a href="{$U_SEARCH_RULES}" style="border:none;" onclick="popuphelp(this.href); return false;" title="{'Search rules'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/search_rules.png" class="button" alt="(?)"></a></li> + {/if} + + {if isset($U_SLIDESHOW) } + <li><a href="{$U_SLIDESHOW}" title="{'slideshow'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/start_slideshow.png" class="button" alt="{'slideshow'|@translate}"/></a></li> + {/if} + + {if isset($U_MODE_FLAT) } + <li><a href="{$U_MODE_FLAT}" title="{'mode_flat_hint'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/flat.png" class="button" alt="{'mode_flat_hint'|@translate}"></a></li> + {/if} + + {if isset($U_MODE_NORMAL) } + <li><a href="{$U_MODE_NORMAL}" title="{'mode_normal_hint'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/normal_mode.png" class="button" alt="{'mode_normal_hint'|@translate}"></a></li> + {/if} + + {if isset($U_MODE_POSTED) } + <li><a href="{$U_MODE_POSTED}" title="{'mode_posted_hint'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/calendar.png" class="button" alt="{'mode_posted_hint'|@translate}"></a></li> + {/if} + + {if isset($U_MODE_CREATED) } + <li><a href="{$U_MODE_CREATED}" title="{'mode_created_hint'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/calendar_created.png" class="button" alt="{'mode_created_hint'|@translate}"></a></li> + {/if} + + {if !empty($PLUGIN_INDEX_ACTIONS)}{$PLUGIN_INDEX_ACTIONS}{/if} + </ul> + + <h2>{$TITLE}</h2> + + {if isset($chronology_views) } + <div class="calendarViews">{'calendar_view'|@translate}: + <select onchange="document.location = this.options[this.selectedIndex].value;"> + {foreach from=$chronology_views item=view} + <option value="{$view.VALUE}"{if $view.SELECTED} selected="selected"{/if}>{$view.CONTENT}</option> + {/foreach} + </select> + </div> + {/if} + + {if isset($chronology.TITLE) } + <h2>{$chronology.TITLE}</h2> + {/if} + + </div> <!-- titrePage --> + +{if !empty($PLUGIN_INDEX_CONTENT_BEGIN)}{$PLUGIN_INDEX_CONTENT_BEGIN}{/if} + +{if !empty($category_search_results) } +<div style="font-size:16px;text-align:left;margin:10px">{'Category results for'|@translate} <strong>{$QUERY_SEARCH}</strong> : + <em><strong> + {foreach from=$category_search_results item=res name=res_loop} + {if !$smarty.foreach.res_loop.first} — {/if} + {$res} + {/foreach} + </strong></em> +</div> +{/if} + +{if !empty($tag_search_results) } +<div style="font-size:16px;text-align:left;margin:10px">{'Tag results for'|@translate} <strong>{$QUERY_SEARCH}</strong> : + <em><strong> + {foreach from=$tag_search_results item=res name=res_loop} + {if !$smarty.foreach.res_loop.first} — {/if} + {$res} + {/foreach} + </strong></em> +</div> +{/if} + +{if isset($FILE_CHRONOLOGY_VIEW) } +{include file=$FILE_CHRONOLOGY_VIEW} +{/if} + +{if !empty($CATEGORIES) }{$CATEGORIES}{/if} +{if !empty($THUMBNAILS) }{$THUMBNAILS}{/if} + + +{if !empty($NAV_BAR) } +<div class="navigationBar"> + {$NAV_BAR} +</div> +{/if} + +{if !empty($CONTENT_DESCRIPTION) } +<div class="additional_info"> + {$CONTENT_DESCRIPTION} +</div> +{/if} + +{if !empty($PLUGIN_INDEX_CONTENT_END) }{$PLUGIN_INDEX_CONTENT_END}{/if} +</div> <!-- content --> + +{if !empty($PLUGIN_INDEX_CONTENT_AFTER)}{$PLUGIN_INDEX_CONTENT_AFTER}{/if} diff --git a/BSF/template/yoga/install.tpl b/BSF/template/yoga/install.tpl new file mode 100644 index 000000000..9f73c6320 --- /dev/null +++ b/BSF/template/yoga/install.tpl @@ -0,0 +1,255 @@ +{* $Id$ *} +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" +"http://www.w3.org/TR/html4/strict.dtd"> +<html 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>Piwigo {$RELEASE}</title> +{literal} +<style type="text/css"> + +body, input, select { + background-color:#cde; +} + +body { + margin: 5px; + padding: 0; + font-size: 0.8em; + font-family: Univers, Helvetica, Optima, "Bitstream Vera Sans", sans-serif; +} + +body, table, input, form, select { + color:#369; + text-align:left; +} + +a { + text-decoration: none; + color: #c60; +} + +a:hover { + color: #f92; +} + +table { + border-collapse:separate; +} + +.title { + letter-spacing: 0.2em; + text-align : center; + font-size: 150%; + font-weight: bold; + padding: 0; + margin: 0.5em 0 1em 0; +} + +.contenucellule { + border-color: #69c; + background-color:#eee; + margin:12px 20px; + border-width: 3px; + border-style: solid ; +} + +.error_copy { + color: #900; +} + +th, .submit { + text-align: center; + font-weight: bold; + background-color: #369; +} + +th { + font-size: 120%; + margin-bottom:10px; + color:#fff; +} + +td.row { + font-size: 90%; +} + +.submit { + color: #cde +} + +.header { + font-weight: normal; + text-align: center; + margin: 20px; +} + +.infos { + padding: 15px; + font-weight: normal; + text-align: left; +} + +.infos_title { + font-size: 150%; + padding: 15px; + font-weight: bold; + text-align: left; +} + +.errors { + text-align: left; + margin: 25px; + color: #900; + background-color: #ffe1e1; + border:1px solid red; +} +</style> +{/literal} +</head> +<body> + <table style="width:100%;height:100%"> + <tr align="center" valign="middle"> + <td> + <div class="title">Piwigo {$RELEASE}</div> + <table class="table1"> + {if isset($errors)} + <tr> + <td class="contenucellule" colspan="3"> + <div class="errors"> + <ul> + {foreach from=$errors item=error} + <li>{$error}</li> + {/foreach} + </ul> + </div> + </td> + </tr> + {/if} + {if isset($infos)} + <tr> + <td class="contenucellule" colspan="3"> + <div class="infos"> + <ul> + {foreach from=$infos item=info} + <li>{$info}</li> + {/foreach} + </ul> + </div> + </td> + </tr> + {/if} + <tr> + <td class="contenucellule"> + +{if isset($error_copy)} +{'step1_err_copy'|@translate} : +<br />-----------------------------------------------------<br /> +<div class="error_copy">{$error_copy}</div> +-----------------------------------------------------<br /> +{/if} + +{if isset($install)} +<form method="POST" action="{$F_ACTION}" name="install_form"> + <table> + <tr> + <th colspan="3">{'Initial_config'|@translate}</th> + </tr> + <tr> + <td style="width:30%;">{'Default_lang'|@translate}</td> + <td colspan="2" align="left"> + <select name="language" onchange="document.location = 'install.php?language='+this.options[this.selectedIndex].value;"> + {html_options options=$language_options selected=$language_selection} + </select> + </td> + </tr> + <tr> + <td colspan="3"> </td> + </tr> + <tr> + <th colspan="3">{'step1_title'|@translate}</th> + </tr> + <tr> + <td>{'step1_host'|@translate}</td> + <td align=center><input type="text" name="dbhost" value="{$F_DB_HOST}" /></td> + <td class="row">{'step1_host_info'|@translate}</td> + </tr> + <tr> + <td>{'step1_user'|@translate}</td> + <td align=center><input type="text" name="dbuser" value="{$F_DB_USER}" /></td> + <td class="row">{'step1_user_info'|@translate}</td> + </tr> + <tr> + <td>{'step1_pass'|@translate}</td> + <td align=center><input type="password" name="dbpasswd" value="" /></td> + <td class="row">{'step1_pass_info'|@translate}</td> + </tr> + <tr> + <td>{'step1_database'|@translate}</td> + <td align=center><input type="text" name="dbname" value="{$F_DB_NAME}" /></td> + <td class="row">{'step1_database_info'|@translate}</td> + </tr> + <tr> + <td>{'step1_prefix'|@translate}</td> + <td align=center><input type="text" name="prefix" value="{$F_DB_PREFIX}" /></td> + <td class="row">{'step1_prefix_info'|@translate}</td> + </tr> + <tr> + <td colspan="3"> </td> + </tr> + <tr> + <th colspan="3">{'step2_title'|@translate}</th> + </tr> + <tr> + <td>{'install_webmaster'|@translate}</td> + <td align="center"><input type="text" name="admin_name" value="{$F_ADMIN}" /></td> + <td class="row">{'install_webmaster_info'|@translate}</td> + </tr> + <tr> + <td>{'step2_pwd'|@translate}</td> + <td align="center"><input type="password" name="admin_pass1" value="" /></td> + <td class="row">{'step2_pwd_info'|@translate}</td> + </tr> + <tr> + <td>{'step2_pwd_conf'|@translate}</td> + <td align="center"><input type="password" name="admin_pass2" value="" /></td> + <td class="row">{'step2_pwd_conf_info'|@translate}</td> + </tr> + <tr> + <td>{'conf_mail_webmaster'|@translate}</td> + <td align="center"><input type="text" name="admin_mail" value="{$F_ADMIN_EMAIL}" /></td> + <td class="row">{'conf_mail_webmaster_info'|@translate}</td> + </tr> + <tr> + <td colspan="3"> </td> + </tr> + <tr> + <td colspan="3" align="center"> + <input class="submit" type="submit" name="install" value="{'Start_Install'|@translate}" /> + </td> + </tr> + <tr> + <td colspan="3"> </td> + </tr> + </table> +</form> +{else} +<div class="infos_title"> +{'install_end_title'|@translate} +</div> +<div class="infos"> +{'install_end_message'|@translate} +</div> +{/if} + + </td> + </tr> + </table> + <div class="header">{$L_INSTALL_HELP}</div> + </td> + </tr> + </table> + </body> +</html> diff --git a/BSF/template/yoga/layout.css b/BSF/template/yoga/layout.css new file mode 100644 index 000000000..348ea2f4c --- /dev/null +++ b/BSF/template/yoga/layout.css @@ -0,0 +1,15 @@ +/* $Id$ */ + +/* template css */ +@import "menubar.css"; +@import "content.css"; +@import "thumbnails.css"; +@import "picture.css"; +@import "default-layout.css"; +/* Override properties with import local file */ +@import "local-layout.css"; +/* common css */ +@import "../../template-common/default-layout.css"; +/* Override properties with import local file */ +@import "../../template-common/local-layout.css"; + diff --git a/BSF/template/yoga/mail/index.php b/BSF/template/yoga/mail/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/mail/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/mail/text/html/admin/cat_group_info.tpl b/BSF/template/yoga/mail/text/html/admin/cat_group_info.tpl new file mode 100644 index 000000000..2c8c45d6a --- /dev/null +++ b/BSF/template/yoga/mail/text/html/admin/cat_group_info.tpl @@ -0,0 +1,9 @@ +{* $Id$ *} +<div id="cat_group_info"> +<h2>{'Informations'|@translate}</h2> +<p>{$IMG_URL}</p> +<p>{'Hello,'|@translate}</p> +<p>{'Come to discover the category:'|@translate} <a href="{$LINK}">{$CAT_NAME}</a></p> +<p>{$CPL_CONTENT}</p> +<p>{'See you soon.'|@translate}</p> +</div> diff --git a/BSF/template/yoga/mail/text/html/admin/index.php b/BSF/template/yoga/mail/text/html/admin/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/mail/text/html/admin/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/mail/text/html/admin/notification_by_mail.tpl b/BSF/template/yoga/mail/text/html/admin/notification_by_mail.tpl new file mode 100644 index 000000000..52627ebe4 --- /dev/null +++ b/BSF/template/yoga/mail/text/html/admin/notification_by_mail.tpl @@ -0,0 +1,57 @@ +{* $Id$ *} +<div id="nbm_message"> +<h2>{'Notification'|@translate}</h2> +<p>{'nbm_content_hello_1'|@translate}{$USERNAME}{'nbm_content_hello_2'|@translate}</p> + +{if isset($subscribe_by_admin)} +<p>{'nbm_content_subscribe_by_admin'|@translate}</p> +{/if} +{if isset($subscribe_by_himself)} +<p>{'nbm_content_subscribe_by_himself'|@translate}</p> +{/if} +{if isset($unsubscribe_by_admin)} +<p>{'nbm_content_unsubscribe_by_admin'|@translate}</p> +{/if} +{if isset($unsubscribe_by_himself)} +<p>{'nbm_content_unsubscribe_by_himself'|@translate}</p> +{/if} +{if isset($content_new_elements_single)} +<p>{'nbm_content_new_elements'|@translate}{'nbm_content_new_elements_single'|@translate}{$content_new_elements_single.DATE_SINGLE}.</p> +{/if} +{if isset($content_new_elements_between)} +<p>{'nbm_content_new_elements'|@translate}{'nbm_content_new_elements_between_1'|@translate}{$content_new_elements_between.DATE_BETWEEN_1}{'nbm_content_new_elements_between_2'|@translate}{$content_new_elements_between.DATE_BETWEEN_2}.</p> +{/if} + +{if not empty($global_new_lines)} +<ul id="nbm_new_line"> +{foreach from=$global_new_lines item=line} + <li>{$line}</li> +{/foreach} +</ul> +{/if} + +{if not empty($custom_mail_content)} +<p>{$custom_mail_content}</p> +{/if} + +{if not empty($GOTO_GALLERY_TITLE)} +<p>{'nbm_content_goto_1'|@translate}<a href="{$GOTO_GALLERY_URL}">{$GOTO_GALLERY_TITLE}</a>{'nbm_content_goto_2'|@translate}</p> +{/if} +<p>{'nbm_content_byebye'|@translate}</p> +<p style="text-align:center">{$SEND_AS_NAME}</p> +<p> +<br/><hr/> +{'nbm_content_unsubscribe_link'|@translate}{'nbm_content_click_on'|@translate}<a href="{$UNSUBSCRIBE_LINK}">{$UNSUBSCRIBE_LINK}</a><br/> +{'nbm_content_subscribe_link'|@translate}{'nbm_content_click_on'|@translate}<a href="{$SUBSCRIBE_LINK}">{$SUBSCRIBE_LINK}</a><br/> +{'nbm_content_problem_contact'|@translate}<a href="mailto:{$CONTACT_EMAIL}?subject={'nbm_content_pb_contact_object'|@translate}">{$CONTACT_EMAIL}</a><br/> +<hr/><br/> +</p> +{if not empty($recent_posts)} +</div> +<div id="nbm_recent_post"> + {foreach from=$recent_posts item=recent_post } + <h2>{$recent_post.TITLE}</h2> + {$recent_post.HTML_DATA} + {/foreach} +{/if} +</div> diff --git a/BSF/template/yoga/mail/text/html/footer.tpl b/BSF/template/yoga/mail/text/html/footer.tpl new file mode 100644 index 000000000..e09201a4f --- /dev/null +++ b/BSF/template/yoga/mail/text/html/footer.tpl @@ -0,0 +1,20 @@ +{* $Id$ *} +</div> <!-- content --> +<div id="copyright"> +<hr/> + {* Please, do not remove this copyright. If you really want to, + contact us on http://piwigo.org to find a solution on how + to show the origin of the script...*} + + {'powered_by'|@translate} + <a href="http://piwigo.org" class="PWG"> + <span class="P">Pi</span><span class="W">wi</span><span class="G">go</span></a> + {$VERSION} + - {'send_mail'|@translate} + <a href="mailto:{$MAIL}?subject={$TITLE_MAIL}">{'Webmaster'|@translate}</a> + +</div> <!-- copyright --> +</div> <!-- the_page --> + +</body> +</html> diff --git a/BSF/template/yoga/mail/text/html/global-mail-css.tpl b/BSF/template/yoga/mail/text/html/global-mail-css.tpl new file mode 100644 index 000000000..29b34f375 --- /dev/null +++ b/BSF/template/yoga/mail/text/html/global-mail-css.tpl @@ -0,0 +1,12 @@ +{* $Id$ *} +/* Global mail css */ + +body {ldelim} font-family: Univers, Helvetica, Optima; font-size:12px; margin:0px; padding:0px; } +#the_page {ldelim} margin:0px; padding:0px; text-align:left;} +#content {ldelim} margin:0px; padding:82px 0px 0px 62px; width:732px;} +hr {ldelim} width:632px; margin-left:0;} +#copyright {ldelim} font-size:10px; margin:0px; padding:48px 0px 32px 62px;} +.PWG {ldelim} font-family:verdana, sans-serif !important; font-size:0.9em; font-weight:normal; letter-spacing:0px;} +h2 {ldelim} padding:7px 15px; width:617px; font-weight:bold;} +img {ldelim} margin:16px; border:16px solid #aaa; -moz-border-radius: 4px; border-radius: 4px 4px; } +img:hover {ldelim} padding: 15px; border: 1px solid yellow; -moz-border-radius: 4px; border-radius: 4px 4px; } diff --git a/BSF/template/yoga/mail/text/html/header.tpl b/BSF/template/yoga/mail/text/html/header.tpl new file mode 100644 index 000000000..2aeb2b434 --- /dev/null +++ b/BSF/template/yoga/mail/text/html/header.tpl @@ -0,0 +1,19 @@ +{* $Id$ *} +-----={$BOUNDARY_KEY} +Content-Type: {$CONTENT_TYPE}; charset="{$CONTENT_ENCODING}"; +Content-Transfer-Encoding: 8bit + +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html lang="{$LANG}" dir="{$DIR}"> +<head> +<title>Piwigo Mail</title> +<meta http-equiv="Content-Type" content="text/html; charset={$CONTENT_ENCODING}"> +<style><!-- /* Mini style for mails */ +{if isset($GLOBAL_MAIL_CSS)}{$GLOBAL_MAIL_CSS}{/if} +{if isset($MAIL_CSS)}{$MAIL_CSS}{/if} +{if isset($LOCAL_MAIL_CSS)}{$LOCAL_MAIL_CSS}{/if} +--></style> +</head> +<body> +<div id="the_page"> +<div id="content" class="content"> diff --git a/BSF/template/yoga/mail/text/html/images/footer-bg.png b/BSF/template/yoga/mail/text/html/images/footer-bg.png Binary files differnew file mode 100644 index 000000000..fd3c2925f --- /dev/null +++ b/BSF/template/yoga/mail/text/html/images/footer-bg.png diff --git a/BSF/template/yoga/mail/text/html/images/header-bg.png b/BSF/template/yoga/mail/text/html/images/header-bg.png Binary files differnew file mode 100644 index 000000000..1770a3ddc --- /dev/null +++ b/BSF/template/yoga/mail/text/html/images/header-bg.png diff --git a/BSF/template/yoga/mail/text/html/images/index.php b/BSF/template/yoga/mail/text/html/images/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/mail/text/html/images/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/mail/text/html/images/mailbody-bg.png b/BSF/template/yoga/mail/text/html/images/mailbody-bg.png Binary files differnew file mode 100644 index 000000000..722a24f63 --- /dev/null +++ b/BSF/template/yoga/mail/text/html/images/mailbody-bg.png diff --git a/BSF/template/yoga/mail/text/html/index.php b/BSF/template/yoga/mail/text/html/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/mail/text/html/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/mail/text/index.php b/BSF/template/yoga/mail/text/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/mail/text/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/mail/text/plain/admin/cat_group_info.tpl b/BSF/template/yoga/mail/text/plain/admin/cat_group_info.tpl new file mode 100644 index 000000000..d91c0ebcc --- /dev/null +++ b/BSF/template/yoga/mail/text/plain/admin/cat_group_info.tpl @@ -0,0 +1,9 @@ +{* $Id$ *} +{'Hello,'|@translate} + +{'Come to discover the category:'|@translate} {$CAT_NAME} +{$LINK} + +{$CPL_CONTENT} + +{'See you soon.'|@translate} diff --git a/BSF/template/yoga/mail/text/plain/admin/index.php b/BSF/template/yoga/mail/text/plain/admin/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/mail/text/plain/admin/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/mail/text/plain/admin/notification_by_mail.tpl b/BSF/template/yoga/mail/text/plain/admin/notification_by_mail.tpl new file mode 100644 index 000000000..256232f37 --- /dev/null +++ b/BSF/template/yoga/mail/text/plain/admin/notification_by_mail.tpl @@ -0,0 +1,42 @@ +{* $Id$ *} +{'nbm_content_hello_1'|@translate}{$USERNAME}{'nbm_content_hello_2'|@translate} + +{if isset($subscribe_by_admin)} +{'nbm_content_subscribe_by_admin'|@translate} +{/if} +{if isset($subscribe_by_himself)} +{'nbm_content_subscribe_by_himself'|@translate} +{/if} +{if isset($unsubscribe_by_admin)} +{'nbm_content_unsubscribe_by_admin'|@translate} +{/if} +{if isset($unsubscribe_by_himself)} +{'nbm_content_unsubscribe_by_himself'|@translate} +{/if} +{if isset($content_new_elements_single)} +{'nbm_content_new_elements'|@translate}{'nbm_content_new_elements_single'|@translate}{$content_new_elements_single.DATE_SINGLE}. +{/if} +{if isset($content_new_elements_between)} +{'nbm_content_new_elements'|@translate}{'nbm_content_new_elements_between_1'|@translate}{$content_new_elements_between.DATE_BETWEEN_1}{'nbm_content_new_elements_between_2'|@translate}{$content_new_elements_between.DATE_BETWEEN_2}. +{/if} +{if not empty($global_new_lines)} +{foreach from=$global_new_lines item=line} + o {$line} +{/foreach} +{/if} +{if not empty($custom_mail_content)} +{$custom_mail_content} +{/if} +{if not empty($GOTO_GALLERY_TITLE)} +{'nbm_content_goto_1'|@translate}{$GOTO_GALLERY_TITLE} {$GOTO_GALLERY_URL} {'nbm_content_goto_2'|@translate} +{/if} + +{'nbm_content_byebye'|@translate} + {$SEND_AS_NAME} + +______________________________________________________________________________ + +{'nbm_content_unsubscribe_link'|@translate}{'nbm_content_click_on'|@translate}{$UNSUBSCRIBE_LINK} +{'nbm_content_subscribe_link'|@translate}{'nbm_content_click_on'|@translate}{$SUBSCRIBE_LINK} +{'nbm_content_problem_contact'|@translate}{$CONTACT_EMAIL} +______________________________________________________________________________ diff --git a/BSF/template/yoga/mail/text/plain/footer.tpl b/BSF/template/yoga/mail/text/plain/footer.tpl new file mode 100644 index 000000000..86ac31e3e --- /dev/null +++ b/BSF/template/yoga/mail/text/plain/footer.tpl @@ -0,0 +1,4 @@ +{* $Id$ *} + +------------------------ +Piwigo {$VERSION} diff --git a/BSF/template/yoga/mail/text/plain/header.tpl b/BSF/template/yoga/mail/text/plain/header.tpl new file mode 100644 index 000000000..7471010c9 --- /dev/null +++ b/BSF/template/yoga/mail/text/plain/header.tpl @@ -0,0 +1,4 @@ +{* $Id$ *} +-----={$BOUNDARY_KEY} +Content-Type: {$CONTENT_TYPE}; charset="{$CONTENT_ENCODING}"; +Content-Transfer-Encoding: 8bit diff --git a/BSF/template/yoga/mail/text/plain/index.php b/BSF/template/yoga/mail/text/plain/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/mail/text/plain/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/mainpage_categories.tpl b/BSF/template/yoga/mainpage_categories.tpl new file mode 100644 index 000000000..b28c619fb --- /dev/null +++ b/BSF/template/yoga/mainpage_categories.tpl @@ -0,0 +1,27 @@ +{* $Id$ *} + +<ul class="thumbnailCategories"> + {foreach from=$category_thumbnails item=cat} + <li> + <div class="thumbnailCategory"> + <div class="illustration"> + <a href="{$cat.URL}"> + <img src="{$cat.TN_SRC}" alt="{$cat.ALT}" title="{'hint_category'|@translate}"> + </a> + </div> + <div class="description"> + <h3> + <a href="{$cat.URL}">{$cat.NAME}</a> + {$cat.ICON} + </h3> + {if isset($cat.INFO_DATES) } + <p>{$cat.INFO_DATES}</p> + {/if} + <p>{$cat.CAPTION_NB_IMAGES}</p> + <p>{$cat.DESCRIPTION}</p> + </div> + </div> + </li> + {/foreach} +</ul> + diff --git a/BSF/template/yoga/menubar.css b/BSF/template/yoga/menubar.css new file mode 100644 index 000000000..e676d5784 --- /dev/null +++ b/BSF/template/yoga/menubar.css @@ -0,0 +1,149 @@ +#menubar { + float: left; + 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 */ +} + +#menubar DL, #menubar DT, #menubar DD { + margin: 0; padding: 0; display: block; +} + +#menubar .button { + margin: 0 2px; + width: auto; + padding: 0; + text-indent: 0; + list-style: none; + text-align: center; + float: right; +} + +/* H2 properties copied here */ +#menubar DT { + font-weight: bold; /* default for h2 */ + margin: 0; + padding: 5px 5px 5px 5px; + 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; + margin-bottom: 0; +} + +#menubar LI.selected A { + font-weight: bold; +} + +#menubar LI.selected LI A { + font-weight: normal; +} + +#menubar .menuInfoCatByChild { + font-size: 80%; + font-style: italic; +} + +#menubar HR { + display: block; + margin: 10px auto; + width: 90%; +} +#menubar INPUT { + text-indent: 2px; +} + +/* quickconnect form */ +FORM#quickconnect { + margin: 0; + padding: 5px; +} + +FORM#quickconnect FIELDSET { + margin: 0; + padding: 0 0 0.5em 0; +} + +FORM#quickconnect P { + margin-left: 0; + font-size: 100%; + float: left; + clear: left; +} + +FORM#quickconnect P INPUT { + margin: 0; +} + +FORM#quickconnect UL.actions { + display: inline; + float: right; + padding: 0; + text-align: right; /* Opera 7.5 */ +} +FORM#quickconnect FIELDSET>UL.actions { + width: 40%; /* Opera 7.5 cannot find why width:auto fails :-( */ +} + +FORM#quickconnect UL.actions, +FORM#quickconnect P, +FORM#quickconnect LABEL { + padding: 0 0.5em 0 0.5em; +} + +FORM#quickconnect LABEL { + margin:0; + width: 100%; + box-sizing: border-box; /* CSS3 */ +} + +FORM#quickconnect INPUT[type=text], +FORM#quickconnect INPUT[type=password] { + width: 100%; /* mozilla can handle 100% */ +} +/* same as above for IE with inputfix.htc */ +/* unfortunately IE doesn't handle that correctly */ +/* so you should set a width in em in local_layout.css */ +/*FORM#quickconnect INPUT.text, +FORM#quickconnect INPUT.password { + width: 95%; +}*/ + +FORM#quicksearch { + margin-top: 4px; + margin-bottom: 1px; +} +input#qsearchInput { + width: 90%; +} +#menubar #mbMenu p { margin: 0px; padding: 0px; } + +#menubar #menuTagCloud { + text-align: center; + margin: 5px 0; +} + +#menubar #menuTagCloud LI +{ + display: inline; + white-space: nowrap; /* No line break in the LI but Opera set nowrap to */ +} diff --git a/BSF/template/yoga/menubar.tpl b/BSF/template/yoga/menubar.tpl new file mode 100644 index 000000000..fda136c29 --- /dev/null +++ b/BSF/template/yoga/menubar.tpl @@ -0,0 +1,165 @@ +{* $Id$ *} + +<div id="menubar"> +{if not empty($links)} +<dl id="mbLinks"> + <dt>{'Links'|@translate}</dt> + <dd> + <ul> + {foreach from=$links item=link} + <li> + <a href="{$link.URL}" + {if isset($link.new_window) }onclick="window.open(this.href, '{$link.new_window.NAME|@escape:'javascript'}','{$link.new_window.FEATURES|@escape:'javascript'}'); return false;"{/if} + > + {$link.LABEL} + </a> + </li> + {/foreach}{*links*} + </ul> + </dd> +</dl> +{/if}{*links*} + + {if isset($U_START_FILTER)} + <a href="{$U_START_FILTER}" title="{'start_filter_hint'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/start_filter.png" class="button" alt="{'start_filter_hint'|@translate}"></a> + {/if} + {if isset($U_STOP_FILTER)} + <a href="{$U_STOP_FILTER}" title="{'stop_filter_hint'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/stop_filter.png" class="button" alt="{'stop_filter_hint'|@translate}"></a> + {/if} + +<dl id="mbCategories"> + <dt><a href="{$U_CATEGORIES}">{'Categories'|@translate}</a></dt> + <dd> + {$MENU_CATEGORIES_CONTENT} + {if isset($U_UPLOAD)} + <ul><li> + <a href="{$U_UPLOAD}">{'upload_picture'|@translate}</a> + </li></ul> + {/if} + <p class="totalImages">{$pwg->l10n_dec('%d element', '%d elements', $NB_PICTURE)}</p> + </dd> +</dl> + + +{if not empty($related_tags)} +<dl id="mbTags"> + <dt>{'Related tags'|@translate}</dt> + <dd> + <ul id="menuTagCloud"> + {foreach from=$related_tags item=tag} + <li> + {if !empty($tag.add) } + <a href="{$tag.add.URL}" + title="{$pwg->l10n_dec('%d element are also linked to current tags', '%d elements are also linked to current tags', $tag.add.COUNTER)}" + rel="nofollow"> + <img src="{$ROOT_URL}{$themeconf.icon_dir}/add_tag.png" alt="+" /> + </a> + {/if} + <a href="{$tag.U_TAG}" class="{$tag.CLASS}" title="{'See elements linked to this tag only'|@translate}">{$tag.NAME}</a> + </li> + {/foreach} + </ul> + </dd> +</dl> +{/if} + + +<dl id="mbSpecial"> + <dt>{'special_categories'|@translate}</dt> + <dd> + <ul> + {foreach from=$special_categories item=cat} + <li><a href="{$cat.URL}" title="{$cat.TITLE}" {if isset($cat.REL)}{$cat.REL}{/if}>{$cat.NAME}</a></li> + {/foreach} + </ul> + </dd> +</dl> + + +<dl id="mbMenu"> + <dt>{'title_menu'|@translate}</dt> + <dd> + <form action="{$ROOT_URL}qsearch.php" method="get" id="quicksearch"> + <p> + <input type="text" name="q" id="qsearchInput" onfocus="if (value==qsearch_prompt) value='';" onblur="if (value=='') value=qsearch_prompt;" /> + </p> + </form> + <script type="text/javascript">var qsearch_prompt="{'qsearch'|@translate|@escape:'javascript'}"; document.getElementById('qsearchInput').value=qsearch_prompt;</script> + + <ul> + {foreach from=$summaries item=sum} + <li><a href="{$sum.U_SUMMARY}" title="{$sum.TITLE}" {if isset($sum.REL)}{$sum.REL}{/if}>{$sum.NAME}</a></li> + {/foreach} + </ul> + </dd> +</dl> + + +<dl id="mbIdentification"> + <dt>{'identification'|@translate}</dt> + <dd> + {if isset($USERNAME)} + <p>{'hello'|@translate} {$USERNAME} !</p> + {/if} + + <ul> + {if isset($U_REGISTER)} + <li><a href="{$U_REGISTER}" title="{'Create a new account'|@translate}" rel="nofollow">{'Register'|@translate}</a></li> + {/if} + + {if isset($U_IDENTIFY)} + <li><a href="{$U_IDENTIFY}" rel="nofollow">{'Connection'|@translate}</a></li> + {/if} + + {if isset($U_LOGOUT)} + <li><a href="{$U_LOGOUT}">{'logout'|@translate}</a></li> + {/if} + + {if isset($U_PROFILE)} + <li><a href="{$U_PROFILE}" title="{'hint_customize'|@translate}">{'customize'|@translate}</a></li> + {/if} + + {if isset($U_ADMIN)} + <li><a href="{$U_ADMIN}" title="{'hint_admin'|@translate}">{'admin'|@translate}</a></li> + {/if} + </ul> + + {if isset($U_IDENTIFY)} + <form method="post" action="{$U_IDENTIFY}" class="filter" id="quickconnect"> + <fieldset> + <legend>{'Quick connect'|@translate}</legend> + + <label> + {'Username'|@translate} + <input type="text" name="username" size="15" value=""> + </label> + + <label> + {'Password'|@translate} + <input type="password" name="password" size="15"> + </label> + + {if $AUTHORIZE_REMEMBERING} + <label> + {'remember_me'|@translate} + <input type="checkbox" name="remember_me" value="1"> + </label> + {/if} + <p> + <input class="submit" type="submit" name="login" value="{'Submit'|@translate}"> + </p> + + <ul class="actions"> + <li><a href="{$U_LOST_PASSWORD}" title="{'Forgot your password?'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/lost_password.png" class="button" alt="{'Forgot your password?'|@translate}"></a></li> + {if isset($U_REGISTER)} + <li><a href="{$U_REGISTER}" title="{'Create a new account'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/register.png" class="button" alt="{'Register'|@translate}"/></a></li> + {/if} + </ul> + + </fieldset> + </form> + {/if} + + </dd> +</dl> +</div> <!-- menubar --> diff --git a/BSF/template/yoga/month_calendar.tpl b/BSF/template/yoga/month_calendar.tpl new file mode 100644 index 000000000..410824b23 --- /dev/null +++ b/BSF/template/yoga/month_calendar.tpl @@ -0,0 +1,70 @@ +{* $Id$ *} + +{if !empty($chronology_navigation_bars) } +{foreach from=$chronology_navigation_bars item=bar} +<div class="calendarBar"> + {if isset($bar.previous)} + <div style="float:left">« <a href="{$bar.previous.URL}">{$bar.previous.LABEL}</a></div> + {/if} + {if isset($bar.next)} + <div style="float:right"><a href="{$bar.next.URL}">{$bar.next.LABEL}</a> »</div> + {/if} + {if isset($bar.CONTENT)} + {$bar.CONTENT} + {else} + + {/if} +</div> +{/foreach} +{/if} + +{if !empty($chronology_calendar.calendar_bars) } +{foreach from=$chronology_calendar.calendar_bars item=bar} +<div class="calendarCalBar"> + <span class="calCalHead"><a href="{$bar.U_HEAD}">{$bar.HEAD_LABEL}</a> ({$bar.NB_IMAGES})</span><br/> + {$bar.NAV_BAR} +</div> +{/foreach} +{/if} + +{if isset($chronology_calendar.month_view) } +<table class="calMonth"> + <thead> + <tr> + {foreach from=$chronology_calendar.month_view.wday_labels item=wday} + <td class="calDayHead">{$wday}</td> + {/foreach} + </tr> + </thead> +{html_head} {*add the style to html head for strict standard compliance*} +<style type="text/css"> +TABLE.calMonth TBODY TD, TABLE.calMonth TBODY TD DIV.calImg {ldelim} + width:{$chronology_calendar.month_view.CELL_WIDTH}px;height:{$chronology_calendar.month_view.CELL_HEIGHT}px; +} +</style> +{/html_head} + {foreach from=$chronology_calendar.month_view.weeks item=week} + <tr> + {foreach from=$week item=day} + {if !empty($day)} + {if isset($day.IMAGE)} + <td class="calDayCellFull"> + <div class="calBackDate">{$day.DAY}</div><div class="calForeDate">{$day.DAY}</div> + <div class="calImg"> + <a href="{$day.U_IMG_LINK}"> + <img style="{$day.IMAGE_STYLE}" src="{$day.IMAGE}" alt="{$day.IMAGE_ALT}" title="{$pwg->l10n_dec('%d element','%d elements', $day.NB_ELEMENTS)}" /> + </a> + </div> + {else} + <td class="calDayCellEmpty">{$day.DAY} + {/if} + {else} + <td class="calDayCellBlank"> + {/if} + </td> + {/foreach} {*day in week*} + </tr> + {/foreach} {*week in month*} +</table> +{/if} + diff --git a/BSF/template/yoga/nbm.tpl b/BSF/template/yoga/nbm.tpl new file mode 100644 index 000000000..7fa2845eb --- /dev/null +++ b/BSF/template/yoga/nbm.tpl @@ -0,0 +1,31 @@ +{* $Id$ *} + +<div id="content" class="content"> + <div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HOME}" title="{'Go through the gallery as a visitor'|@translate}"><img src="{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/></a></li> + </ul> + <h2>{'nbm_item_notification'|@translate}</h2> + </div> + + {if not empty($errors)} + <div class="errors"> + <ul> + {foreach from=$errors item=error} + <li>{$error}</li> + {/foreach} + </ul> + </div> + {/if} + + {if not empty($infos)} + <div class="infos"> + <ul> + {foreach from=$infos item=info} + <li>{$info}</li> + {/foreach} + </ul> + </div> + {/if} + +</div> diff --git a/BSF/template/yoga/not-ie.css b/BSF/template/yoga/not-ie.css new file mode 100644 index 000000000..9fc85502c --- /dev/null +++ b/BSF/template/yoga/not-ie.css @@ -0,0 +1,24 @@ +/* $Id$ */ + +/* All directives not supported by IE */ +/* can be overiden in any theme but not hidden to IE */ + +.content UL.thumbnails SPAN.wrap2 { + -moz-border-radius: 4px; /* round corners with Geko */ + -webkit-border-radius: 4px; /* Safari webkit project */ +} +.content DIV#comments { + padding-left: 5px; + padding-right: 5px; + -moz-box-sizing: padding-box !important; +} +FORM#quickconnect LABEL { + margin:0; + width: 100%; + -moz-box-sizing: padding-box !important; + box-sizing: border-box; /* CSS3 */ +} +ul.tabsheet li { + -moz-border-radius: 6px 6px 0px 0px; /* round corners with Geko */ + -webkit-border-radius: 6px 6px 0px 0px; /* Safari webkit project */ +} diff --git a/BSF/template/yoga/notification.tpl b/BSF/template/yoga/notification.tpl new file mode 100644 index 000000000..b62db4bc0 --- /dev/null +++ b/BSF/template/yoga/notification.tpl @@ -0,0 +1,15 @@ +{* $Id$ *} +<div id="content" class="content"> + + <div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}"><img src="{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/></a></li> + </ul> + <h2>{'Notification'|@translate}</h2> + </div> + + <p>{'The RSS notification feed provides notification on news from this website : new pictures, updated categories, new comments. Use a RSS feed reader.'|@translate}</p> + + <p><a href="{$U_FEED_IMAGE_ONLY}">{'Image only RSS feed'|@translate}</a></p> + <p><a href="{$U_FEED}">{'Complete RSS feed'|@translate}</a></p> +</div> diff --git a/BSF/template/yoga/password.tpl b/BSF/template/yoga/password.tpl new file mode 100644 index 000000000..8071b16d2 --- /dev/null +++ b/BSF/template/yoga/password.tpl @@ -0,0 +1,54 @@ +{* $Id$ *} +<div id="content" class="content"> + + <div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HOME}" title="{'Go through the gallery as a visitor'|@translate}"><img src="{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/></a></li> + </ul> + <h2>{'Password forgotten'|@translate}</h2> + </div> + + {if count($errors)} + <div class="errors"> + <ul> + {foreach from=$errors item=error} + <li>{$error}</li> + {/foreach} + </ul> + </div> + {/if} + + {if count($infos)} + <div class="infos"> + <ul> + {foreach from=$infos item=info} + <li>{$info}</li> + {/foreach} + </ul> + </div> + {/if} + +<form action="{$F_ACTION}" method="post" class="properties"> + <fieldset> + <legend>{'Retrieve password'|@translate}</legend> + + <ul> + <li> + <span class="property"> + <label for="mail_address">{'Email address'|@translate}</label> + </span> + <input class="login" type="text" name="mail_address" id="mail_address" size="40" maxlength="40" > + </li> + <li> + <span class="property"> + <label for="no_mail_address">{'No email address'|@translate}</label> + </span> + <input type="checkbox" id="no_mail_address" name="no_mail_address" value="1"> + </li> + </ul> + </fieldset> + + <p><input class="submit" type="submit" name="submit" value="{'Send new password'|@translate}"></p> +</form> + +</div> <!-- content --> diff --git a/BSF/template/yoga/picture.css b/BSF/template/yoga/picture.css new file mode 100644 index 000000000..839760053 --- /dev/null +++ b/BSF/template/yoga/picture.css @@ -0,0 +1,143 @@ +/* $Id$ */ +#imageHeaderBar { + padding-top: 2px; + padding-bottom: 2px; + margin-top: 4px; + overflow: hidden; + width: 100%; +} + +#imageHeaderBar .browsePath { + float: left; + margin-left: 10px; +} + +#imageHeaderBar .imageNumber { + float: right; + margin-right: 10px; +} + +#imageHeaderBar H2 { + text-align: center; + padding: 0; + clear: both; +} + +#imageToolBar { + text-align: center; + position: relative; + clear: both; + margin-bottom: 4px; + padding: 0; +} + +#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; +} + +#theImage IMG { + border-width: 3px; + border-style: solid; +} + +.navThumb { + margin-top: 2px; +} +#thumbPrev { + float: left; +} + +#thumbNext { + float: right; +} + +#linkPrev { + margin-right: 10px; + margin-left: 5px; +} + +#linkNext { + margin-right: 5px; + margin-left: 10px; +} + +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; +} + +.rateButton, .rateButtonSelected, .rateButtonStarFull, .rateButtonStarEmpty { + padding:0; + border:0; +} + +.rateButton, .rateButtonStarFull, .rateButtonStarEmpty { + cursor: pointer; +} + +.rateButtonSelected { + font-weight:bold; + font-size:120%; +} + +.rateButtonStarFull { + background: url('icon/rating-stars.gif') no-repeat scroll; background-position:-16px center; width:16px; +} + +.rateButtonStarEmpty { + background: url('icon/rating-stars.gif') no-repeat scroll; background-position:0 center; width:16px; +} + +#comments { + text-align: left; +} + +#comments .comment { + margin: 1em 0; +} + +#comments P { + margin: 0 0.5em 0 1em; +} + +#comments .author { + font-weight: bold; +} + +#thePicturePage #comments BLOCKQUOTE { + margin: 0.5em 1em 1em 4em; +} + +#comments P.userCommentDelete { + float: right; + margin: 0 0.5em 0 0; +} diff --git a/BSF/template/yoga/picture.tpl b/BSF/template/yoga/picture.tpl new file mode 100644 index 000000000..fc5fce450 --- /dev/null +++ b/BSF/template/yoga/picture.tpl @@ -0,0 +1,230 @@ +{* $Id$ *} +{if isset($errors)} +<div class="errors"> + <ul> + {foreach from=$errors item=error} + <li>{$error}</li> + {/foreach} + </ul> +</div> +{/if} + +{if isset($infos)} +<div class="infos"> + <ul> + {foreach from=$infos item=info} + <li>{$info}</li> + {/foreach} + </ul> +</div> +{/if} + +<div id="imageHeaderBar"> + <div class="browsePath"> + <a href="{$U_HOME}" rel="home">{'home'|@translate}</a> + {$LEVEL_SEPARATOR}{$SECTION_TITLE} + {$LEVEL_SEPARATOR}{$current.TITLE} + </div> + <div class="imageNumber">{$PHOTO}</div> + {if $SHOW_PICTURE_NAME_ON_TITLE } + <h2>{$current.TITLE}</h2> + {/if} +</div> + +{if !empty($PLUGIN_PICTURE_BEFORE)}{$PLUGIN_PICTURE_BEFORE}{/if} +<div id="imageToolBar"> + <div class="randomButtons"> + {if isset($U_SLIDESHOW_START) } + <a href="{$U_SLIDESHOW_START}" title="{'slideshow'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/start_slideshow.png" class="button" alt="{'slideshow'|@translate}"></a> + {/if} + {if isset($U_SLIDESHOW_STOP) } + <a href="{$U_SLIDESHOW_STOP}" title="{'slideshow_stop'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/stop_slideshow.png" class="button" alt="{'slideshow_stop'|@translate}"></a> + {/if} + <a href="{$U_METADATA}" title="{'picture_show_metadata'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/metadata.png" class="button" alt="metadata" /></a> + {if isset($current.U_DOWNLOAD) } + <a href="{$current.U_DOWNLOAD}" title="{'download_hint'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/save.png" class="button" alt="{'download'|@translate}"></a> + {/if} + {if isset($PLUGIN_PICTURE_ACTIONS)}{$PLUGIN_PICTURE_ACTIONS}{/if} + {if isset($favorite) } + <a href="{$favorite.U_FAVORITE}" title="{$favorite.FAVORITE_HINT}"><img src="{$favorite.FAVORITE_IMG}" class="button" alt="favorite" title="{$favorite.FAVORITE_HINT}"></a> + {/if} + {if !empty($U_SET_AS_REPRESENTATIVE) } + <a href="{$U_SET_AS_REPRESENTATIVE}" title="{'set as category representative'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/representative.png" class="button" alt="{'representative'|@translate}"></a> + {/if} + {if isset($U_ADMIN) } + <a href="{$U_ADMIN}" title="{'link_info_image'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/preferences.png" class="button" alt="{'edit'|@translate}"></a> + {/if} + {if isset($U_CADDIE) } + <a href="{$U_CADDIE}" title="{'add to caddie'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/caddie_add.png" class="button" alt="{'caddie'|@translate}"></a> + {/if} + </div> + {include file=$FILE_PICTURE_NAV_BUTTONS} +</div> <!-- imageToolBar --> + +<div id="theImage"> +{$ELEMENT_CONTENT} + +{if isset($COMMENT_IMG)} +<p>{$COMMENT_IMG}</p> +{/if} + +{if isset($U_SLIDESHOW_STOP) } +<p> + [ <a href="{$U_SLIDESHOW_STOP}">{'slideshow_stop'|@translate}</a> ] +</p> +{/if} + +</div> + +{if isset($previous) } +<a class="navThumb" id="thumbPrev" href="{$previous.U_IMG}" title="{'previous_page'|@translate} : {$previous.TITLE}" rel="prev"> + <img src="{$previous.THUMB_SRC}" class="thumbLink" id="linkPrev" alt="{$previous.TITLE}"> +</a> +{/if} +{if isset($next) } +<a class="navThumb" id="thumbNext" href="{$next.U_IMG}" title="{'next_page'|@translate} : {$next.TITLE}" rel="next"> + <img src="{$next.THUMB_SRC}" class="thumbLink" id="linkNext" alt="{$next.TITLE}"> +</a> +{/if} + +<table class="infoTable" summary="Some info about this picture"> + <tr> + <td class="label">{'Author'|@translate}</td> + <td class="value">{if isset($INFO_AUTHOR)}{$INFO_AUTHOR}{else}{'N/A'|@translate}{/if}</td> + </tr> + <tr> + <td class="label">{'Created on'|@translate}</td> + <td class="value">{if isset($INFO_CREATION_DATE)}{$INFO_CREATION_DATE}{else}{'N/A'|@translate}{/if}</td> + </tr> + <tr> + <td class="label">{'Posted on'|@translate}</td> + <td class="value">{$INFO_POSTED_DATE}</td> + </tr> + <tr> + <td class="label">{'Dimensions'|@translate}</td> + <td class="value">{if isset($INFO_DIMENSIONS)}{$INFO_DIMENSIONS}{else}{'N/A'|@translate}{/if}</td> + </tr> + <tr> + <td class="label">{'File'|@translate}</td> + <td class="value">{$INFO_FILE}</td> + </tr> + <tr> + <td class="label">{'Filesize'|@translate}</td> + <td class="value">{if isset($INFO_FILESIZE)}{$INFO_FILESIZE}{else}{'N/A'|@translate}{/if}</td> + </tr> + <tr> + <td class="label">{'Tags'|@translate}</td> + <td class="value"> + {if isset($related_tags)} + {foreach from=$related_tags item=tag name=tag_loop}{if !$smarty.foreach.tag_loop.first}, {/if} + <a href="{$tag.U_TAG}">{$tag.NAME}</a>{/foreach} + {/if} + </td> + </tr> + <tr> + <td class="label">{'Categories'|@translate}</td> + <td class="value"> + {if isset($related_categories)} + <ul> + {foreach from=$related_categories item=cat} + <li>{$cat}</li> + {/foreach} + </ul> + {/if} + </td> + </tr> + <tr> + <td class="label">{'Visits'|@translate}</td> + <td class="value">{$INFO_VISITS}</td> + </tr> + {if isset($rate_summary) } + <tr> + <td class="label">{'Average rate'|@translate}</td> + <td class="value"> + {if $rate_summary.count} + {assign var='rate_text' value='%.2f (rated %d times, standard deviation = %.2f)'|@translate } + {$pwg->sprintf($rate_text, $rate_summary.average, $rate_summary.count, $rate_summary.std) } + {else} + {'no_rate'|@translate} + {/if} + </td> + </tr> + {/if} +</table> + +{if isset($metadata)} +<table class="infoTable" summary="Some more (technical) info about this picture"> +{foreach from=$metadata item=meta} + <tr> + <th colspan="2">{$meta.TITLE}</th> + </tr> + {foreach from=$meta.lines item=value key=label} + <tr> + <td class="label">{$label}</td> + <td class="value">{$value}</td> + </tr> + {/foreach} +{/foreach} +</table> +{/if} + +{if isset($rating)} +<form action="{$rating.F_ACTION}" method="post" id="rateForm"> +<div> +{if isset($rating.USER_RATE)}{'update_rate'|@translate}{else}{'new_rate'|@translate}{/if} +: +{foreach from=$rating.marks item=mark name=rate_loop} +{if !$smarty.foreach.rate_loop.first} | {/if} +{if isset($rating.USER_RATE) && $mark==$rating.USER_RATE} + <input type="button" name="rate" value="{$mark}" class="rateButtonSelected" /> +{else} + <input type="submit" name="rate" value="{$mark}" class="rateButton" /> +{/if} +{/foreach} +<script type="text/javascript" src="{$ROOT_URL}{$themeconf.template_dir}/rating.js"></script> +</div> +</form> +{/if} + +<hr class="separation"> + +{if isset($COMMENT_COUNT)} +<div id="comments"> + <h2>[{$COMMENT_COUNT}] {'comments_title'|@translate}</h2> + + <div class="navigationBar">{$COMMENT_NAV_BAR}</div> + + {if isset($comments)} + {foreach from=$comments item=comment} + <div class="comment"> + {if isset($comment.U_DELETE)} + <p class="userCommentDelete"> + <a href="{$comment.U_DELETE}" title="{'comments_del'|@translate}"> + <img src="{$ROOT_URL}{$themeconf.icon_dir}/delete.png" class="button" style="border:none;vertical-align:middle; margin-left:5px;" alt="[{'delete'|@translate}]"/> + </a> + </p> + {/if} + <p class="commentInfo"><span class="author">{$comment.AUTHOR}</span> - {$comment.DATE}</p> + <blockquote>{$comment.CONTENT}</blockquote> + </div> + {/foreach} + {/if} + + {if isset($comment_add)} + <form method="post" action="{$comment_add.F_ACTION}" class="filter" id="addComment"> + <fieldset> + <legend>{'comments_add'|@translate}</legend> + {if $comment_add.SHOW_AUTHOR} + <label>{'upload_author'|@translate}<input type="text" name="author"></label> + {/if} + <label>{'comment'|@translate}<textarea name="content" rows="5" cols="80">{$comment_add.CONTENT}</textarea></label> + <input type="hidden" name="key" value="{$comment_add.KEY}" /> + <input class="submit" type="submit" value="{'Submit'|@translate}"> + </fieldset> + </form> + {/if} + +</div> +{/if} {*comments*} + +{if !empty($PLUGIN_PICTURE_AFTER)}{$PLUGIN_PICTURE_AFTER}{/if} diff --git a/BSF/template/yoga/picture_content.tpl b/BSF/template/yoga/picture_content.tpl new file mode 100644 index 000000000..7e15a1bb3 --- /dev/null +++ b/BSF/template/yoga/picture_content.tpl @@ -0,0 +1,9 @@ +{* $Id$ *} +{if isset($high) } +<a href="javascript:phpWGOpenWindow('{$high.U_HIGH}','{$high.UUID}','scrollbars=yes,toolbar=no,status=no,resizable=yes')"> +{/if} + <img src="{$SRC_IMG}" style="width:{$WIDTH_IMG}px;height:{$HEIGHT_IMG}px;" alt="{$ALT_IMG}"> +{if isset($high) } +</a> + <p>{'picture_high'|@translate}</p> +{/if} diff --git a/BSF/template/yoga/picture_nav_buttons.tpl b/BSF/template/yoga/picture_nav_buttons.tpl new file mode 100644 index 000000000..081696ee2 --- /dev/null +++ b/BSF/template/yoga/picture_nav_buttons.tpl @@ -0,0 +1,103 @@ +{* $Id$ *} + <div class="navButtons"> + +{if isset($last)} + <a class="navButton prev" href="{$last.U_IMG}" title="{'last_page'|@translate} : {$last.TITLE}" rel="last"><img src="{$ROOT_URL}{$themeconf.icon_dir}/last.png" class="button" alt="{'last_page'|@translate}"></a> +{else} + <a class="navButton prev"><img src="{$ROOT_URL}{$themeconf.icon_dir}/last_unactive.png" class="button" alt=""></a> +{/if} + +{if isset($next)} + <a class="navButton next" href="{$next.U_IMG}" title="{'next_page'|@translate} : {$next.TITLE}" rel="next"><img src="{$ROOT_URL}{$themeconf.icon_dir}/right.png" class="button" alt="{'next_page'|@translate}"></a> +{else} + <a class="navButton next"><img src="{$ROOT_URL}{$themeconf.icon_dir}/right_unactive.png" class="button" alt=""></a> +{/if} + +{if isset($slideshow.U_START_PLAY)} + <a class="navButton play" href="{$slideshow.U_START_PLAY}" title="{'start_play'|@translate}" rel="play"><img src="{$ROOT_URL}{$themeconf.icon_dir}/play.png" class="button" alt="{'start_play'|@translate}"></a> +{/if} + +{if isset($slideshow.U_STOP_PLAY)} + <a class="navButton play" href="{$slideshow.U_STOP_PLAY}" title="{'stop_play'|@translate}" rel="play"><img src="{$ROOT_URL}{$themeconf.icon_dir}/pause.png" class="button" alt="{'stop_play'|@translate}"></a> +{/if} + +{if isset($U_UP) and !isset($slideshow)} + <a class="navButton up" href="{$U_UP}" title="{'thumbnails'|@translate}" rel="up"><img src="{$ROOT_URL}{$themeconf.icon_dir}/up.png" class="button" alt="{'thumbnails'|@translate}"></a> +{/if} + +{if isset($previous)} + <a class="navButton prev" href="{$previous.U_IMG}" title="{'previous_page'|@translate} : {$previous.TITLE}" rel="prev"><img src="{$ROOT_URL}{$themeconf.icon_dir}/left.png" class="button" alt="{'previous_page'|@translate}"></a> +{else} + <a class="navButton prev"><img src="{$ROOT_URL}{$themeconf.icon_dir}/left_unactive.png" class="button" alt=""></a> +{/if} + +{if isset($first)} + <a class="navButton prev" href="{$first.U_IMG}" title="{'first_page'|@translate} : {$first.TITLE}" rel="first"><img src="{$ROOT_URL}{$themeconf.icon_dir}/first.png" class="button" alt="{'first_page'|@translate}"></a> +{else} + <a class="navButton prev"><img src="{$ROOT_URL}{$themeconf.icon_dir}/first_unactive.png" class="button" alt=""></a> +{/if} + + +{if isset($slideshow.U_START_REPEAT)} + <a class="navButton repeat" href="{$slideshow.U_START_REPEAT}" title="{'start_repeat'|@translate}" rel="repeat"><img src="{$ROOT_URL}{$themeconf.icon_dir}/start_repeat.png" class="button" alt="{'start_repeat'|@translate}"></a> +{/if} + +{if isset($slideshow.U_STOP_REPEAT)} + <a class="navButton repeat" href="{$slideshow.U_STOP_REPEAT}" title="{'stop_repeat'|@translate}" rel="repeat"><img src="{$ROOT_URL}{$themeconf.icon_dir}/stop_repeat.png" class="button" alt="{'stop_repeat'|@translate}"></a> +{/if} + +{if isset($slideshow)} + {if isset($slideshow.U_DEC_PERIOD)} + <a class="navButton dec_period" href="{$slideshow.U_DEC_PERIOD}" title="{'dec_period'|@translate}" rel="repeat"><img src="{$ROOT_URL}{$themeconf.icon_dir}/dec_period.png" class="button" alt="{'dec_period'|@translate}"></a> + {else} + <a class="navButton dec_period"> <img src="{$ROOT_URL}{$themeconf.icon_dir}/dec_period_unactive.png" class="button" alt=""></a> + {/if} + + {if isset($slideshow.U_INC_PERIOD)} + <a class="navButton inc_period" href="{$slideshow.U_INC_PERIOD}" title="{'inc_period'|@translate}" rel="repeat"><img src="{$ROOT_URL}{$themeconf.icon_dir}/inc_period.png" class="button" alt="{'inc_period'|@translate}"></a> + {else} + <a class="navButton inc_period"> <img src="{$ROOT_URL}{$themeconf.icon_dir}/inc_period_unactive.png" class="button" alt=""></a> + {/if} +{/if} + + </div> + +<script type="text/javascript"> +{literal} +function keyboardNavigation(e) +{ + if(!e) var e=window.event; + if (e.altKey) return true; + var target = e.target || e.srcElement; + if (target && target.type) return true; //an input editable element + var keyCode=e.keyCode || e.which; + var docElem = document.documentElement; + switch(keyCode) { +{/literal} +{if isset($next)} + case 63235: case 39: if (e.ctrlKey || docElem.scrollLeft==docElem.scrollWidth-docElem.clientWidth ){ldelim}window.location="{$next.U_IMG}".replace( "&", "&" ); return false; } break; +{/if} +{if isset($previous)} + case 63234: case 37: if (e.ctrlKey || docElem.scrollLeft==0){ldelim}window.location="{$previous.U_IMG|@escape:jasvascript}".replace("&","&"); return false; } break; +{/if} +{if isset($first)} + /*Home*/case 36: if (e.ctrlKey){ldelim}window.location="{$first.U_IMG|@escape:jasvascript}".replace("&","&"); return false; } break; +{/if} +{if isset($last)} + /*End*/case 35: if (e.ctrlKey){ldelim}window.location="{$last.U_IMG|@escape:jasvascript}".replace("&","&"); return false; } break; +{/if} +{if isset($U_UP) and !isset($slideshow)} + /*Up*/case 38: if (e.ctrlKey){ldelim}window.location="{$U_UP|@escape:jasvascript}".replace("&","&"); return false; } break; +{/if} + +{if isset($slideshow.U_START_PLAY)} + /*Pause*/case 32: {ldelim}window.location="{$slideshow.U_START_PLAY|@escape:jasvascript}".replace("&","&"); return false; } break; +{/if} +{if isset($slideshow.U_STOP_PLAY)} + /*Play*/case 32: {ldelim}window.location="{$slideshow.U_STOP_PLAY|@escape:jasvascript}".replace("&","&"); return false; } break; +{/if} + } + return true; +} +document.onkeydown=keyboardNavigation; +</script> diff --git a/BSF/template/yoga/popuphelp.tpl b/BSF/template/yoga/popuphelp.tpl new file mode 100644 index 000000000..af732c554 --- /dev/null +++ b/BSF/template/yoga/popuphelp.tpl @@ -0,0 +1,6 @@ +{* $Id$ *} +<div id="content" class="content"> +{$HELP_CONTENT} +</div> <!-- content --> + +<p id="pageBottomActions"><a href="#" onclick="window.close();" title="{'Close this window'|@translate}"><img src="{$themeconf.icon_dir}/exit.png" class="button" alt="close"></a></p> diff --git a/BSF/template/yoga/print.css b/BSF/template/yoga/print.css new file mode 100644 index 000000000..8252f7e44 --- /dev/null +++ b/BSF/template/yoga/print.css @@ -0,0 +1,14 @@ +#menubar, .content .navigationBar, UL.categoryActions, .content DIV.calendarViews, .calendarBar, +#imageToolBar, .navThumb, #addComment { + display: none; +} + +BODY { + margin: 0; + color: #000000; + background: #ffffff; +} + +.content { + margin: 0; +} diff --git a/BSF/template/yoga/profile.tpl b/BSF/template/yoga/profile.tpl new file mode 100644 index 000000000..75ea61d48 --- /dev/null +++ b/BSF/template/yoga/profile.tpl @@ -0,0 +1,22 @@ +{* $Id$ *} +<div id="content" class="content"> + +{if isset($errors)} +<div class="errors"> + <ul> + {foreach from=$errors item=error} + <li>{$error}</li> + {/foreach} + </ul> +</div> +{/if} + + <div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/></a></li> + </ul> + <h2>{'Profile'|@translate}</h2> + </div> + +{$PROFILE_CONTENT} +</div> <!-- content --> diff --git a/BSF/template/yoga/profile_content.tpl b/BSF/template/yoga/profile_content.tpl new file mode 100644 index 000000000..9cabf0a51 --- /dev/null +++ b/BSF/template/yoga/profile_content.tpl @@ -0,0 +1,109 @@ +{* $Id$ *} +<form method="post" name="profile" action="{$F_ACTION}" id="profile" class="properties"> + + <fieldset> + <legend>{'Registration'|@translate}</legend> + <input type="hidden" name="redirect" value="{$REDIRECT}" /> + <ul> + <li> + <span class="property">{'Username'|@translate}</span> + {$USERNAME} + </li> +{if not $SPECIAL_USER} {* can modify password + email*} + <li> + <span class="property"> + <label for="mail_address">{'Email address'|@translate}</label> + </span> + <input type="text" name="mail_address" id="mail_address" value="{$EMAIL}"> + </li> +{if not $IN_ADMIN} {* admins do not need old password*} + <li> + <span class="property"> + <label for="password">{'Password'|@translate}</label> + </span> + <input type="password" name="password" id="password" value=""> + </li> +{/if} + <li> + <span class="property"> + <label for="use_new_pwd">{'new_password'|@translate}</label> + </span> + <input type="password" name="use_new_pwd" id="use_new_pwd" value=""> + </li> + <li> + <span class="property"> + <label for="passwordConf">{'Confirm Password'|@translate}</label> + </span> + <input type="password" name="passwordConf" id="passwordConf" value=""> + </li> + </ul> +{/if} + </fieldset> + + <fieldset> + <legend>{'preferences'|@translate}</legend> + + <ul> + <li> + <span class="property"> + <label for="nb_image_line">{'nb_image_per_row'|@translate}</label> + </span> + <input type="text" size="3" maxlength="2" name="nb_image_line" id="nb_image_line" value="{$NB_IMAGE_LINE}"> + </li> + <li> + <span class="property"> + <label for="nb_line_page">{'nb_row_per_page'|@translate}</label> + </span> + <input type="text" size="3" maxlength="2" name="nb_line_page" id="nb_line_page" value="{$NB_ROW_PAGE}" > + </li> + <li> + <span class="property"> + <label for="template">{'theme'|@translate}</label> + </span> + {html_options name=template options=$template_options selected=$template_selection} + </li> + <li> + <span class="property"> + <label for="language">{'language'|@translate}</label> + </span> + {html_options name=language options=$language_options selected=$language_selection} + </li> + <li> + <span class="property"> + <label for="recent_period">{'recent_period'|@translate}</label> + </span> + <input type="text" size="3" maxlength="2" name="recent_period" id="recent_period" value="{$RECENT_PERIOD}"> + </li> + <li> + <span class="property">{'auto_expand'|@translate}</span> + {html_radios name='expand' options=$radio_options selected=$EXPAND} + </li> + <li> + <span class="property">{'show_nb_comments'|@translate}</span> + {html_radios name='show_nb_comments' options=$radio_options selected=$NB_COMMENTS} + </li> + <li> + <span class="property">{'show_nb_hits'|@translate}</span> + {html_radios name='show_nb_hits' options=$radio_options selected=$NB_HITS} + </li> + <li> + <span class="property"> + <label for="maxwidth">{'maxwidth'|@translate}</label> + </span> + <input type="text" size="4" maxlength="4" name="maxwidth" id="maxwidth" value="{$MAXWIDTH}"> + </li> + <li> + <span class="property"> + <label for="maxheight">{'maxheight'|@translate}</label> + </span> + <input type="text" size="4" maxlength="4" name="maxheight" id="maxheight" value="{$MAXHEIGHT}"> + </li> + </ul> + </fieldset> + + <p class="bottomButtons"> + <input class="submit" type="submit" name="validate" value="{'Submit'|@translate}"> + <input class="submit" type="reset" name="reset" value="{'Reset'|@translate}"> + </p> + +</form> diff --git a/BSF/template/yoga/rating.js b/BSF/template/yoga/rating.js new file mode 100644 index 000000000..a4f8f86b8 --- /dev/null +++ b/BSF/template/yoga/rating.js @@ -0,0 +1,90 @@ +makeNiceRatingForm(); + +function makeNiceRatingForm() +{ + var form = document.getElementById('rateForm'); + if (!form) return; //? template changed + gRatingButtons = form.getElementsByTagName('input'); + + gUserRating = ""; + for (var i=0; i<gRatingButtons.length; i++) + { + if ( gRatingButtons[i].type=="button" ) + { + gUserRating = gRatingButtons[i].value; + break; + } + } + + for (var i=0; i<gRatingButtons.length; i++) + { + var rateButton = gRatingButtons[i]; + rateButton.initialRateValue = rateButton.value; // save it as a property + + rateButton.value = ""; //hide the text IE/Opera + with (rateButton.style) + { + textIndent = "-50px"; //hide the text FF + marginLeft = marginRight = 0; + } + + if (i!=gRatingButtons.length-1 && rateButton.nextSibling.nodeType == 3 /*TEXT_NODE*/) + rateButton.parentNode.removeChild(rateButton.nextSibling); + if (i>0 && rateButton.previousSibling.nodeType == 3 /*TEXT_NODE*/) + rateButton.parentNode.removeChild(rateButton.previousSibling); + + if(window.addEventListener){ // Mozilla, Netscape, Firefox + rateButton.addEventListener("click", updateRating, false ); + rateButton.addEventListener("mouseout", resetRatingStarDisplay, false ); + rateButton.addEventListener("mouseover", updateRatingStarDisplayEvt, false ); + } + else if(window.attachEvent) { // IE + rateButton.attachEvent("onclick", updateRating); + rateButton.attachEvent("onmouseout", resetRatingStarDisplay); + rateButton.attachEvent("onmouseover", updateRatingStarDisplayEvt); + } + } + resetRatingStarDisplay(); +} + +function resetRatingStarDisplay() +{ + updateRatingStarDisplay( gUserRating ); +} + +function updateRatingStarDisplay(userRating) +{ + for (i=0; i<gRatingButtons.length; i++) + { + var rateButton = gRatingButtons[i]; + if (userRating!=="" && userRating>=rateButton.initialRateValue ) + { + rateButton.className = "rateButtonStarFull"; + } + else + { + rateButton.className = "rateButtonStarEmpty"; + } + } +} + +function updateRatingStarDisplayEvt(e) +{ + if (e.target) + updateRatingStarDisplay(e.target.initialRateValue); + else //IE + updateRatingStarDisplay(e.srcElement.initialRateValue); +} + +function updateRating(e) +{ + if (e.target) + var rateButton = e.target; + else //IE + var rateButton = e.srcElement; + if (rateButton.initialRateValue == gUserRating) + return false; //nothing to do + // some ajax here one day would be nice + rateButton.value = rateButton.initialRateValue; // put back real value + return true; +}
\ No newline at end of file diff --git a/BSF/template/yoga/redirect.tpl b/BSF/template/yoga/redirect.tpl new file mode 100644 index 000000000..aa007426f --- /dev/null +++ b/BSF/template/yoga/redirect.tpl @@ -0,0 +1,3 @@ +{* $Id$ *} +<p>{$REDIRECT_MSG}</p> +<p><a href="{$page_refresh.U_REFRESH}">{'click_to_redirect'|@translate}</a></p> diff --git a/BSF/template/yoga/register.tpl b/BSF/template/yoga/register.tpl new file mode 100644 index 000000000..83bfd8c27 --- /dev/null +++ b/BSF/template/yoga/register.tpl @@ -0,0 +1,69 @@ +{* $Id$ *} +<div id="registerPage"> + +<div id="content" class="content"> + + <div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}"><img src="{$ROOT_URL}{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/></a></li> + </ul> + <h2>{'Registration'|@translate}</h2> + </div> + +{if isset($errors)} + <div class="errors"> + <ul> + {foreach from=$errors item=error} + <li>{$error}</li> + {/foreach} + </ul> + </div> +{/if} + +<form method="post" action="{$F_ACTION}" class="properties" name="register_form"> + <fieldset> + <legend>{'Enter your personnal informations'|@translate}</legend> + + <ul> + <li> + <span class="property"> + <label for="login">* {'Username'|@translate}</label> + </span> + <input type="text" name="login" id="login" value="{$F_LOGIN}" > + </li> + <li> + <span class="property"> + <label for="password">* {'Password'|@translate}</label> + </span> + <input type="password" name="password" id="password" > + </li> + <li> + <span class="property"> + <label for="password_conf">* {'Confirm Password'|@translate}</label> + </span> + <input type="password" name="password_conf" id="password_conf" > + </li> + <li> + <span class="property"> + <label for="mail_address">{'Mail address'|@translate}</label> + </span> + <input type="text" name="mail_address" id="mail_address" value="{$F_EMAIL}" > + ({'useful when password forgotten'|@translate}) + </li> + </ul> + + </fieldset> + + <p class="bottomButtons"> + <input class="submit" type="submit" name="submit" value="{'Register'|@translate}"> + <input class="submit" type="reset" value="{'Reset'|@translate}"> + </p> + +</form> + +<script type="text/javascript"><!-- +document.register_form.login.focus(); +//--></script> + +</div> <!-- content --> +</div> <!-- registerPage --> diff --git a/BSF/template/yoga/search.tpl b/BSF/template/yoga/search.tpl new file mode 100644 index 000000000..f5b72d138 --- /dev/null +++ b/BSF/template/yoga/search.tpl @@ -0,0 +1,126 @@ +{* $Id$ *} +<div id="content" class="content"> + + <div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HELP}" onclick="popuphelp(this.href); return false;" title="{'Help'|@translate}" rel="nofollow"><img src="{$ROOT_URL}{$themeconf.icon_dir}/help.png" class="button" alt="(?)"></a></li> + <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}" rel="home"><img src="{$ROOT_URL}{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/></a></li> + </ul> + <h2>{'Search'|@translate}</h2> + </div> + +{if isset($errors) } +<div class="errors"> + <ul> + {foreach from=$errors item=error} + <li>{$error}</li> + {/foreach} + </ul> +</div> +{/if} + +<form class="filter" method="post" name="search" action="{$F_SEARCH_ACTION}"> +<fieldset> + <legend>{'Filter'|@translate}</legend> + <label>{'search_keywords'|@translate} + <input type="text" style="width: 300px" name="search_allwords" size="30" /> + </label> + <ul> + <li><label> + <input type="radio" name="mode" value="AND" checked="checked" />{'search_mode_and'|@translate} + </label></li> + <li><label> + <input type="radio" name="mode" value="OR" />{'search_mode_or'|@translate} + </label></li> + </ul> + <label>{'search_author'|@translate} + <input type="text" style="width: 300px" name="search_author" size="30" /> + </label> +</fieldset> + +{if isset($TAG_SELECTION)} +<fieldset> + <legend>{'Search tags'|@translate}</legend> + {$TAG_SELECTION} + <label><span><input type="radio" name="tag_mode" value="AND" checked="checked" /> {'All tags'|@translate}</span></label> + <label><span><input type="radio" name="tag_mode" value="OR" /> {'Any tag'|@translate}</span></label> +</fieldset> +{/if} + +<fieldset> + <legend>{'search_date'|@translate}</legend> + <ul> + <li><label>{'search_date_type'|@translate}</label></li> + <li><label> + <input type="radio" name="date_type" value="date_creation" checked="checked" />{'Creation date'|@translate} + </label></li> + <li><label> + <input type="radio" name="date_type" value="date_available" />{'Post date'|@translate} + </label></li> + </ul> + <ul> + <li><label>{'search_date_from'|@translate}</label></li> + <li> + <select name="start_day"> + <option value="0">--</option> + {section name=day start=1 loop=32} + <option value="{$smarty.section.day.index}" {if $smarty.section.day.index==$START_DAY_SELECTED}selected="selected"{/if}>{$smarty.section.day.index}</option> + {/section} + </select> + <select name="start_month"> + {html_options options=$month_list selected=$START_MONTH_SELECTED} + </select> + <input name="start_year" type="text" size="4" maxlength="4" > + </li> + <li> + <a href="#" onClick="document.search.start_day.value={$smarty.now|date_format:"%d"};document.search.start_month.value={$smarty.now|date_format:"%m"};document.search.start_year.value={$smarty.now|date_format:"%Y"};return false;">{'today'|@translate}</a> + </li> + </ul> + <ul> + <li><label>{'search_date_to'|@translate}</label></li> + <li> + <select name="end_day"> + <option value="0">--</option> + {section name=day start=1 loop=32} + <option value="{$smarty.section.day.index}" {if $smarty.section.day.index==$END_DAY_SELECTED}selected="selected"{/if}>{$smarty.section.day.index}</option> + {/section} + </select> + <select name="end_month"> + {html_options options=$month_list selected=$END_MONTH_SELECTED} + </select> + <input name="end_year" type="text" size="4" maxlength="4" > + </li> + <li> + <a href="#" onClick="document.search.end_day.value={$smarty.now|date_format:"%d"};document.search.end_month.value={$smarty.now|date_format:"%m"};document.search.end_year.value={$smarty.now|date_format:"%Y"};return false;">{'today'|@translate}</a> + </li> + </ul> +</fieldset> + +<fieldset> + <legend>{'search_options'|@translate}</legend> + <label>{'search_categories'|@translate} + <select class="categoryList" name="cat[]" multiple="multiple" > + {html_options options=$category_options selected=$category_options_selected} + </select> + </label> + <ul> + <li><label>{'search_subcats_included'|@translate}</label></li> + <li><label> + <input type="radio" name="subcats-included" value="1" checked="checked" />{'Yes'|@translate} + </label></li> + <li><label> + <input type="radio" name="subcats-included" value="0" />{'No'|@translate} + </label></li> + </ul> +</fieldset> +<p> + <input class="submit" type="submit" name="submit" value="{'Submit'|@translate}" /> + <input class="submit" type="reset" value="{'Reset'|@translate}" /> +</p> +</form> + +<script type="text/javascript"><!-- +document.search.search_allwords.focus(); +//--></script> + +</div> <!-- content --> diff --git a/BSF/template/yoga/search_rules.tpl b/BSF/template/yoga/search_rules.tpl new file mode 100644 index 000000000..c7b4a8b88 --- /dev/null +++ b/BSF/template/yoga/search_rules.tpl @@ -0,0 +1,56 @@ +{* $Id$ *} +<div id="content" class="content"> +<h2>{'Search rules'|@translate}</h2> + +{if isset($INTRODUCTION) } +<p>{$INTRODUCTION}</p> +{/if} + +<ul> + + {if isset($search_words) } + {foreach from=$search_words item=v} + <li>{$v}</li> + {/foreach} + {/if} + + {if isset($SEARCH_TAGS_MODE) } + <li> + <p>{if 'AND'==$SEARCH_TAGS_MODE}{'All tags must match'|@translate}{else}{'At least one tag must match'|@translate}{/if}</p> + <ul> + {foreach from=$search_tags item=v} + <li>{$v}</li> + {/foreach} + </ul> + </li> + {/if} + + {if isset($DATE_CREATION) } + <li>{$DATE_CREATION}</li> + {/if} + + {if isset($DATE_AVAILABLE) } + <li>{$DATE_AVAILABLE}</li> + {/if} + + {if isset($search_categories) } + <li> + <p>{'Categories'|@translate}</p> + + <ul> + {foreach from=$search_categories item=v} + <li>{$v}</li> + {/foreach} + </ul> + </li> + {/if} + +</ul> + +</div> <!-- content --> + +<p id="pageBottomActions"> + <a href="#" onclick="window.close();" title="{'Close this window'|@translate}"> + <img src="{$themeconf.icon_dir}/exit.png" class="button" alt="close"> + </a> +</p> diff --git a/BSF/template/yoga/slideshow.tpl b/BSF/template/yoga/slideshow.tpl new file mode 100644 index 000000000..1bbc0029f --- /dev/null +++ b/BSF/template/yoga/slideshow.tpl @@ -0,0 +1,23 @@ +{* $Id$ *} +<div id="imageHeaderBar"> + <div class="browsePath"> + {if isset($U_SLIDESHOW_STOP) } + [ <a href="{$U_SLIDESHOW_STOP}">{'slideshow_stop'|@translate}</a> ] + {/if} + </div> + <div class="imageNumber">{$PHOTO}</div> + {if $SHOW_PICTURE_NAME_ON_TITLE } + <h2 class="showtitle">{$current.TITLE}</h2> + {/if} +</div> + +<div id="imageToolBar"> + {include file=$FILE_PICTURE_NAV_BUTTONS} +</div> + +<div id="theImage"> + {$ELEMENT_CONTENT} + {if isset($COMMENT_IMG)} + <p class="showlegend">{$COMMENT_IMG}</p> + {/if} +</div> diff --git a/BSF/template/yoga/tags.tpl b/BSF/template/yoga/tags.tpl new file mode 100644 index 000000000..98a49cd06 --- /dev/null +++ b/BSF/template/yoga/tags.tpl @@ -0,0 +1,19 @@ +{* $Id$ *} +<div id="content" class="content"> + + <div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}"><img src="{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/></a></li> + </ul> + <h2>{'Tags'|@translate}</h2> + </div> + + {if isset($tags)} + <ul id="fullTagCloud"> + {foreach from=$tags item=tag} + <li><a href="{$tag.URL}" class="{$tag.CLASS}" title="{$tag.TITLE}">{$tag.NAME}</a></li> + {/foreach} + </ul> + {/if} + +</div> <!-- content --> diff --git a/BSF/template/yoga/theme/admin/images/bottom-left-bg.png b/BSF/template/yoga/theme/admin/images/bottom-left-bg.png Binary files differnew file mode 100644 index 000000000..ce611dfed --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/bottom-left-bg.png diff --git a/BSF/template/yoga/theme/admin/images/content-bg.png b/BSF/template/yoga/theme/admin/images/content-bg.png Binary files differnew file mode 100644 index 000000000..74ccf81bc --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/content-bg.png diff --git a/BSF/template/yoga/theme/admin/images/header_bottom.png b/BSF/template/yoga/theme/admin/images/header_bottom.png Binary files differnew file mode 100644 index 000000000..e4d049881 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/header_bottom.png diff --git a/BSF/template/yoga/theme/admin/images/index.php b/BSF/template/yoga/theme/admin/images/index.php new file mode 100644 index 000000000..547a117bf --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/index.php @@ -0,0 +1,54 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ +// +-----------------------------------------------------------------------+ +// | PhpWebGallery - a PHP based picture gallery | +// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | +// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | +// +-----------------------------------------------------------------------+ +// | file : $Id$ +// | last update : $Date$ +// | last modifier : $Author$ +// | revision : $Revision$ +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/theme/admin/images/internal_onglet.png b/BSF/template/yoga/theme/admin/images/internal_onglet.png Binary files differnew file mode 100644 index 000000000..dd7b1e218 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/internal_onglet.png diff --git a/BSF/template/yoga/theme/admin/images/list-hover.png b/BSF/template/yoga/theme/admin/images/list-hover.png Binary files differnew file mode 100644 index 000000000..73b600269 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/list-hover.png diff --git a/BSF/template/yoga/theme/admin/images/list-image.png b/BSF/template/yoga/theme/admin/images/list-image.png Binary files differnew file mode 100644 index 000000000..1acdf67e4 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/list-image.png diff --git a/BSF/template/yoga/theme/admin/images/menubar-bg.jpg b/BSF/template/yoga/theme/admin/images/menubar-bg.jpg Binary files differnew file mode 100644 index 000000000..f99114277 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/menubar-bg.jpg diff --git a/BSF/template/yoga/theme/admin/images/menubar-bg.png b/BSF/template/yoga/theme/admin/images/menubar-bg.png Binary files differnew file mode 100644 index 000000000..eb998d35c --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/menubar-bg.png diff --git a/BSF/template/yoga/theme/admin/images/menubar-bottom.png b/BSF/template/yoga/theme/admin/images/menubar-bottom.png Binary files differnew file mode 100644 index 000000000..be74ddca1 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/menubar-bottom.png diff --git a/BSF/template/yoga/theme/admin/images/menubar-detail.png b/BSF/template/yoga/theme/admin/images/menubar-detail.png Binary files differnew file mode 100644 index 000000000..e2d411e95 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/menubar-detail.png diff --git a/BSF/template/yoga/theme/admin/images/menubar-top.png b/BSF/template/yoga/theme/admin/images/menubar-top.png Binary files differnew file mode 100644 index 000000000..7a1195c5f --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/menubar-top.png diff --git a/BSF/template/yoga/theme/admin/images/onglet_actif.png b/BSF/template/yoga/theme/admin/images/onglet_actif.png Binary files differnew file mode 100644 index 000000000..476edb31b --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/onglet_actif.png diff --git a/BSF/template/yoga/theme/admin/images/onglet_actif_transp.png b/BSF/template/yoga/theme/admin/images/onglet_actif_transp.png Binary files differnew file mode 100644 index 000000000..fe4b18275 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/onglet_actif_transp.png diff --git a/BSF/template/yoga/theme/admin/images/onglet_inactif.png b/BSF/template/yoga/theme/admin/images/onglet_inactif.png Binary files differnew file mode 100644 index 000000000..8411ed119 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/onglet_inactif.png diff --git a/BSF/template/yoga/theme/admin/images/onglet_inactif_transp.png b/BSF/template/yoga/theme/admin/images/onglet_inactif_transp.png Binary files differnew file mode 100644 index 000000000..9ad96c14e --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/onglet_inactif_transp.png diff --git a/BSF/template/yoga/theme/admin/images/piwigo_logo_sombre_214x100.png b/BSF/template/yoga/theme/admin/images/piwigo_logo_sombre_214x100.png Binary files differnew file mode 100644 index 000000000..106f20add --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/piwigo_logo_sombre_214x100.png diff --git a/BSF/template/yoga/theme/admin/images/pre-menubar-bg.png b/BSF/template/yoga/theme/admin/images/pre-menubar-bg.png Binary files differnew file mode 100644 index 000000000..f691a288b --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/pre-menubar-bg.png diff --git a/BSF/template/yoga/theme/admin/images/tableh1_bg.png b/BSF/template/yoga/theme/admin/images/tableh1_bg.png Binary files differnew file mode 100644 index 000000000..38f356b83 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/tableh1_bg.png diff --git a/BSF/template/yoga/theme/admin/images/tableh2_bg.png b/BSF/template/yoga/theme/admin/images/tableh2_bg.png Binary files differnew file mode 100644 index 000000000..be06ee428 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/tableh2_bg.png diff --git a/BSF/template/yoga/theme/admin/images/top-left-bg.png b/BSF/template/yoga/theme/admin/images/top-left-bg.png Binary files differnew file mode 100644 index 000000000..2650367b0 --- /dev/null +++ b/BSF/template/yoga/theme/admin/images/top-left-bg.png diff --git a/BSF/template/yoga/theme/admin/index.php b/BSF/template/yoga/theme/admin/index.php new file mode 100644 index 000000000..547a117bf --- /dev/null +++ b/BSF/template/yoga/theme/admin/index.php @@ -0,0 +1,54 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ +// +-----------------------------------------------------------------------+ +// | PhpWebGallery - a PHP based picture gallery | +// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | +// | Copyright (C) 2003-2007 PhpWebGallery Team - http://phpwebgallery.net | +// +-----------------------------------------------------------------------+ +// | file : $Id$ +// | last update : $Date$ +// | last modifier : $Author$ +// | revision : $Revision$ +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/theme/admin/mail-css.tpl b/BSF/template/yoga/theme/admin/mail-css.tpl new file mode 100644 index 000000000..5b3e53c3d --- /dev/null +++ b/BSF/template/yoga/theme/admin/mail-css.tpl @@ -0,0 +1,19 @@ +{* $Id$ *} +/* Theme wipi mail css */ + +body {ldelim} background-color:#111; color:#69c;} +#the_page {ldelim} background: #111 url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/mailbody-bg.png) repeat-y scroll left top;} +#content {ldelim} background: transparent url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/header-bg.png) no-repeat scroll left top;} +#copyright {ldelim} background: transparent url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/footer-bg.png) no-repeat scroll left bottom; +color: #69c;} +h2 {ldelim} background-color: #222;color:#eee;background-image: url({$ROOT_URL}template/{$themeconf.template}/theme/{$themeconf.theme}/images/tableh1_bg.png);} +img {ldelim} margin: 16px; padding:15px;border:1px solid #eee; -moz-border-radius: 4px; border-radius: 4px 4px; } +img:hover {ldelim} border:1px solid #69c; -moz-border-radius: 4px; border-radius: 4px 4px; } +a {ldelim} color: #69c; background: transparent; } +a:hover {ldelim} color: #f92; } +a.PWG {ldelim} border: 0px; } +a.PWG .P {ldelim} color : #f92; } +a.PWG .W {ldelim} color : #aaa; } +a.PWG .G {ldelim} color : #69c; } +a.PWG:hover .P {ldelim} color : #69c; } +a.PWG:hover .G {ldelim} color : #f92; } diff --git a/BSF/template/yoga/theme/admin/theme.css b/BSF/template/yoga/theme/admin/theme.css new file mode 100644 index 000000000..7b8e63e9a --- /dev/null +++ b/BSF/template/yoga/theme/admin/theme.css @@ -0,0 +1,468 @@ +/* $Id$ */ + +/* text color */ +BODY, H1, H3, DT, +INPUT.rateButtonSelected /* <= why IE doesn't inherit this ? */ { + color:#e0e0e0; +} +#menubar { + margin : 0px; + background-color: transparent; + border: 0px; +} +H2, .throw { + color: #eee; +} +#menubar DT, #menubar DT A { + color: #eee; + font-weight: lighter; +} +#menubar DT A:hover { + color: #69c; + font-weight: lighter; +} +#menubar .selected A { + color: #eee; +} +#menubar .selected A:hover { + color: #f92; +} +#menubar DT:before { + content: "__\\_ "; + color: #f92; +} +#menubar DT:after { + content: " _/__"; + color: #69c; +} +#menubar .button { + margin: 0 2px 0px 8px; + width: auto; + padding: 0; + text-indent: 0; + list-style: none; + text-align: center; + float: left; +} +#theAdminPage #menubar DT:before, +#theAdminPage #menubar DT:after { + content: ''; +} +.content .pageNumberSelected { + color: #f92; +} +.content .infos { + background-color: #69c; + color: #036; +} +.content .errors { + background-color: #fc5; + border-color: #f92; + color: #900; +} +/* backgrounds */ +BODY { + background: #111; + margin: 0px; + padding: 0px; +} +H3, #imageToolBar A:hover, .row1, .tabsheet li { + background-color: #222; +} +#theAdminPage h2, #theAdminPage h3 { border-bottom: 1px solid #69c; } +#imageHeaderBar, #theAdminPage #the_page { + background-color: transparent; +} +#imageToolBar, .header_notes { + background-color: #333; +} +.selected_tab { background-color: eee !important; } +A { + border-color: #69c; +} +A:hover { + border-color: #f92; +} +.content { + background-color: #181818; + border: 1px solid #eee; + padding: 5px; +} +#theAdminPage #the_page .content { + background-color: transparent; + border-width: 0px; + padding: 5px; +} +H2, #menubar DT, .throw, TD H3, #theAdminPage H3 { + background-image: url(images/tableh1_bg.png); + background-repeat: repeat-x; +} +.content H2 { + background: none; + border: 0px; + letter-spacing: -0.05em; + text-indent: 1em; + text-transform: uppercase; + font-weight: lighter; + margin-bottom: 20px; +} +.content ul.thumbnailCategories li div.thumbnailCategory .description h3, +.content h3 { text-align: center; } +.content ul.thumbnailCategories li div.thumbnailCategory .description p { + color: #f92; text-indent: 0em; +} +.content ul.thumbnailCategories li div.thumbnailCategory .description p + p { + color: #fff; +} +.browsePath A { + color: #eee; +} +.content H2:before, .browsePath:before, .imageNumber:before, +#imageHeaderBar H2:before { + content: "____\\_ "; + color: #69c; + font-family: Times, Zapf-Chancery, Cottonwood, Helvetica; + letter-spacing: 0em; +} +.content H2:after, .browsePath:after, .imageNumber:after, +#imageHeaderBar H2:after { + content: " _/____"; + color: #f92; + font-family: Times, Zapf-Chancery, Cottonwood, Helvetica; + letter-spacing: 0em; +} +#imageHeaderBar H2 { + background-image: none; + background-color: transparent; + border: none; +} +#thePicturePage #the_page { + background-color: transparent; +} +#thePicturePage #imageHeaderBar { + background-image: url(images/tableh2_bg.png); + background-repeat: repeat-x; +} +#thePicturePage #imageToolBar { + background-color: transparent; + border-bottom: 2px solid #69c; +} +#thePicturePage #theImage { + background-color: transparent; + margin: 0px; + padding: 3px 0px 15px 0px; +} + +#thePicturePage #comments H2 { + background-image: none; + background-color: #222; + border-top: 2px solid #69c; + border-bottom: 2px solid #69c; + color: #69c; + font-weight: lighter; +} + +/* borders */ +#comments DIV.comment BLOCKQUOTE { + border: 1px solid #000; +} +#imageHeaderBar { + border-top: 1px solid #000; + padding: 8px 0px 3px 0px; +} +H2, #imageToolBar { + border-bottom: 1px solid #000; +} + +#theImage IMG { + border-color: #fff; +} + +.content UL.thumbnail IMG { + border: 1px solid #a0a0a0; +} +.illustration A { + border: 0px; +} +FIELDSET, INPUT, SELECT, TEXTAREA, +.content DIV.comment A.illustration IMG, +.content DIV.thumbnailCategory { + border: 1px solid gray; +} +.content DIV.thumbnailCategory { + border: 1px solid #69c; + margin: 8px 4px; +} +#comments DIV.comment BLOCKQUOTE { + border-left: 2px solid #696969; +} + +.content UL.thumbnails SPAN.wrap2 { + border: 1px solid #aaaaaa; /* thumbnails border color and style */ + border-radius: 4px 4px; /* round corners with CSS3 compliant browsers */ +} + +.content UL.thumbnails SPAN.wrap2:hover, +.content UL.thumbnailCategories DIV.thumbnailCategory:hover { + background-color: #333; + border-color: #69c; /* thumbnails border color when mouse cursor is over it */ +} + +#menubar .buttonmenu { + margin: 0 2px; + width: auto; + padding: 0; + text-indent: 0; + list-style: none; + text-align: center; + float: left; +} + + + + + +A:hover { + color: #f92; +} + +#imageToolBar A, #imageToolBar A:hover { + border-bottom: none; +} +A.navThumb, A.navThumb:hover { + border-bottom: none; +} +#the_page { + border: 1px dotted #f92; + padding-top: 5px; + padding-bottom:30px; + text-align:center; + display:block; + margin: 2px; +} +#copyright { + color: #69c; +} + +label { + cursor:pointer +} +input#qsearchInput { + color: #58c; + background-color: #222; + border: 1px solid #333; + padding: 1px 3px; +} +.zero { display: none } +.nb-hits { color: #69c; } +.nb-comments { color: #f92; } + +FORM#quickconnect, +FORM#quickconnect FIELDSET, +FORM#quickconnect P, +FORM#quickconnect UL.actions, +FORM#quickconnect FIELDSET>UL.actions, +FORM#quickconnect UL.actions, +FORM#quickconnect P, +FORM#quickconnect LABEL { + color: #69c; +} +FORM#quickconnect P INPUT, +FORM#quickconnect INPUT[type=text], +FORM#quickconnect INPUT[type=password] { + width: 85%; + color: #58c; + background-color: #222; + border: 1px solid #333; + padding: 1px 3px; +} + + +.virtual_cat { background: #222 !important; } + +.PWG { + font-family: verdana, arial, helvetica, sans-serif !important; + font-size: 0.9em; + font-weight: normal; + letter-spacing: 0px; +} +a.PWG { border: 0px; } +a.PWG .P { color : #f92; } +a.PWG .W { color : #aaa; } +a.PWG .G { color : #69c; } +a.PWG:hover .P { color : #69c; } +a.PWG:hover .G { color : #f92; } + + + + + + + + +.statBar { background-color: #e60; } +#imageToolBar .randomButtons a:hover, +#imageToolBar .navButtons a:hover { background-color: transparent; } +#menubar .menuInfoCat, +#menubar .menuInfoCatByChild, +h2.showtitle, #theImage p.showlegend { display: none } +* { outline-width: 0px; } +ul.tabsheet, ul.tabsheet li { + border-color: #69c; +} +ul.tabsheet li.normal_tab { + background-image: url(images/tableh1_bg.png); + background-repeat: repeat-x; +} +ul.tabsheet li.normal_tab:hover { border-color: #f92 } +ul.tabsheet li { + -moz-border-radius: 0px 0px 3px 3px; + border-radius: 0px 0px 12px 12px; + -webkit-border-radius: 0px 0px 3px 3px; +} +/* New in 1.8 : Special Admin */ +body#theAdminPage #menubar { + background: transparent url(images/menubar-bg.png) + repeat-y scroll right top; + border-bottom: #ccc ridge 2px; width:13.5em; padding: 0; margin: 0; +} +body#theAdminPage .content { /*default-layout.cs... (line 1)*/ +list-style-type:none; padding: 0px; + /*default-layout.cs... (line 23) */ +margin: 0px 0px 0px 200px; background-color: transparent;} + +#theAdminPage #menubar ul { list-style-image:url(images/list-image.png); } +#theAdminPage #menubar ul:hover { list-style-image:url(images/list-hover.png); } +a, input.rateButton, legend { color:#777; } +#menubar a { border-bottom:0; text-decoration:none; font-style: italic;} +body#theAdminPage #theHeader { + background:transparent url(images/piwigo_logo_sombre_214x100.png) no-repeat 230px top; height:105px; +} +body#theAdminPage #post-header { + background-color: transparent; + width: 60%; height: 4px; margin-left:40%; +} +#theHeader h1 { /*default-layout.cs... (line 204) */ + font-size:220%; line-height:4em; margin:auto 2em auto auto; text-align:right; +} +#the_page { /*theme.css (line 235) */ +border:0; display:block; margin:0px; padding-bottom:0px; +padding-top:0px; text-align:center; min-height: 100%; position:relative; +} +.pwgmenu { /* default-layout.cs... (line 136) */ +background:transparent none repeat scroll 0%; +display:table; font-family:verdana,arial,helvetica,sans-serif; +font-size: 8px; line-height:1.1em; list-style-image:none; +list-style-type:none; margin:1px 8px 1px auto; +padding:3px; position:relative; +text-decoration:none; top:-100px; +white-space:nowrap; width:66em; +} +.pwgmenu a { /* default-layout.cs... (line 159) */ +background:#f36 none repeat scroll 0%; +border:1px solid #FFFFFF; +color:white; +display:block; +font-weight:bold; +padding:4px 8px; +text-align:center; +text-decoration:none; +width:9em !important; +} + + + + + + + +#theAdminPage #menubar dt.pre-menubar { +background:transparent none no-repeat scroll left top; +height: 22px; overflow: hidden; margin: 0px; +} +.pwgmenu { /*theme.css (line 335)*/ +background:transparent url(images/header_bottom.png) repeat-x scroll left 25px; +float:right; +font-family:verdana,arial,helvetica,sans-serif; +font-size:8px; +line-height:1.1em; +list-style-image:none; +list-style-type:none; +margin:1px 8px 1px 0px; +padding:3px 3px 3px 101px; +text-decoration:none; top:-35px; +width:587px; +} +.pwgmenu li { /*default-layout.cs... (line 151)*/ +float:left; +margin:0px; +padding:0px; +text-align:center; +width:126px !important; +} +.pwgmenu a { /*theme.css (line 344)*/ +background:transparent url(images/onglet_inactif_transp.png) no-repeat scroll left 3px; +border:0px none; +color:#FF3333; +display:block; +font-size:8px; height:33px; +padding:3px 0px 5px 13px; text-align:left; +text-decoration:none; width:126px !important; +} +.pwgmenu a:hover { /*theme.css (line 344)*/ +background:transparent url(images/onglet_actif_transp.png) no-repeat scroll left 2px; +color: #ff7700; } +.content h2:before, .content h2:after, +#menubar DT:before, #menubar DT:after { content: ""; } +#theHeader h1 { /*theme.css (line 345) */ color:#441100; } +.content h2 { /*theme.css (line 100)*/ +letter-spacing:0.1em; margin-right:45px; text-align:right; color: #777777; +text-transform:none; } +.content dl, dd { /*content.css (line 52) */ margin:5px; } +.content h2 { /* default-layout.cs... (line 6) */ +font-weight:bold; margin-right:30px; padding-left:2em; } +#theAdminPage h3 { /* theme.css (line 96) */ +background: transparent none; margin-right:30px; font-weight: lighter;} +#theAdminPage h2 { /* theme.css (line 72) */ border-bottom:0px; } +body#theAdminPage { /*theme.css (line 324) */ +background:#111111 url(images/top-left-bg.png) no-repeat scroll left top;} +#theAdminPage #the_page { /*theme.css (line 73)*/ +background:transparent url(images/bottom-left-bg.png) no-repeat fixed left bottom; } +#the_page { /*theme.css (line 348)*/ padding-bottom:0px;} +.content {background-color:transparent;} +body#theAdminPage #menubar { /* theme.css (line 324) */ +background:transparent none repeat-y scroll right top; border-bottom:0px; margin-top:110px; +float: none; position: absolute; left: 0px; top: 160px;} +#theAdminPage #the_page .content { /*theme.css (line 91)*/ +background-color:transparent; border-width:0px; padding:5px 35px 5px 5px; } +body#theAdminPage #menubar dl.selected dd { padding-bottom: 145px; } +.header_notes {/*default-colors.cs... (line 91)*/ +background-image:url(icon/note.png); background-position:left top; +background-repeat:no-repeat; border:1px solid #AAAAAA; font-weight:bold; +margin:14px; padding:5px 0px 0px; position:absolute; right:31px; +text-align:center; top:96px; width:502px; } +#theAdminPage #menubar dl {/*theme.css (line 372)*/ +background:transparent url(images/menubar-top.png) no-repeat scroll left top; width: 198px; +border:0; box-shadow: none; +} +#theAdminPage #menubar dl.selected {/*theme.css (line 372)*/ +background:transparent url(images/menubar-top.png) no-repeat scroll left top; +} +#theAdminPage #menubar dt { background: none; left:10px; position:relative; text-align:left; top:-10px;} +#theAdminPage #menubar dd { background: transparent url(images/menubar-detail.png) repeat-y top left; +margin: 0px 0px 0px 4px; padding: 0px;} +span.bg { background-color: #111111; padding-right: 3px; } +html, body { +height:100%; +} +ul.tabsheet li.normal_tab, ul.tabsheet li.selected_tab { +background: transparent none repeat-x top left; +border:0; } +ul.tabsheet { border:0; +background: transparent url(images/internal_onglet.png) repeat-x bottom left; } +ul.tabsheet a { border:0; font-size: 12px; +font-family: verdana,arial,helvetica,sans-serif; line-height: 14px; } +ul.tabsheet li.selected_tab > a { color: #ff3333; } +ul.tabsheet, ul.tabsheet li { border-bottom: #eee solid 1px; } +ul.tabsheet li.selected_tab { +font-weight:bold; padding-top:0px; position:relative; top:0px; }
\ No newline at end of file diff --git a/BSF/template/yoga/theme/admin/themeconf.inc.php b/BSF/template/yoga/theme/admin/themeconf.inc.php new file mode 100644 index 000000000..5a6450e82 --- /dev/null +++ b/BSF/template/yoga/theme/admin/themeconf.inc.php @@ -0,0 +1,72 @@ +<?php +/** + * Accordion menus need to be stable + */ +function selected_admin_menu() +{ + if (isset($_GET['page'])) + { + switch ($_GET['page']) { + case 'configuration': + return 1; + case 'site_manager': + case 'site_update': + case 'cat_list': + case 'cat_modify': + case 'cat_move': + case 'cat_options': + case 'element_set': + case 'cat_perm': + case 'permalinks': + case 'picture_modify': + if (isset($_GET['cat']) and $_GET['cat']=='caddie') { + return 3; + } + return 2; + case 'comments': + case 'thumbnail': + case 'rating': + case 'tags': + return 3; + case 'user_list': + case 'group_list': + case 'notification_by_mail': + return 4; + case 'stats': + case 'history': + case 'maintenance': + case 'advanced_feature': + case 'ws_checker': + case 'plugins_list': + case 'plugin': + return 5; + } + } + return 0; +} + +$themeconf = array( + 'template' => 'yoga', + 'theme' => 'admin', + 'template_dir' => 'template/yoga', + 'icon_dir' => 'template/yoga/icon', + 'admin_icon_dir' => 'template/yoga/icon/admin', + 'mime_icon_dir' => 'template/yoga/icon/mimetypes/', + 'local_head' => ' +<!-- Admin Accordion Menus --> + <script type="text/javascript" src="template-common/lib/jquery.js"></script> + <script type="text/javascript" src="template-common/lib/chili-1.7.pack.js"></script> + <script type="text/javascript" src="template-common/lib/jquery.easing.js"></script> + <script type="text/javascript" src="template-common/lib/jquery.dimensions.js"></script> + <script type="text/javascript" src="template-common/jquery.accordion.js"></script> + <script type="text/javascript"> + jQuery().ready(function(){ + jQuery(\'#menubar\').accordion({ + header: "dt.rdion", + event: "mouseover", + active: '. selected_admin_menu() . ' + }); + }); + </script>' +); +?> diff --git a/BSF/template/yoga/theme/clear/index.php b/BSF/template/yoga/theme/clear/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/theme/clear/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/theme/clear/mail-css.tpl b/BSF/template/yoga/theme/clear/mail-css.tpl new file mode 100644 index 000000000..0bda3d715 --- /dev/null +++ b/BSF/template/yoga/theme/clear/mail-css.tpl @@ -0,0 +1,13 @@ +{* $Id$ *} +/* Theme clear mail css */ + +body {ldelim} background-color:#fff; color:#696969;} +#the_page {ldelim} background: #fff url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/mailbody-bg.png) repeat-y scroll left top;} +#content {ldelim} background: transparent url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/header-bg.png) no-repeat scroll left top;} +#copyright {ldelim} background: transparent url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/footer-bg.png) no-repeat scroll left bottom; +color: #333;} +h2 {ldelim} background-color: #ddd;} +img {ldelim} margin: 16px; border: 16px solid #aaa; -moz-border-radius: 4px; border-radius: 4px 4px; } +img:hover {ldelim} padding: 15px; border: 1px solid yellow;background-color:#faebd7; -moz-border-radius: 4px; border-radius: 4px 4px; } +a {ldelim} color: #369; background: transparent; } +a:hover {ldelim} color: #ddd; } diff --git a/BSF/template/yoga/theme/clear/theme.css b/BSF/template/yoga/theme/clear/theme.css new file mode 100644 index 000000000..cff996521 --- /dev/null +++ b/BSF/template/yoga/theme/clear/theme.css @@ -0,0 +1,94 @@ +/* $Id$ */ + +/* text color */ +BODY, H1, H2, H3, DT, +INPUT.rateButtonSelected /* <= why IE doesn't inherit this ? */ { + color:#696969; /* dimgray */ +} + +/* backgrounds */ +BODY, H3, .throw { + background-color: #ffffff; /* white */ +} + +H2, #menubar DT, #imageHeaderBar, #imageToolBar A:hover, .row1 { + background-color: #d3d3d3; +} + +#menubar DL, .content, #imageToolBar, .header_notes { + background-color: #eeeeee; +} + +/* borders */ +#menubar DL, .content, #imageToolBar, +#comments DIV.comment BLOCKQUOTE { + border: 1px solid #d3d3d3; +} + +#theImage IMG { + border-color: #d3d3d3; +} + +.content UL.thumbnail IMG { + border: 1px solid #a0a0a0; +} + +FIELDSET, INPUT, SELECT, TEXTAREA, +.content DIV.comment A.illustration IMG, +.content DIV.thumbnailCategory { + border: 1px solid gray; +} + +#comments DIV.comment BLOCKQUOTE { + border-left: 2px solid #696969; + background-color: #eee; +} + +.content UL.thumbnails SPAN.wrap2 { + border: 1px solid #aaaaaa; /* thumbnails border color and style */ + border-radius: 4px 4px; /* round corners with CSS3 compliant browsers */ +} + +.content UL.thumbnails SPAN.wrap2:hover, +.content UL.thumbnailCategories DIV.thumbnailCategory:hover, +.content UL.thumbnailCategories DIV.thumbnailCategory:hover A { + background-color: #faebd7; + border-color: yellow; /* thumbnails border color when mouse cursor is over it */ + color: black; +} + +/* links */ +A, INPUT.rateButton { + color: #005e89; + background: transparent; +} + +A:hover, INPUT.rateButton:hover { + color: #858460; +} + +#imageToolBar A, #imageToolBar A:hover { + border-bottom: none; +} + +A.navThumb, A.navThumb:hover { + border-bottom: none; +} + +/*calendar elements*/ +SPAN.calItem, SPAN.calItemEmpty +{ + border: 1px solid silver; +} + +.virtual_cat { background: #fff !important; } +#mbMenu #quicksearch > p { text-align: left; } +#qsearchInput { color: #d3d3d3; } +#qsearchInput:focus { color: #005e89; } + + +UL.tabsheet LI.normal_tab { background-color: #d3d3d3; } +UL.tabsheet LI.selected_tab { background-color: #eeeeee; } + +UL.tabsheet, UL.tabsheet LI {border-color: gray;} +UL.tabsheet LI.normal_tab:hover { border-color: black; } diff --git a/BSF/template/yoga/theme/clear/themeconf.inc.php b/BSF/template/yoga/theme/clear/themeconf.inc.php new file mode 100644 index 000000000..5e3aef9a0 --- /dev/null +++ b/BSF/template/yoga/theme/clear/themeconf.inc.php @@ -0,0 +1,11 @@ +<?php +$themeconf = array( + 'template' => 'yoga', + 'theme' => 'clear', + 'template_dir' => 'template/yoga', + 'icon_dir' => 'template/yoga/icon', + 'admin_icon_dir' => 'template/yoga/icon/admin', + 'mime_icon_dir' => 'template/yoga/icon/mimetypes/', + 'local_head' => '<!-- no theme specific head content -->', +); +?> diff --git a/BSF/template/yoga/theme/dark/images/index.php b/BSF/template/yoga/theme/dark/images/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/theme/dark/images/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/theme/dark/images/tableh1_bg.png b/BSF/template/yoga/theme/dark/images/tableh1_bg.png Binary files differnew file mode 100644 index 000000000..c7785d0f6 --- /dev/null +++ b/BSF/template/yoga/theme/dark/images/tableh1_bg.png diff --git a/BSF/template/yoga/theme/dark/images/tableh2_bg.png b/BSF/template/yoga/theme/dark/images/tableh2_bg.png Binary files differnew file mode 100644 index 000000000..d8c29f93d --- /dev/null +++ b/BSF/template/yoga/theme/dark/images/tableh2_bg.png diff --git a/BSF/template/yoga/theme/dark/index.php b/BSF/template/yoga/theme/dark/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/theme/dark/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/theme/dark/mail-css.tpl b/BSF/template/yoga/theme/dark/mail-css.tpl new file mode 100644 index 000000000..b17d6c964 --- /dev/null +++ b/BSF/template/yoga/theme/dark/mail-css.tpl @@ -0,0 +1,13 @@ +{* $Id$ *} +/* Theme dark mail css */ + +body {ldelim} background-color:#444; color:#fff;} +#the_page {ldelim} background: #444 url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/mailbody-bg.png) repeat-y scroll left top;} +#content {ldelim} background: transparent url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/header-bg.png) no-repeat scroll left top;} +#copyright {ldelim} background: transparent url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/footer-bg.png) no-repeat scroll left bottom; +color: #69c;} +h2 {ldelim} background-color: #333;color:#fff48e;background-image: url({$ROOT_URL}template/{$themeconf.template}/theme/{$themeconf.theme}/images/tableh1_bg.png);} +img {ldelim} margin: 16px; border: 16px solid #111; -moz-border-radius: 4px; border-radius: 4px 4px; } +img:hover {ldelim} padding: 15px; border: 1px solid yellow;background-color:#444;-moz-border-radius: 4px; border-radius: 4px 4px; } +a {ldelim} color: #fff48e; background: transparent;border-bottom:1px dotted #005e89; } +a:hover {ldelim} color: #fff48e;} diff --git a/BSF/template/yoga/theme/dark/theme.css b/BSF/template/yoga/theme/dark/theme.css new file mode 100644 index 000000000..690bdda1d --- /dev/null +++ b/BSF/template/yoga/theme/dark/theme.css @@ -0,0 +1,92 @@ +/* $Id$ */ + +/* text color */ +BODY, H1, H3, DT, +INPUT.rateButtonSelected /* <= why IE doesn't inherit this ? */ { + color:#d0d0d0; +} + +H2, #menubar DT, .throw { + color: #fff48e; +} + + +/* backgrounds */ + +BODY, H3, #imageHeaderBar, #imageToolBar A:hover, .row1, UL.tabsheet LI.normal_tab { + background-color: #2f2f2f; +} + +#menubar DL, .content, #imageToolBar, .header_notes, UL.tabsheet LI.selected_tab { + background-color: #505050; +} + +H2, #menubar DT, .throw { + background-image: url(images/tableh1_bg.png); +} + +#imageHeaderBar H2 { + background-image: none; + background-color: transparent; + border: none; +} + +#imageHeaderBar { + background-image: url(images/tableh2_bg.png); + background-repeat: repeat-x; + background-position: center; +} + +/* borders */ +#menubar DL, .content, +#comments DIV.comment BLOCKQUOTE { + border: 1px solid #000000; +} + +#imageHeaderBar { + border-top: 1px solid #000000; +} +H2, #menubar DT, #imageToolBar { + border-bottom: 1px solid #000000; +} + +#theImage IMG { + border-color: #000000; +} + +FIELDSET, INPUT, SELECT, TEXTAREA, +.content DIV.comment A.illustration IMG, +.content DIV.thumbnailCategory { + border: 1px solid gray; +} + +#comments DIV.comment BLOCKQUOTE { + border-left: 2px solid #696969; +} + +.content UL.thumbnails SPAN.wrap2 { + border: 1px solid #aaaaaa; /* thumbnails border color and style */ + border-radius: 4px 4px; /* round corners with CSS3 compliant browsers */ +} + +.content UL.thumbnails SPAN.wrap2:hover, +.content UL.thumbnailCategories DIV.thumbnailCategory:hover, +.content UL.thumbnailCategories DIV.thumbnailCategory:hover A { + background-color: #faebd7; + border-color: yellow; /* thumbnails border color when mouse cursor is over it */ + color: black; +} + +UL.tabsheet LI.normal_tab:hover { border-color: #fff48e; } + +/* links */ +A, INPUT.rateButton { + color: #FFFFFF; + border: none; +} + +A:hover { + color: #FFF48E; +} + +.virtual_cat { background: #3f3f3f; } diff --git a/BSF/template/yoga/theme/dark/themeconf.inc.php b/BSF/template/yoga/theme/dark/themeconf.inc.php new file mode 100644 index 000000000..bdee2e443 --- /dev/null +++ b/BSF/template/yoga/theme/dark/themeconf.inc.php @@ -0,0 +1,11 @@ +<?php +$themeconf = array( + 'template' => 'yoga', + 'theme' => 'dark', + 'template_dir' => 'template/yoga', + 'icon_dir' => 'template/yoga/icon', + 'admin_icon_dir' => 'template/yoga/icon/admin', + 'mime_icon_dir' => 'template/yoga/icon/mimetypes/', + 'local_head' => '<!-- no theme specific head content -->', +); +?> diff --git a/BSF/template/yoga/theme/index.php b/BSF/template/yoga/theme/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/theme/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/theme/p0w0/images/button-bg.png b/BSF/template/yoga/theme/p0w0/images/button-bg.png Binary files differnew file mode 100644 index 000000000..1ea3b3bd0 --- /dev/null +++ b/BSF/template/yoga/theme/p0w0/images/button-bg.png diff --git a/BSF/template/yoga/theme/p0w0/images/index.php b/BSF/template/yoga/theme/p0w0/images/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/theme/p0w0/images/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/theme/p0w0/index.php b/BSF/template/yoga/theme/p0w0/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/theme/p0w0/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/theme/p0w0/mail-css.tpl b/BSF/template/yoga/theme/p0w0/mail-css.tpl new file mode 100644 index 000000000..ffff7c9d8 --- /dev/null +++ b/BSF/template/yoga/theme/p0w0/mail-css.tpl @@ -0,0 +1,12 @@ +{* $Id$ *} +/* Theme p0w0 mail css */ + +body {ldelim} background-color:#cde; color:#369;} +#the_page {ldelim} background: #cde url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/mailbody-bg.png) repeat-y scroll left top;} +#content {ldelim} background: transparent url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/header-bg.png) no-repeat scroll left top;} +#copyright {ldelim} background: transparent url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/footer-bg.png) no-repeat scroll left bottom; +color: #69c;} +h2 {ldelim} color:#fff;background: #369 url({$ROOT_URL}template/{$themeconf.template}/theme/{$themeconf.theme}/images/button-bg.png);} +img {ldelim} margin:16px;padding:15px;border:1px solid #69c;background-color:#eef;-moz-border-radius:4px; border-radius:4px 4px; } +img:hover {ldelim} border: 1px solid #c60; -moz-border-radius:4px; border-radius:4px 4px; } +a {ldelim} color: #f92; background: transparent; } diff --git a/BSF/template/yoga/theme/p0w0/theme.css b/BSF/template/yoga/theme/p0w0/theme.css new file mode 100644 index 000000000..4a04cf44c --- /dev/null +++ b/BSF/template/yoga/theme/p0w0/theme.css @@ -0,0 +1,269 @@ +/* $Id$ */ + +/** + * Color scheme (Remember #6699cc = #69c) + * #000000 #336699 #4477aa #6699cc (Black -> Blues) + * #cc6600 #ff9933 (Oranges) + * #cccccc + * #ccddee #dfe8ff #eeeeff #ffffff (Light colors -> White) + * */ +/** + * Logic + * - Texts + * - Backgrounds + * - Borders, Margins, Padding + * - Visibility / Display + */ + +/******************************************************************************/ +/* Texts Only */ +BODY, H1, H3, DT, H2, .throw { color: #369; } +H2, #menubar DT, .throw, TD H3, #theAdminPage H3 { + color: #fff; +} +#menubar DT, #menubar DT A { + color: #fff; + font-weight: bold; +} +.content .titrePage .categoryActions li { color: #cde;} +#menubar DT A:hover { + color: #f92; + font-weight: bold; +} +h1 { font-weight: bold; letter-spacing: 0.2em; } +#mbIdentification dd p, +#menubar .selected A { color: #c60; font-weight: bold; } +#copyright { color: #c60; } +.content .pageNumberSelected, +A, INPUT.rateButton, legend { color: #369; } +A:hover { color: #f92; } +INPUT.rateButtonSelected /* <= why IE doesn't inherit this ? */ { + color:#69c; +} +.infoTable, +#theAdminPage .content, +input#qsearchInput { color: #369; } +.content .infos { color: #036; } +.content .errors { color: #900; } +.content .titrePage H2 A { color: #dfe8ff; } +input.rateButtonSelected, +.content .titrePage H2 A:hover { color: #f92; } +.content H2 { + letter-spacing: 0.01em; + text-indent: 1em; + font-weight: normal; +} +.content ul.thumbnailCategories li div.thumbnailCategory .description h3, +.content h3 { text-align: center; } +.browsePath, .imageNumber, +#imageHeaderBar H2, +.browsePath A { + color: #eef; + font-weight: bold; +} +.browsePath A:hover { color: #fff; } +.content H2:before, .browsePath:before, .imageNumber:before, +#imageHeaderBar H2:before, +.content H2:after, .browsePath:after, .imageNumber:after, +#imageHeaderBar H2:after { + content: " "; + color: #fff; + font-family: sans-serif; + font-weight: normal; + letter-spacing: 0em; +} +#thePicturePage #comments H2 { + color: #69c; +} +.content ul.thumbnailCategories li div.thumbnailCategory .description p { + color: #c60; +} +.content ul.thumbnailCategories li div.thumbnailCategory .description p + p { + color: #369; +} +.tabsheet li, .tabsheet li a, #theAdminPage h3 a, +.content div.thumbnailCategory .description h3 a { + color: #fff; +} +.tabsheet li a:hover, .content div.thumbnailCategory .description h3 a:hover { + color: #f92; +} + + +/******************************************************************************/ +/* Backgrounds Only */ +BODY { background: #cde; } +.header_notes, +#thePicturePage #the_page, +#thePicturePage #theImage, +#theAdminPage #the_page, +.content { background-color: #dfe8ff; } +#the_page { background-color: #dfe8ff; } +#menubar, H3, #imageHeaderBar, +.row1 { background-color: #eef; } +H2, #menubar DT, .throw, TD H3, +#imageToolBar, +#imageHeaderBar, #imageHeaderBar H2, .tabsheet li, +#theAdminPage H3 { background-color: #369; } +.content H2 { background-color: #369; } +.content .infos { background-color: #47a; ;} +.content .errors { background-color: #fc5; ;} +#thePicturePage #comments H2 { background-color: #eef; ;} +.content ul.thumbnailCategories li div.thumbnailCategory .description h3 { + background-color: #69c; +} +.content ul.thumbnailCategories li div.thumbnailCategory, +.content UL.thumbnails SPAN.wrap2 { background-color: #eef; } +.content ul.thumbnailCategories li div.thumbnailCategory:hover, +#theImage IMG, .navThumb IMG, +.content UL.thumbnails SPAN.wrap2:hover { background-color: #fff; } +.content UL.thumbnails SPAN.wrap2:active img { + outline: 3px ridge #f92; +} +input#qsearchInput { background-color: #cde; } +.virtual_cat { background: #fff !important; } +.selected_tab { background-color: #69c !important; } +/******************************************************************************/ +/* Borders, Margins, Padding Only */ +BODY { margin: 0px; padding: 0px; } +#menubar { + margin : 0px 0px 0px 8px; + border: 0px; + text-decoration: none; + border: 1px solid #369; +} +A { border: 0px; text-decoration: none; } +A:hover { text-decoration: none; border: 0px; } +.content { + border: 1px solid #369; + padding: 0px; +} +#menubar DT, .content H2 { + background-image: url(images/button-bg.png); + border: 0px; + margin-bottom: 3px; +} +.content ul.thumbnailCategories li div.thumbnailCategory .description h3 { + background-image: url(images/button-bg.png); + border-width: 1px; + border-style: outset; + border-color: #369; +} +.content ul.thumbnailCategories li div.thumbnailCategory .description h3:active +{ + background: #69c; + border: 1px inset #369; +} +.content .errors { border-color: #f92; } +#imageHeaderBar H2 { border: 0px; } +#thePicturePage #imageToolBar { padding: 0px 25px 5px 25px; } +#thePicturePage #theImage { + margin: 0px; + padding: 3px 0px 15px 0px; +} +#thePicturePage #comments H2 { + border-top: 2px solid #69c; + border-bottom: 1px solid #369; +} +#comments DIV.comment BLOCKQUOTE { + border: 1px solid #fff; +} +H2, #imageToolBar { + border-bottom: 1px solid #fff; +} +.navThumb IMG { border: 1px solid #c60; padding: 1px; opacity: 0.8; } +.navThumb:hover IMG { border: 1px solid #f92; padding: 1px; opacity: 1; } +#theImage IMG { + border: 3px solid #369; + margin: 2px auto; + padding: 1px; + box-shadow: 0.2em 0.2em #ccc; +} +.content UL.thumbnail IMG { + border: 1px solid #666; +} +.illustration A { + border: 0px; +} +FIELDSET, INPUT, SELECT, TEXTAREA, +.content DIV.comment A.illustration IMG, +.content DIV.thumbnailCategory { + border: 1px solid #69c; + background-color: #dfe8ff; + margin: 3px; +} +.content DIV.thumbnailCategory:hover { + border: 1px solid #f92; +} +.content UL.thumbnails SPAN.wrap2 { + border: 1px solid #69c; /* thumbnails border color and style */ + border-radius: 4px 4px; /* round corners with CSS3 compliant browsers */ +} +.content UL.thumbnails SPAN.wrap2:hover { + border-color: #f92; /* thumbnails border color when mouse cursor is over it */ +} +A.navThumb, A.navThumb:hover, +#imageToolBar A, #imageToolBar A:hover { + border-bottom: none; +} +#the_page { + border: 0px; + padding: 5px 0px 30px 0px; + margin: 0px; +} +#theAdminPage .content table td { padding: 2px 8px; } +ul.tabsheet, ul.tabsheet li { border-color: #369 !important; } +.tabsheet li:hover { border-color: #f92 !important; } + +/******************************************************************************/ +/* Display, Visibility, buttons and others */ +label { cursor:pointer } +.zero { display: none } + +#the_page { + text-align:center; + display:block; +} + +input[type="text"], input[type="password"], input.button, +input.submit, input.reset, input.file, +select, textarea { + color: #369; + border: 1px solid #369; + background-color: #eeeeff; +} +input.submit[type="reset"]:focus, +input.submit:focus { + background-color: #369; +} +input.submit[type="reset"], +input.submit { + background-image: url(images/button-bg.png); + height:22px; + font-weight: bold; + color: #fff; + border-width: 1px; + border-style: outset; + border-color: #369; + padding-left: 2em; + padding-right: 2em; +} +input.submit[type="reset"]:active, +input.submit:active { + background: #69c; + height:22px; + border: 1px inset #369; +} +#addComment fieldset input.submit[type="submit"] { + height: 38px; + padding-left: 4em; + padding-right: 4em; +} +#menubar .menuInfoCat, #menubar .menuInfoCatByChild { + font-size: 80%; + font-style: normal; +} +* { outline: none; } + +tr.throw td a { color: #fff; } +tr.throw td a:focus { color: #f92; }
\ No newline at end of file diff --git a/BSF/template/yoga/theme/p0w0/themeconf.inc.php b/BSF/template/yoga/theme/p0w0/themeconf.inc.php new file mode 100644 index 000000000..d24b701ca --- /dev/null +++ b/BSF/template/yoga/theme/p0w0/themeconf.inc.php @@ -0,0 +1,11 @@ +<?php +$themeconf = array( + 'template' => 'yoga', + 'theme' => 'p0w0', + 'template_dir' => 'template/yoga', + 'icon_dir' => 'template/yoga/icon', + 'admin_icon_dir' => 'template/yoga/icon/admin', + 'mime_icon_dir' => 'template/yoga/icon/mimetypes/', + 'local_head' => '<!-- no theme specific head content -->', +); +?> diff --git a/BSF/template/yoga/theme/wipi/images/index.php b/BSF/template/yoga/theme/wipi/images/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/theme/wipi/images/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/theme/wipi/images/tableh1_bg.png b/BSF/template/yoga/theme/wipi/images/tableh1_bg.png Binary files differnew file mode 100644 index 000000000..8163e23bf --- /dev/null +++ b/BSF/template/yoga/theme/wipi/images/tableh1_bg.png diff --git a/BSF/template/yoga/theme/wipi/images/tableh2_bg.png b/BSF/template/yoga/theme/wipi/images/tableh2_bg.png Binary files differnew file mode 100644 index 000000000..be06ee428 --- /dev/null +++ b/BSF/template/yoga/theme/wipi/images/tableh2_bg.png diff --git a/BSF/template/yoga/theme/wipi/index.php b/BSF/template/yoga/theme/wipi/index.php new file mode 100644 index 000000000..c15b15795 --- /dev/null +++ b/BSF/template/yoga/theme/wipi/index.php @@ -0,0 +1,30 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +// Recursive call +$url = '../'; +header( 'Request-URI: '.$url ); +header( 'Content-Location: '.$url ); +header( 'Location: '.$url ); +exit(); +?> diff --git a/BSF/template/yoga/theme/wipi/mail-css.tpl b/BSF/template/yoga/theme/wipi/mail-css.tpl new file mode 100644 index 000000000..5b3e53c3d --- /dev/null +++ b/BSF/template/yoga/theme/wipi/mail-css.tpl @@ -0,0 +1,19 @@ +{* $Id$ *} +/* Theme wipi mail css */ + +body {ldelim} background-color:#111; color:#69c;} +#the_page {ldelim} background: #111 url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/mailbody-bg.png) repeat-y scroll left top;} +#content {ldelim} background: transparent url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/header-bg.png) no-repeat scroll left top;} +#copyright {ldelim} background: transparent url({$ROOT_URL}template/{$themeconf.template}/mail/text/html/images/footer-bg.png) no-repeat scroll left bottom; +color: #69c;} +h2 {ldelim} background-color: #222;color:#eee;background-image: url({$ROOT_URL}template/{$themeconf.template}/theme/{$themeconf.theme}/images/tableh1_bg.png);} +img {ldelim} margin: 16px; padding:15px;border:1px solid #eee; -moz-border-radius: 4px; border-radius: 4px 4px; } +img:hover {ldelim} border:1px solid #69c; -moz-border-radius: 4px; border-radius: 4px 4px; } +a {ldelim} color: #69c; background: transparent; } +a:hover {ldelim} color: #f92; } +a.PWG {ldelim} border: 0px; } +a.PWG .P {ldelim} color : #f92; } +a.PWG .W {ldelim} color : #aaa; } +a.PWG .G {ldelim} color : #69c; } +a.PWG:hover .P {ldelim} color : #69c; } +a.PWG:hover .G {ldelim} color : #f92; } diff --git a/BSF/template/yoga/theme/wipi/theme.css b/BSF/template/yoga/theme/wipi/theme.css new file mode 100644 index 000000000..9c0deea14 --- /dev/null +++ b/BSF/template/yoga/theme/wipi/theme.css @@ -0,0 +1,322 @@ +/* $Id$ */ + +/* text color */ +BODY, H1, H3, DT, +INPUT.rateButtonSelected /* <= why IE doesn't inherit this ? */ { + color:#e0e0e0; +} +#menubar { + margin : 0px; + background-color: transparent; + border: 0px; +} +H2, .throw { + color: #eee; +} +#menubar DT, #menubar DT A { + color: #eee; + font-weight: lighter; +} +#menubar DT A:hover { + color: #69c; + font-weight: lighter; +} +#menubar .selected A { + color: #eee; +} +#menubar .selected A:hover { + color: #f92; +} +#menubar DT:before { + content: "__\\_ "; + color: #f92; +} +#menubar DT:after { + content: " _/__"; + color: #69c; +} +#menubar .button { + margin: 0 2px 0px 8px; + width: auto; + padding: 0; + text-indent: 0; + list-style: none; + text-align: center; + float: left; +} +#theAdminPage #menubar DT:before, +#theAdminPage #menubar DT:after { + content: ''; +} +.content .pageNumberSelected { + color: #f92; +} +.content .infos { + background-color: #69c; + color: #036; +} +.content .errors { + background-color: #fc5; + border-color: #f92; + color: #900; +} +/* backgrounds */ +BODY { + background: #111; + margin: 0px; + padding: 0px; +} +H3, #imageToolBar A:hover, .row1, .tabsheet li { + background-color: #222; +} +#theAdminPage h2, #theAdminPage h3 { border-bottom: 1px solid #69c; } +#imageHeaderBar, #theAdminPage #the_page { + background-color: #111; +} +#imageToolBar, .header_notes { + background-color: #333; +} +.selected_tab { background-color: eee !important; } +A { + border-color: #69c; +} +A:hover { + border-color: #f92; +} +.content { + background-color: #181818; + border: 1px solid #eee; + padding: 5px; +} +#theAdminPage #the_page .content { + background-color: #111; + border-width: 0px; + padding: 5px; +} +H2, #menubar DT, .throw, TD H3, #theAdminPage H3 { + background-image: url(images/tableh1_bg.png); + background-repeat: repeat-x; +} +.content H2 { + background: none; + border: 0px; + letter-spacing: -0.05em; + text-indent: 1em; + text-transform: uppercase; + font-weight: lighter; + margin-bottom: 20px; +} +.content ul.thumbnailCategories li div.thumbnailCategory .description h3, +.content h3 { text-align: center; } +.content ul.thumbnailCategories li div.thumbnailCategory .description p { + color: #f92; text-indent: 0em; +} +.content ul.thumbnailCategories li div.thumbnailCategory .description p + p { + color: #fff; +} +.browsePath A { + color: #eee; +} +.content H2:before, .browsePath:before, .imageNumber:before, +#imageHeaderBar H2:before { + content: "____\\_ "; + color: #69c; + font-family: Times, Zapf-Chancery, Cottonwood, Helvetica; + letter-spacing: 0em; +} +.content H2:after, .browsePath:after, .imageNumber:after, +#imageHeaderBar H2:after { + content: " _/____"; + color: #f92; + font-family: Times, Zapf-Chancery, Cottonwood, Helvetica; + letter-spacing: 0em; +} +#imageHeaderBar H2 { + background-image: none; + background-color: transparent; + border: none; +} +#thePicturePage #the_page { + background-color: #111; +} +#thePicturePage #imageHeaderBar { + background-image: url(images/tableh2_bg.png); + background-repeat: repeat-x; +} +#thePicturePage #imageToolBar { + background-color: #111; + border-bottom: 2px solid #69c; +} +#thePicturePage #theImage { + background-color: #111; + margin: 0px; + padding: 3px 0px 15px 0px; +} + +#thePicturePage #comments H2 { + background-image: none; + background-color: #222; + border-top: 2px solid #69c; + border-bottom: 2px solid #69c; + color: #69c; + font-weight: lighter; +} + +/* borders */ +#comments DIV.comment BLOCKQUOTE { + border: 1px solid #000; +} +#imageHeaderBar { + border-top: 1px solid #000; + padding: 8px 0px 3px 0px; +} +H2, #imageToolBar { + border-bottom: 1px solid #000; +} + +#theImage IMG { + border-color: #fff; +} + +.content UL.thumbnail IMG { + border: 1px solid #a0a0a0; +} +.illustration A { + border: 0px; +} +FIELDSET, INPUT, SELECT, TEXTAREA, +.content DIV.comment A.illustration IMG, +.content DIV.thumbnailCategory { + border: 1px solid gray; +} +.content DIV.thumbnailCategory { + border: 1px solid #69c; + margin: 8px 4px; +} +#comments DIV.comment BLOCKQUOTE { + border-left: 2px solid #696969; +} + +.content UL.thumbnails SPAN.wrap2 { + border: 1px solid #aaaaaa; /* thumbnails border color and style */ + border-radius: 4px 4px; /* round corners with CSS3 compliant browsers */ +} + +.content UL.thumbnails SPAN.wrap2:hover, +.content UL.thumbnailCategories DIV.thumbnailCategory:hover { + background-color: #333; + border-color: #69c; /* thumbnails border color when mouse cursor is over it */ +} + +#menubar .buttonmenu { + margin: 0 2px; + width: auto; + padding: 0; + text-indent: 0; + list-style: none; + text-align: center; + float: left; +} +/* links */ +A, INPUT.rateButton, legend { + color: #69c; +} + +A:hover { + color: #f92; +} + +#imageToolBar A, #imageToolBar A:hover { + border-bottom: none; +} +A.navThumb, A.navThumb:hover { + border-bottom: none; +} +#the_page { + border: 1px dotted #f92; + padding-top: 5px; + padding-bottom:30px; + text-align:center; + display:block; + margin: 2px; +} +#copyright { + color: #69c; +} + +label { + cursor:pointer +} +input#qsearchInput { + color: #58c; + background-color: #222; + border: 1px solid #333; + padding: 1px 3px; +} +.zero { display: none } +.nb-hits { color: #69c; } +.nb-comments { color: #f92; } + +FORM#quickconnect, +FORM#quickconnect FIELDSET, +FORM#quickconnect P, +FORM#quickconnect UL.actions, +FORM#quickconnect FIELDSET>UL.actions, +FORM#quickconnect UL.actions, +FORM#quickconnect P, +FORM#quickconnect LABEL { + color: #69c; +} +FORM#quickconnect P INPUT, +FORM#quickconnect INPUT[type=text], +FORM#quickconnect INPUT[type=password] { + width: 85%; + color: #58c; + background-color: #222; + border: 1px solid #333; + padding: 1px 3px; +} + + +.virtual_cat { background: #222 !important; } + +.PWG { + font-family: verdana, arial, helvetica, sans-serif !important; + font-size: 0.9em; + font-weight: normal; + letter-spacing: 0px; +} +a.PWG { border: 0px; } +a.PWG .P { color : #f92; } +a.PWG .W { color : #aaa; } +a.PWG .G { color : #69c; } +a.PWG:hover .P { color : #69c; } +a.PWG:hover .G { color : #f92; } +#menubar DT { + border-top: 1px solid #eef; + border-right: 1px solid #69c; + border-bottom: 1px solid #69c; + border-bottom-right-radius: 12px; + -moz-border-radius-bottomright: 12px; + box-shadow: 5px 5px #69c; +} +.statBar { background-color: #e60; } +#imageToolBar .randomButtons a:hover, +#imageToolBar .navButtons a:hover { background-color: #111; } +#menubar .menuInfoCat, +#menubar .menuInfoCatByChild, +h2.showtitle, #theImage p.showlegend { display: none } +* { outline-width: 0px; } +ul.tabsheet, ul.tabsheet li { + border-color: #69c; +} +ul.tabsheet li.normal_tab { + background-image: url(images/tableh1_bg.png); + background-repeat: repeat-x; +} +ul.tabsheet li.normal_tab:hover { border-color: #f92 } +ul.tabsheet li { + -moz-border-radius: 0px 0px 3px 3px; + border-radius: 0px 0px 12px 12px; + -webkit-border-radius: 0px 0px 3px 3px; +} diff --git a/BSF/template/yoga/theme/wipi/themeconf.inc.php b/BSF/template/yoga/theme/wipi/themeconf.inc.php new file mode 100644 index 000000000..4ac750e46 --- /dev/null +++ b/BSF/template/yoga/theme/wipi/themeconf.inc.php @@ -0,0 +1,16 @@ +<?php +$themeconf = array( + 'template' => 'yoga', + 'theme' => 'wipi', + 'template_dir' => 'template/yoga', + 'icon_dir' => 'template/yoga/icon', + 'admin_icon_dir' => 'template/yoga/icon/admin', + 'mime_icon_dir' => 'template/yoga/icon/mimetypes/', + 'local_head' => '<!-- no theme specific head content -->', +); +if ( !isset($lang['Theme: wipi']) ) +{ + $lang['Theme: wipi'] = 'The site is displayed with wipi theme based ' . + ' on yoga template, a standard template/theme of PhpWebgallery.'; +} +?> diff --git a/BSF/template/yoga/thumbnails-fix-ie5-ie6.css b/BSF/template/yoga/thumbnails-fix-ie5-ie6.css new file mode 100644 index 000000000..dbffaefc9 --- /dev/null +++ b/BSF/template/yoga/thumbnails-fix-ie5-ie6.css @@ -0,0 +1,27 @@ +/* $Id$ */ +/* fix IE with another layout for thumbnails */ +.content UL.thumbnails SPAN.wrap2 { + display: block; + position: relative; + text-align: left; +} +.content UL.thumbnails SPAN.wrap2 A, +.content UL.thumbnails SPAN.wrap2 SPAN { + overflow: visible; + position: absolute; + top: 50%; + text-align: center; +} + +.content UL.thumbnails IMG.thumbnail { + position: relative; + top: -50%; + /*\*//*/ + margin-top: -40%; + /**/ +} +.content UL.thumbnails INPUT { + position: absolute; + left: 2px; + top: 2px; /* same as other browsers but not so pretty */ +} diff --git a/BSF/template/yoga/thumbnails.css b/BSF/template/yoga/thumbnails.css new file mode 100644 index 000000000..8d02e7742 --- /dev/null +++ b/BSF/template/yoga/thumbnails.css @@ -0,0 +1,60 @@ +/* $Id$ */ + +/* Thumbnails customization */ +.content UL.thumbnails SPAN.thumbLegend { + font-size: 80%; /* font size */ + overflow: hidden; /* oversized legend is clipped */ +} + +/* Thumbnail "elastic" layout */ +.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.wrap1 { + margin: 0 5px 5px 5px; + display: table-cell; display: inline-table; + display: inline-block; /* Why 3 display option ??? */ + vertical-align: top; /* OK with Opera and IE6 not Geko */ + text-align: center; /* to center the thumbnail and legend in Geko/Opera */ +} +.content UL.thumbnails SPAN.wrap2 { + margin: 0; /* important reset the margins */ + display: table-cell; /* block prevents vertical-align here */ + vertical-align: middle; /* Ok with Opera and Geko not IE6 */ +} +.content UL.thumbnails SPAN.wrap2 A, +.content UL.thumbnails LABEL { + display: block; + border-bottom: none; +} +.content UL.thumbnails IMG { + margin-bottom: -4px; /* why ??? something wrong with Geko and Opera ignored by IE6*/ +} + +/* label and input used for caddie in admin section */ +.content UL.thumbnails LABEL { + position: relative; +} + +.content UL.thumbnails INPUT { + position: relative; /* <= Opera can handle relative here */ + top: -20px; +} +:root .content UL.thumbnails INPUT { /* hide from Opera */ + position: absolute; /* <= Opera hide 1 checkbox over 2 !!! */ + left: 2px; + top: 2px; +} + +UL.thumbnails .levelIndicatorB { +display:block; position:absolute; z-index:100;padding:0px 0 0 14px; color:black; font-weight:bold; fontsize:120%; +} + +UL.thumbnails .levelIndicatorF { +display:block; position:absolute; z-index:101;padding:1px 0 0 15px; color:white; font-weight:bold; fontsize:120%; +}
\ No newline at end of file diff --git a/BSF/template/yoga/thumbnails.tpl b/BSF/template/yoga/thumbnails.tpl new file mode 100644 index 000000000..2fd37f649 --- /dev/null +++ b/BSF/template/yoga/thumbnails.tpl @@ -0,0 +1,38 @@ +{* $Id$ *} + +{if !empty($thumbnails)} +<ul class="thumbnails"> +{foreach from=$thumbnails item=thumbnail} + <li> + <span class="wrap1"> + <span class="wrap2"> + <a href="{$thumbnail.U_IMG_LINK}"> + <img class="thumbnail" src="{$thumbnail.IMAGE}" alt="{$thumbnail.IMAGE_ALT}" title="{$thumbnail.IMAGE_TITLE}" /> + </a> + </span> + <span class="thumbLegend"> + + {if !empty($thumbnail.ELEMENT_NAME)}{$thumbnail.ELEMENT_NAME}{/if} + {if !empty($thumbnail.IMAGE_TS)}{$thumbnail.IMAGE_TS}{/if} + + {if isset($thumbnail.NB_COMMENTS)} + <span class="{if 0==$thumbnail.NB_COMMENTS}zero {/if}nb-comments"> + <br /> + {$pwg->l10n_dec('%d comment', '%d comments',$thumbnail.NB_COMMENTS)} + </span> + {/if} + + {if isset($thumbnail.NB_HITS)} + <span class="{if 0==$thumbnail.NB_HITS}zero {/if}nb-hits"> + <br /> + {$pwg->l10n_dec('%d hit', '%d hits',$thumbnail.NB_HITS)} + </span> + {/if} + </span> + </span> + </li> +{/foreach} +</ul> +{/if} + + diff --git a/BSF/template/yoga/upgrade.tpl b/BSF/template/yoga/upgrade.tpl new file mode 100644 index 000000000..2af91c70e --- /dev/null +++ b/BSF/template/yoga/upgrade.tpl @@ -0,0 +1,44 @@ +{* $Id$ *} +<!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>Piwigo : Upgrade to {$RELEASE}</title> + </head> + + <body> + {if isset($introduction)} + <h1>Welcome to Piwigo upgrade page.</h1> + + <p>This page proposes to upgrade your database corresponding to your old +version of Piwigo to the current version. The upgrade assistant +thinks you are currently running a +<strong>release {$introduction.CURRENT_RELEASE}</strong> (or equivalent).</p> + + <p><a href="{$introduction.RUN_UPGRADE_URL}">Upgrade from release +{$introduction.CURRENT_RELEASE} to {$RELEASE}</a></p> + {/if} + + {if isset($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> + + <p>Upgrade informations</p> + + <ul> + {foreach from=$infos item=info} + <li>{$info}</li> + {/foreach} + </ul> + + {/if} + </body> + +</html> diff --git a/BSF/template/yoga/upload.tpl b/BSF/template/yoga/upload.tpl new file mode 100644 index 000000000..b92c918fd --- /dev/null +++ b/BSF/template/yoga/upload.tpl @@ -0,0 +1,110 @@ +{* $Id$ *} + +<div id="content" class="content"> + + <div class="titrePage"> + <ul class="categoryActions"> + <li><a href="{$U_HOME}" title="{'return to homepage'|@translate}"><img src="{$themeconf.icon_dir}/home.png" class="button" alt="{'home'|@translate}"/></a></li> + </ul> + <h2>{'upload_title'|@translate}</h2> + </div> + + {if !empty($errors)} + <div class="errors"> + <ul> + {foreach from=$errors item=error} + <li>{$error}</li> + {/foreach} + </ul> + </div> + {/if} + + {if not $UPLOAD_SUCCESSFUL } + <form enctype="multipart/form-data" method="post" action="{$F_ACTION}"> + <table style="width:80%;margin-left:auto;margin-right:auto;"> + <tr> + <td colspan="2" class="menu"> + <div style="text-align:center;">{$ADVISE_TITLE}</div> + {if not empty($advises)} + <ul> + {foreach from=$advises item=advise} + <li>{$advise}</li> + {/foreach} + </ul> + {/if} + </td> + </tr> + <tr> + <td colspan="2" align="center"> + <input name="picture" type="file" value="" /> + </td> + </tr> + {if isset($SHOW_FORM_FIELDS) and $SHOW_FORM_FIELDS} + <!-- category --> + <tr> + <td>{'Category'|@translate}</td> + <td> + {html_options name="category" options=$categories selected=$categories_selected} + </td> + </tr> + <!-- username --> + <tr> + <td>{'Username'|@translate} <span style="color:red;">*</span></td> + <td> + <input name="username" type="text" value="{$NAME}" /> + </td> + </tr> + <!-- mail address --> + <tr> + <td>{'mail_address'|@translate} <span style="color:red;">*</span></td> + <td> + <input name="mail_address" type="text" value="{$EMAIL}" /> + </td> + </tr> + <!-- name of the picture --> + <tr> + <td>{'upload_name'|@translate}</td> + <td> + <input name="name" type="text" value="{$NAME_IMG}" /> + </td> + </tr> + <!-- author --> + <tr> + <td>{'upload_author'|@translate}</td> + <td> + <input name="author" type="text" value="{$AUTHOR_IMG}" /> + </td> + </tr> + <!-- date of creation --> + <tr> + <td>{'Creation date'|@translate} (DD/MM/YYYY)</td> + <td> + <input name="date_creation" type="text" value="{$DATE_IMG}" /> + </td> + </tr> + <!-- comment --> + <tr> + <td>{'comment'|@translate}</td> + <td> + <textarea name="comment" rows="3" cols="40" style="overflow:auto">{$COMMENT_IMG}</textarea> + </td> + </tr> + {/if} + <tr> + <td colspan="2" align="center"> + <input class="submit" name="submit" type="submit" value="{'Submit'|@translate}" /> + </td> + </tr> + </table> + </form> + {else} + {'upload_successful'|@translate}<br /> + <div style="text-align:center;"> + <a href="{$U_RETURN}">[ {'home'|@translate} ]</a> + </div> + {/if} + + {if isset($SHOW_FORM_FIELDS) and $SHOW_FORM_FIELDS} + <div style="text-align:left;"><span style="color:red;">*</span> : {'mandatory'|@translate}</div> + {/if} +</div> <!-- content --> |