Compare commits

...
Sign in to create a new pull request.

49 commits
master ... 1.5

Author SHA1 Message Date
plegall
0b2581923c Subversion admin: rename branch 1.5 to match new format
git-svn-id: http://piwigo.org/svn/branches/1.5@3250 68402e56-0260-453c-a942-63ccdbb3a9ee
2009-04-23 20:30:04 +00:00
chrisaga
8f9f9177b0 merge from trunk r1471:1472 into branch 1.6 (bug 193:quote in tooltip with ie)
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1474 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-07-15 14:34:17 +00:00
plegall
7f2fa28c7a bug 378 fixed: category_id can't be -1 because the field is an unsigned
integer.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1330 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-05-31 21:36:09 +00:00
plegall
59d2febb48 bug 347 fixed: need add_session_id function for identification without
cookie (this correction can't be merge to current trunk because cookies are
now mandatory).


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1279 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-04-26 21:27:02 +00:00
plegall
5865079907 bug 278 fixed: calendar on date_available could not work because
date_available has a datetime MySQL column format while date_creation has a
date MySQL column format. We use DATE_FORMAT MySQL function to resolv this
issue.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1054 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-02-23 21:38:00 +00:00
plegall
01b388d518 bug 269 fixed: the icon HTML creation was bugged on recent PHP versions
because stricter on arguments of mktime function.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1039 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-02-13 21:51:22 +00:00
plegall
c4cb551358 bug 276 fixed: french word "du" was hardcoded on day stats. Replaced by a
":", just like for month stats.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1037 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-02-13 21:41:16 +00:00
nikrou
eb692b973e merge trunk r1024:1025 into branch 1.5:
Languages corrections: bug 225, 237, 248, 257, 258 fixed


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1026 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-02-06 08:41:47 +00:00
nikrou
66294c6e86 bug 277 fixed: Caddie text is always in english
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1016 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-01-28 13:31:12 +00:00
nikrou
1d46a96621 bug 268 fixed: display debug content correctly
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1011 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-01-21 20:32:09 +00:00
nikrou
71d78a813f Revert to revision 1002
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1005 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-01-15 13:49:29 +00:00
nikrou
9d6404ad36 Improve security of sessions:
- use only cookies to store session id on client side
- use default php session system with database handler to store sessions on server side

git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1003 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-01-15 12:52:55 +00:00
nikrou
6d45ca83ef -bug 259 fixed: optimize parse_comment_content() including links
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1002 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-01-09 20:30:21 +00:00
nikrou
22387e0d9b not include .svn directory in the candidates directories for update
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@1001 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-01-09 19:43:07 +00:00
nikrou
129f203470 - bug 260 fixed: var U_LOST_PASSWORD not defined
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@999 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-01-06 15:21:57 +00:00
nikrou
7ed07f360c code simplification
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@997 68402e56-0260-453c-a942-63ccdbb3a9ee
2006-01-01 17:02:18 +00:00
chrisaga
cb6b60d655 fix bug 254: Quickconnect items are currently outside the sidebar with Opera 7.x till 8.51
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@994 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-30 21:29:12 +00:00
nikrou
98bd8ea9b3 Modification mineure: le sujet du mail doit être encodé car il peut contenir des espaces.
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@993 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-29 13:28:33 +00:00
nikrou
6a7a654094 Correction du bug 238
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@992 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-29 10:40:32 +00:00
plegall
bf56ef443b bug 196 fixed : release creator shell script transforms every occurence of
%PWGVERSION% into the release number being created. This occurence should
not been transformed, so we use a little trick :-)


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@991 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-27 10:03:29 +00:00
plegall
9bc452537e bug 247 fixed : image_id GET parameter was not checked for sanity before
usage in SQL queries. Now, image_id must be a numeric value.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@989 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-25 22:37:07 +00:00
plegall
7bdb132ffc bug 246 fixed : GET parameter "search" is not completely checked before
usage in SQL queries. Simple check : if a ";" if found, execution stops.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@988 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-25 22:34:44 +00:00
plegall
2268adf642 bug 245 fixed : GET parameters "since", "sort_by", "sort_order",
"items_number", and "cat" are now checked before being used in SQL queries.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@987 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-24 15:31:25 +00:00
chrisaga
a4b2bcbb80 cosmetic : change page title form {PAGE_TITLE} to {GALLERY_TITLE}:{PAGE_TITLE} in template
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@984 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-12 19:31:29 +00:00
plegall
0df3668f85 - bug fixed : #eee background color for blockquote comments had
disappeared. Now comments are displayed with same colors in comments.php
  and picture.php


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@977 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-09 22:56:12 +00:00
plegall
b69981c2cd - bug fixed: PHP warning when no categories in menu, because $level was not
initialized in get_html_menu_category function.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@975 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-09 22:53:25 +00:00
plegall
7d49614752 - bug 209 fixed: upgrade script did not delete obsolete columns in users
table. users.password column was not updated by upgrade script. To fix
  this bug, a new upgrade script from 1.5.0 was added even if database model
  did not change, it's just about fixing upgraded database.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@974 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-06 22:18:08 +00:00
chrisaga
dca8ba0c4a dd feature 221 : Add a link to "lost password" in quick connect form
plus link to "register" and move quickconnect rules from default-layout.css to menubar.css



git-svn-id: http://piwigo.org/svn/branches/branch-1_5@973 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-03 23:53:26 +00:00
plegall
98e4c38f1d - bug 220 fixed: french grammatical corrections.
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@968 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-03 22:14:58 +00:00
plegall
844506eccf - bug 224 fixed: if no categories to synchronize (no directory in
"galleries" directory), crash on information retrieval from pictures
  uploaded by users.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@966 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-03 22:02:01 +00:00
chrisaga
0e02f343e8 bug 226 fixed : mixed class and id for "infos" and "errors" between tpl and css
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@964 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-03 19:00:12 +00:00
chrisaga
c7571979dd svn properties : ignore config_local.inc.php
plus delete useless include/.cvsignore


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@962 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-12-03 17:44:25 +00:00
plegall
4d464d7f70 - feature 195 added: Link to admin main page added in admin menu. This is
not a merge from BSF.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@957 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-25 23:02:58 +00:00
plegall
6fd6d2721b - bug 219 fixed: displaying "all" in "global mode" doesn't display all
pictures but only all pictures from current display to end.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@955 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-25 22:45:52 +00:00
chrisaga
519d3ebc6b - fix bug 222 : comments page broken with IE
IE doesn't understand child selector nor min-height
		use floating design instead of positionning


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@951 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-24 19:09:13 +00:00
plegall
9a61fdfe05 - bug 216 fixed: a message about validation required is given when a user
submits a comment


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@947 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-19 16:09:06 +00:00
plegall
5a1d2d14ca - bug 215 fixed: unvalidated user comments are not displayed on user
comments common page anymore


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@946 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-19 16:07:18 +00:00
plegall
a8836718e5 - bug 212 fixed: during registration process, different password and
password confirmation triggered no error.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@945 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-19 16:05:26 +00:00
plegall
89fec49fda - bug 199 fixed: hard coded URL in RSS feed instead of using
$conf['gallery_url']


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@944 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-18 23:28:51 +00:00
plegall
d3524368d2 - corrupted picture comes back
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@943 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-18 23:03:59 +00:00
plegall
3ccf54efbc - delete a corrupted file, will be added back soon
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@942 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-18 23:02:47 +00:00
plegall
db658fcbe1 - bug fixed: UL/LI tags were not correctly closed in category menu tree.
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@940 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-18 22:42:35 +00:00
chrisaga
f280ff4b17 bug 206 fixed: PNG thumbnails clipped with IE
- added class="icon" to recent.png (functions_html.inc.php)
	- added class="button" to al png button images (*.tpl)
	- changed pngfix.js to only fix icon or button images
template improvement: category prettier and simpler (a little bit)
	- got rid of one SPAN level
	- content.css more readable


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@939 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-17 20:13:36 +00:00
plegall
b6833701d6 - merge trunc r933:934 into branch 1.5 (bug 207 fixed)
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@935 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-16 21:21:39 +00:00
chrisaga
a06d7c5cae - bug 197 fixed : IE doesn't support multiple class
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@933 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-13 10:15:06 +00:00
plegall
5fa7cab4da - merge trunc r930:931 into branch 1.5 (bug 198 fixed)
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@932 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-12 21:38:43 +00:00
plegall
d17eac9104 - bug 180 fixed: (report from BSF) remote_site.tpl doesn't validate.
- translation bug fixed: (report from BSF) generate_file_listing.php doesn't
  exist, it's create_listing_file.php !


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@929 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-08 21:26:30 +00:00
plegall
f5d15d6b12 - Branch 1.5 creation
- modification: on a fix branch, version is not shown, neither generation
  time.


git-svn-id: http://piwigo.org/svn/branches/branch-1_5@928 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-08 21:23:20 +00:00
plegall
4639f2dfbc This commit was manufactured by cvs2svn to create branch 'branch-1_5'.
git-svn-id: http://piwigo.org/svn/branches/branch-1_5@926 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-11-07 23:07:46 +00:00
65 changed files with 672 additions and 253 deletions

View file

@ -86,6 +86,7 @@ $template->assign_vars(
'U_THUMBNAILS'=>add_session_id($link_start.'thumbnail' ), 'U_THUMBNAILS'=>add_session_id($link_start.'thumbnail' ),
'U_USERS'=>add_session_id($link_start.'user_list' ), 'U_USERS'=>add_session_id($link_start.'user_list' ),
'U_GROUPS'=>add_session_id($link_start.'group_list' ), 'U_GROUPS'=>add_session_id($link_start.'group_list' ),
'U_ADMIN'=>add_session_id( PHPWG_ROOT_PATH.'admin.php' ),
'U_RETURN'=>add_session_id(PHPWG_ROOT_PATH.'category.php') 'U_RETURN'=>add_session_id(PHPWG_ROOT_PATH.'category.php')
) )
); );

View file

@ -120,7 +120,7 @@ SELECT image_id
} }
else if ('caddie' == $_GET['cat']) else if ('caddie' == $_GET['cat'])
{ {
$page['title'] = 'caddie'; $page['title'] = $lang['caddie'];
$query = ' $query = '
SELECT element_id SELECT element_id
@ -167,7 +167,8 @@ SELECT DISTINCT(image_id)
if (!isset($_GET['start']) if (!isset($_GET['start'])
or !is_numeric($_GET['start']) or !is_numeric($_GET['start'])
or $_GET['start'] < 0) or $_GET['start'] < 0
or (isset($_GET['display']) and 'all' == $_GET['display']))
{ {
$page['start'] = 0; $page['start'] = 0;
} }

View file

@ -162,8 +162,8 @@ SELECT COUNT(*)
'NAME' => $row['name'], 'NAME' => $row['name'],
'MEMBERS' => sprintf(l10n('%d members'), $counter), 'MEMBERS' => sprintf(l10n('%d members'), $counter),
'U_MEMBERS' => $members_url.$row['id'], 'U_MEMBERS' => $members_url.$row['id'],
'U_DELETE' => $del_url.$row['id'], 'U_DELETE' => add_session_id($del_url.$row['id']),
'U_PERM' => $perm_url.$row['id'] 'U_PERM' => add_session_id($perm_url.$row['id'])
) )
); );
} }

View file

@ -555,6 +555,7 @@ function get_fs_directories($path, $recursive = true)
if (is_dir($path.'/'.$node) if (is_dir($path.'/'.$node)
and $node != '.' and $node != '.'
and $node != '..' and $node != '..'
and $node != '.svn'
and $node != 'thumbnail' and $node != 'thumbnail'
and $node != 'pwg_high' and $node != 'pwg_high'
and $node != 'pwg_representative') and $node != 'pwg_representative')

View file

@ -76,7 +76,9 @@ if (isset($_GET['action']) and 'check_upgrade' == $_GET['action'])
l10n('Check for upgrade failed for unknown reasons.') l10n('Check for upgrade failed for unknown reasons.')
); );
} }
else if ('%PWGVERSION%' == $versions{'current'}) // concatenation needed to avoid automatic transformation by release
// script generator
else if ('%'.'PWGVERSION'.'%' == $versions{'current'})
{ {
array_push( array_push(
$page['infos'], $page['infos'],

View file

@ -714,6 +714,12 @@ SELECT id, galleries_url
WHERE id != 1 WHERE id != 1
;'; ;';
$result = pwg_query($query); $result = pwg_query($query);
if (mysql_num_rows($result) > 0)
{
$template->assign_block_vars('sites', array());
}
while ($row = mysql_fetch_array($result)) while ($row = mysql_fetch_array($result))
{ {
$base_url = PHPWG_ROOT_PATH.'admin.php'; $base_url = PHPWG_ROOT_PATH.'admin.php';
@ -722,7 +728,7 @@ while ($row = mysql_fetch_array($result))
$base_url.= '&amp;action='; $base_url.= '&amp;action=';
$template->assign_block_vars( $template->assign_block_vars(
'site', 'sites.site',
array( array(
'NAME' => $row['galleries_url'], 'NAME' => $row['galleries_url'],
'U_GENERATE' => add_session_id($base_url.'generate'), 'U_GENERATE' => add_session_id($base_url.'generate'),

View file

@ -60,7 +60,7 @@ else
if (isset($_GET['day']) && isset($_GET['month']) && isset($_GET['year']) ) if (isset($_GET['day']) && isset($_GET['month']) && isset($_GET['year']) )
{ {
$date_of_day=$_GET['day'].' '.$lang['month'][$_GET['month']].' '.$_GET['year']; $date_of_day=$_GET['day'].' '.$lang['month'][$_GET['month']].' '.$_GET['year'];
$title_page=$lang['stats_day_title'].' du '.$date_of_day; $title_page=$lang['stats_day_title'].' : '.$date_of_day;
$url_back = PHPWG_ROOT_PATH."admin.php?page=stats"; $url_back = PHPWG_ROOT_PATH."admin.php?page=stats";
$url_back = add_session_id($url_back); $url_back = add_session_id($url_back);
$title_details='<a href='.$url_back.'>'.$lang['stats_day_title'].'</a>'; $title_details='<a href='.$url_back.'>'.$lang['stats_day_title'].'</a>';

View file

@ -469,7 +469,7 @@ SELECT IF(MAX(id)+1 IS NULL, 1, MAX(id)+1) AS next_element_id
echo ' -->'."\n"; echo ' -->'."\n";
// retrieving informations given by uploaders // retrieving informations given by uploaders
if (!$simulate) if (!$simulate and count($cat_ids) > 0)
{ {
$query = ' $query = '
SELECT id,file,storage_category_id,infos SELECT id,file,storage_category_id,infos

View file

@ -261,9 +261,16 @@ if (isset($_POST['delete']) and count($collection) > 0)
$page['infos'], $page['infos'],
sprintf( sprintf(
l10n('%d users deleted'), l10n('%d users deleted'),
count($collection) count($collection)
) )
); );
foreach ($page['filtered_users'] as $filter_key => $filter_user)
{
if (in_array($filter_user['id'], $collection))
{
unset($page['filtered_users'][$filter_key]);
}
}
} }
else else
{ {
@ -382,6 +389,16 @@ DELETE FROM '.USER_GROUP_TABLE.'
mass_updates(USER_INFOS_TABLE, $dbfields, $datas); mass_updates(USER_INFOS_TABLE, $dbfields, $datas);
} }
redirect(
PHPWG_ROOT_PATH.
'admin.php'.
get_query_string_diff(
array(
'start'
)
)
);
} }
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+

View file

@ -168,6 +168,7 @@ $template->assign_vars(
'U_HOME' => add_session_id( PHPWG_ROOT_PATH.'category.php' ), 'U_HOME' => add_session_id( PHPWG_ROOT_PATH.'category.php' ),
'U_REGISTER' => add_session_id( PHPWG_ROOT_PATH.'register.php' ), 'U_REGISTER' => add_session_id( PHPWG_ROOT_PATH.'register.php' ),
'U_LOST_PASSWORD' => add_session_id(PHPWG_ROOT_PATH.'password.php'),
'U_LOGOUT' => PHPWG_ROOT_PATH.'category.php?act=logout', 'U_LOGOUT' => PHPWG_ROOT_PATH.'category.php?act=logout',
'U_ADMIN'=>add_session_id( PHPWG_ROOT_PATH.'admin.php' ), 'U_ADMIN'=>add_session_id( PHPWG_ROOT_PATH.'admin.php' ),
'U_PROFILE'=>add_session_id(PHPWG_ROOT_PATH.'profile.php') 'U_PROFILE'=>add_session_id(PHPWG_ROOT_PATH.'profile.php')

View file

@ -61,7 +61,20 @@ $since_options = array(
'clause' => '1=1') // stupid but generic 'clause' => '1=1') // stupid but generic
); );
$page['since'] = isset($_GET['since']) ? $_GET['since'] : 1; // since
//
$page['since'] = 1;
if (isset($_GET['since']))
{
if (!isset($since_options{ $_GET['since'] }))
{
die('Hacking attempt on "since" GET parameter');
}
else
{
$page['since'] = $_GET['since'];
}
}
// on which field sorting // on which field sorting
// //
@ -69,7 +82,14 @@ $page['sort_by'] = 'date';
// if the form was submitted, it overloads default behaviour // if the form was submitted, it overloads default behaviour
if (isset($_GET['sort_by'])) if (isset($_GET['sort_by']))
{ {
$page['sort_by'] = $_GET['sort_by']; if (!isset($sort_by{ $_GET['sort_by'] }))
{
die('Hacking attempt on "sort_by" GET parameter');
}
else
{
$page['sort_by'] = $_GET['sort_by'];
}
} }
// order to sort // order to sort
@ -78,7 +98,14 @@ $page['sort_order'] = $sort_order['descending'];
// if the form was submitted, it overloads default behaviour // if the form was submitted, it overloads default behaviour
if (isset($_GET['sort_order'])) if (isset($_GET['sort_order']))
{ {
$page['sort_order'] = $sort_order[$_GET['sort_order']]; if (!isset($sort_order{ $_GET['sort_order'] }))
{
die('Hacking attempt on "sort_order" GET parameter');
}
else
{
$page['sort_order'] = $sort_order[$_GET['sort_order']];
}
} }
// number of items to display // number of items to display
@ -86,15 +113,35 @@ if (isset($_GET['sort_order']))
$page['items_number'] = 5; $page['items_number'] = 5;
if (isset($_GET['items_number'])) if (isset($_GET['items_number']))
{ {
$page['items_number'] = $_GET['items_number']; if (!in_array($_GET['items_number'], $items_number))
{
die('Hacking attempt on "items_number" GET parameter');
}
else
{
$page['items_number'] = $_GET['items_number'];
}
} }
// which category to filter on ? // which category to filter on ?
$page['cat_clause'] = '1=1'; $page['cat_clause'] = '1=1';
if (isset($_GET['cat']) and 0 != $_GET['cat']) if (isset($_GET['cat']))
{ {
$page['cat_clause'] = if (''.intval($_GET['cat']) != ''.$_GET['cat'])
'category_id IN ('.implode(',', get_subcat_ids(array($_GET['cat']))).')'; {
die('Hacking attempt on "cat" GET parameter');
}
else if (0 != $_GET['cat'])
{
$page['cat_clause'] =
'category_id IN ('.
implode(
',',
get_subcat_ids(array($_GET['cat']))
).
')'
;
}
} }
// search a particular author // search a particular author
@ -127,16 +174,18 @@ if (isset($_GET['keyword']) and !empty($_GET['keyword']))
} }
$page['keyword_clause'] = $page['keyword_clause'] =
'('. '('.
implode(' AND ', implode(
array_map( ' AND ',
create_function( array_map(
'$s', create_function(
'return "content LIKE \'%$s%\'";' '$s',
), 'return "content LIKE \'%$s%\'";'
preg_split('/[\s,;]+/', $keyword) ),
) preg_split('/[\s,;]+/', $keyword)
)
). ).
')'; ')'
;
} }
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
@ -287,7 +336,8 @@ SELECT COUNT(DISTINCT(id))
FROM '.IMAGE_CATEGORY_TABLE.' AS ic FROM '.IMAGE_CATEGORY_TABLE.' AS ic
INNER JOIN '.COMMENTS_TABLE.' AS com INNER JOIN '.COMMENTS_TABLE.' AS com
ON ic.image_id = com.image_id ON ic.image_id = com.image_id
WHERE '.$since_options[$page['since']]['clause'].' WHERE validated = \'true\'
AND '.$since_options[$page['since']]['clause'].'
AND '.$page['cat_clause'].' AND '.$page['cat_clause'].'
AND '.$page['author_clause'].' AND '.$page['author_clause'].'
AND '.$page['keyword_clause']; AND '.$page['keyword_clause'];
@ -329,7 +379,8 @@ SELECT com.id AS comment_id
FROM '.IMAGE_CATEGORY_TABLE.' AS ic FROM '.IMAGE_CATEGORY_TABLE.' AS ic
INNER JOIN '.COMMENTS_TABLE.' AS com INNER JOIN '.COMMENTS_TABLE.' AS com
ON ic.image_id = com.image_id ON ic.image_id = com.image_id
WHERE '.$since_options[$page['since']]['clause'].' WHERE validated = \'true\'
AND '.$since_options[$page['since']]['clause'].'
AND '.$page['cat_clause'].' AND '.$page['cat_clause'].'
AND '.$page['author_clause'].' AND '.$page['author_clause'].'
AND '.$page['keyword_clause']; AND '.$page['keyword_clause'];

View file

@ -1,3 +1,19 @@
2005-11-08 Pierrick LE GALL
* bug 180 fixed: (report from BSF) remote_site.tpl doesn't
validate.
* translation bug fixed: (report from BSF)
generate_file_listing.php doesn't exist, it's
create_listing_file.php !
2005-11-08 Pierrick LE GALL
* Branch 1.5 creation
* modification: on a fix branch, version is not shown, neither
generation time.
2005-11-07 Pierrick LE GALL 2005-11-07 Pierrick LE GALL
* bug 184 fixed: for the third time... * bug 184 fixed: for the third time...

View file

@ -307,7 +307,7 @@ $user['forbidden_categories'] = calculate_permissions($user['id'],
$user['status']); $user['status']);
if ('' == $user['forbidden_categories']) if ('' == $user['forbidden_categories'])
{ {
$user['forbidden_categories'] = '-1'; $user['forbidden_categories'] = '0';
} }
list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();')); list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));
@ -331,7 +331,7 @@ if (count($news) > 0)
{ {
$item = new FeedItem(); $item = new FeedItem();
$item->title = sprintf(l10n('New on %s'), $dbnow); $item->title = sprintf(l10n('New on %s'), $dbnow);
$item->link = 'http://phpwebgallery.net'; $item->link = $conf['gallery_url'];
// content creation // content creation
$item->description = '<ul>'; $item->description = '<ul>';

View file

@ -1 +0,0 @@
mysql.inc.php

View file

@ -187,7 +187,8 @@ elseif (isset($page['calendar_day']))
SELECT category_id AS category, COUNT(id) AS count SELECT category_id AS category, COUNT(id) AS count
FROM '.IMAGES_TABLE.' INNER JOIN '.IMAGE_CATEGORY_TABLE.' ON id = image_id FROM '.IMAGES_TABLE.' INNER JOIN '.IMAGE_CATEGORY_TABLE.' ON id = image_id
'.$page['where'].' '.$page['where'].'
AND '.$conf['calendar_datefield'].' = \''.$page['calendar_date'].'\' AND DATE_FORMAT('.$conf['calendar_datefield'].', \'%Y-%c-%e\')'
.' = \''.$page['calendar_date'].'\'
GROUP BY category_id GROUP BY category_id
;'; ;';
$result = pwg_query($query); $result = pwg_query($query);
@ -337,7 +338,8 @@ SELECT file,tn_ext,'.$conf['calendar_datefield'].',path
, DAYOFWEEK(\''.$calendar_day.'\') AS dow , DAYOFWEEK(\''.$calendar_day.'\') AS dow
FROM '.IMAGES_TABLE.' INNER JOIN '.IMAGE_CATEGORY_TABLE.' ON id = image_id FROM '.IMAGES_TABLE.' INNER JOIN '.IMAGE_CATEGORY_TABLE.' ON id = image_id
'.$page['where'].' '.$page['where'].'
AND '.$conf['calendar_datefield'].' = \''.$calendar_day.'\' AND DATE_FORMAT('.$conf['calendar_datefield'].', \'%Y-%m-%d\')'
.' = \''.$calendar_day.'\'
ORDER BY RAND() ORDER BY RAND()
LIMIT 0,1 LIMIT 0,1
;'; ;';
@ -405,7 +407,8 @@ elseif (isset($page['calendar_day']))
SELECT file,tn_ext,'.$conf['calendar_datefield'].',path SELECT file,tn_ext,'.$conf['calendar_datefield'].',path
FROM '.IMAGES_TABLE.', '.IMAGE_CATEGORY_TABLE.' FROM '.IMAGES_TABLE.', '.IMAGE_CATEGORY_TABLE.'
'.$page['where'].' '.$page['where'].'
AND '.$conf['calendar_datefield'].' = \''.$page['calendar_date'].'\''; AND DATE_FORMAT('.$conf['calendar_datefield'].', \'%Y-%c-%e\')'
.' = \''.$page['calendar_date'].'\'';
if ($calendar_category != 0) if ($calendar_category != 0)
{ {
$query.= ' $query.= '

View file

@ -128,7 +128,7 @@ $conf['tn_height'] = 96;
// show_version : shall the version of PhpWebGallery be displayed at the // show_version : shall the version of PhpWebGallery be displayed at the
// bottom of each page ? // bottom of each page ?
$conf['show_version'] = true; $conf['show_version'] = false;
// links : list of external links to add in the menu. An example is the best // links : list of external links to add in the menu. An example is the best
// than a long explanation : // than a long explanation :
@ -285,7 +285,7 @@ $conf['session_id_size'] = 10;
$conf['show_queries'] = false; $conf['show_queries'] = false;
// show_gt : display generation time at the bottom of each page // show_gt : display generation time at the bottom of each page
$conf['show_gt'] = true; $conf['show_gt'] = false;
// debug_l10n : display a warning message each time an unset language key is // debug_l10n : display a warning message each time an unset language key is
// accessed // accessed

View file

@ -430,7 +430,7 @@ function format_date($date, $type = 'us', $show_time = false)
function pwg_query($query) function pwg_query($query)
{ {
global $conf,$page; global $conf,$page,$debug;
$start = get_moment(); $start = get_moment();
$result = mysql_query($query) or my_error($query."\n"); $result = mysql_query($query) or my_error($query."\n");
@ -452,12 +452,12 @@ function pwg_query($query)
$output.= '<pre>['.$page['count_queries'].'] '; $output.= '<pre>['.$page['count_queries'].'] ';
$output.= "\n".$query; $output.= "\n".$query;
$output.= "\n".'(this query time : '; $output.= "\n".'(this query time : ';
$output.= number_format($time, 3, '.', ' ').' s)</b>'; $output.= '<b>'.number_format($time, 3, '.', ' ').' s)</b>';
$output.= "\n".'(total SQL time : '; $output.= "\n".'(total SQL time : ';
$output.= number_format($page['queries_time'], 3, '.', ' ').' s)'; $output.= number_format($page['queries_time'], 3, '.', ' ').' s)';
$output.= '</pre>'; $output.= "</pre>\n";
echo $output; $debug .= $output;
} }
return $result; return $result;
@ -471,9 +471,10 @@ function pwg_debug( $string )
$now2 = explode( '.', $now[0] ); $now2 = explode( '.', $now[0] );
$now2 = $now[1].'.'.$now2[1]; $now2 = $now[1].'.'.$now2[1];
$time = number_format( $now2 - $t2, 3, '.', ' ').' s'; $time = number_format( $now2 - $t2, 3, '.', ' ').' s';
$debug .= '<p>';
$debug.= '['.$time.', '; $debug.= '['.$time.', ';
$debug.= $count_queries.' queries] : '.$string; $debug.= $count_queries.' queries] : '.$string;
$debug.= "\n"; $debug.= "</p>\n";
} }
/** /**

View file

@ -381,6 +381,12 @@ function initialize_category( $calling_page = 'category' )
// search result // search result
if ( $page['cat'] == 'search' ) if ( $page['cat'] == 'search' )
{ {
// SQL injection hacking attempt?
if (strpos($_GET['search'], ';') !== false)
{
die('Hacking attempt on "search" GET parameter');
}
// analyze search string given in URL (created in search.php) // analyze search string given in URL (created in search.php)
$tokens = explode('|', $_GET['search']); $tokens = explode('|', $_GET['search']);
@ -481,7 +487,7 @@ function initialize_category( $calling_page = 'category' )
$key = $datefield; $key = $datefield;
if (isset($search['fields'][$key])) if (isset($search['fields'][$key]))
{ {
$local_clause = $datefield." = '"; $local_clause = 'DATE_FORMAT('.$datefield.", '%Y-%m-%d') = '";
$local_clause.= str_replace('.', '-', $local_clause.= str_replace('.', '-',
$search['fields'][$key]['words'][0]); $search['fields'][$key]['words'][0]);
$local_clause.= "'"; $local_clause.= "'";

View file

@ -27,15 +27,23 @@
function get_icon( $date ) function get_icon( $date )
{ {
// TODO $page['icon_cache'], for each date, associate the HTML icon
global $user, $conf, $lang; global $user, $conf, $lang;
if (!preg_match('/\d{4}-\d{2}-\d{2}/', $date)) if (!preg_match('/^(\d{4})-(\d{2})-(\d{2})/', $date, $matches))
{
// date can be empty, no icon to display
return '';
}
list($devnull, $year, $month, $day) = $matches;
$unixtime = mktime( 0, 0, 0, $month, $day, $year );
if ($unixtime === false // PHP 5.1.0 and above
or $unixtime === -1) // PHP prior to 5.1.0
{ {
return ''; return '';
} }
list( $year,$month,$day ) = explode( '-', $date );
$unixtime = mktime( 0, 0, 0, $month, $day, $year );
$diff = time() - $unixtime; $diff = time() - $unixtime;
$day_in_seconds = 24*60*60; $day_in_seconds = 24*60*60;
@ -48,8 +56,8 @@ function get_icon( $date )
$title .= $user['recent_period']; $title .= $user['recent_period'];
$title .= '&nbsp;'.$lang['days']; $title .= '&nbsp;'.$lang['days'];
$size = getimagesize( $icon_url ); $size = getimagesize( $icon_url );
$output = '<img title="'.$title.'" src="'.$icon_url.'" style="border:0;'; $output = '<img title="'.$title.'" src="'.$icon_url.'" class="icon" style="border:0;';
$output.= 'height:'.$size[1].'px;width:'.$size[0].'px" alt="" />'; $output.= 'height:'.$size[1].'px;width:'.$size[0].'px" alt="(!)" />';
} }
return $output; return $output;
} }
@ -339,6 +347,7 @@ function get_html_menu_category($categories)
global $page, $lang; global $page, $lang;
$ref_level = 0; $ref_level = 0;
$level = 0;
$menu = ''; $menu = '';
foreach ($categories as $category) foreach ($categories as $category)
@ -346,25 +355,21 @@ function get_html_menu_category($categories)
$level = substr_count($category['global_rank'], '.') + 1; $level = substr_count($category['global_rank'], '.') + 1;
if ($level > $ref_level) if ($level > $ref_level)
{ {
$menu.= ' $menu.= "\n<ul>";
<ul>';
} }
else if ($level == $ref_level) else if ($level == $ref_level)
{ {
$menu.= ' $menu.= "\n</li>";
</li>';
} }
else if ($level < $ref_level) else if ($level < $ref_level)
{ {
// we may have to close more than one level at the same time... // we may have to close more than one level at the same time...
$menu.= str_repeat("\n</ul>",($ref_level-$level));
$menu.= "\n</li>"; $menu.= "\n</li>";
$menu.= str_repeat("\n</ul></li>",($ref_level-$level));
} }
$ref_level = $level; $ref_level = $level;
$menu.= ' $menu.= "\n\n".'<li';
<li';
if (isset($page['cat']) if (isset($page['cat'])
and is_numeric($page['cat']) and is_numeric($page['cat'])
and $category['id'] == $page['cat']) and $category['id'] == $page['cat'])
@ -374,13 +379,11 @@ function get_html_menu_category($categories)
$menu.= '>'; $menu.= '>';
$url = add_session_id(PHPWG_ROOT_PATH.'category.php?cat='.$category['id']); $url = add_session_id(PHPWG_ROOT_PATH.'category.php?cat='.$category['id']);
$menu.= ' $menu.= "\n".'<a href="'.$url.'">'.$category['name'].'</a>';
<a href="'.$url.'">'.$category['name'].'</a>';
if ($category['nb_images'] > 0) if ($category['nb_images'] > 0)
{ {
$menu.= ' $menu.= "\n".'<span class="menuInfoCat"';
<span class="menuInfoCat"';
$menu.= ' title="'.$category['nb_images']; $menu.= ' title="'.$category['nb_images'];
$menu.= ' '.$lang['images_available'].'">'; $menu.= ' '.$lang['images_available'].'">';
$menu.= '['.$category['nb_images'].']'; $menu.= '['.$category['nb_images'].']';
@ -388,9 +391,8 @@ function get_html_menu_category($categories)
$menu.= get_icon($category['date_last']); $menu.= get_icon($category['date_last']);
} }
} }
$menu.= '</li> $menu.= str_repeat("\n</li></ul>",($level));
</ul>';
return $menu; return $menu;
} }
@ -407,21 +409,25 @@ function get_html_menu_category($categories)
function parse_comment_content($content) function parse_comment_content($content)
{ {
$content = nl2br($content); $content = nl2br($content);
$pattern = '/(http?:\/\/\S*)/';
$replacement = '<a href="$1">$1</a>';
$content = preg_replace($pattern, $replacement, $content);
// replace _word_ by an underlined word // replace _word_ by an underlined word
$pattern = '/_([^\s]*)_/'; $pattern = '/\b_(\S*)_\b/';
$replacement = '<span style="text-decoration:underline;">\1</span>'; $replacement = '<span style="text-decoration:underline;">$1</span>';
$content = preg_replace($pattern, $replacement, $content); $content = preg_replace($pattern, $replacement, $content);
// replace *word* by a bolded word // replace *word* by a bolded word
$pattern = '/\*([^\s]*)\*/'; $pattern = '/\b\*(\S*)\*\b/';
$replacement = '<span style="font-weight:bold;">\1</span>'; $replacement = '<span style="font-weight:bold;">$1</span>';
$content = preg_replace($pattern, $replacement, $content); $content = preg_replace($pattern, $replacement, $content);
// replace /word/ by an italic word // replace /word/ by an italic word
$pattern = '/\/([^\s]*)\//'; $pattern = "/\/(\S*)\/(\s)/";
$replacement = '<span style="font-style:italic;">\1</span>'; $replacement = '<span style="font-style:italic;">$1$2</span>';
$content = preg_replace($pattern, $replacement, $content); $content = preg_replace($pattern, $replacement, $content);
return $content; return $content;
} }

View file

@ -362,7 +362,10 @@ SELECT cat_id
// at least, the list contains -1 values. This category does not exists so // at least, the list contains -1 values. This category does not exists so
// where clauses such as "WHERE category_id NOT IN(-1)" will always be // where clauses such as "WHERE category_id NOT IN(-1)" will always be
// true. // true.
array_push($forbidden_array, '-1'); if (count($forbidden_array) == 0)
{
array_push($forbidden_array, 0);
}
return implode(',', $forbidden_array); return implode(',', $forbidden_array);
} }

View file

@ -33,7 +33,7 @@ $template->assign_vars(
'L_GEN_TIME' => $lang['generation_time'], 'L_GEN_TIME' => $lang['generation_time'],
'L_SQL_QUERIES_IN' => $lang['sql_queries_in'], 'L_SQL_QUERIES_IN' => $lang['sql_queries_in'],
'L_SEND_MAIL' => $lang['send_mail'], 'L_SEND_MAIL' => $lang['send_mail'],
'L_TITLE_MAIL' => $lang['title_send_mail'], 'L_TITLE_MAIL' => urlencode($lang['title_send_mail']),
'L_POWERED_BY'=>$lang['powered_by'] 'L_POWERED_BY'=>$lang['powered_by']
)); ));
//------------------------------------------------------------- generation time //------------------------------------------------------------- generation time
@ -54,6 +54,14 @@ if ($conf['show_gt'])
'SQL_TIME' => number_format($page['queries_time'],3,'.',' ').' s')); 'SQL_TIME' => number_format($page['queries_time'],3,'.',' ').' s'));
} }
if ($conf['show_queries'])
{
$template->assign_block_vars(
'debug',
array('QUERIES_LIST' => $debug)
);
}
//--------------------------------------------------------------------- contact //--------------------------------------------------------------------- contact
if (!$user['is_the_guest']) if (!$user['is_the_guest'])

View file

@ -1,18 +1,25 @@
// Correctly handle PNG transparency in Win IE 5.5 or higher. // Correctly handle PNG transparency in Win IE 5.5 or higher.
// http://homepage.ntlworld.com/bobosola. Updated 02-March-2004 // http://homepage.ntlworld.com/bobosola. Updated 02-March-2004
// 15-Jully-2006 : chrisaga use \" instead of ' in imgTitle
// : to fix ' display in tooltips
// : keep the alt attribute
function correctPNG() function correctPNG()
{ {
for(var i=0; i<document.images.length; i++) for(var i=0; i<document.images.length; i++)
{ {
var img = document.images[i] var img = document.images[i]
if (img.className == "button" || img.className == "icon")
{
var imgName = img.src.toUpperCase() var imgName = img.src.toUpperCase()
if (imgName.substring(imgName.length-3, imgName.length) == "PNG") if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
{ {
var imgID = (img.id) ? "id='" + img.id + "' " : "" var imgID = (img.id) ? "id='" + img.id + "' " : ""
var imgClass = (img.className) ? "class='" + img.className + "' " : "" var imgClass = (img.className) ? "class='" + img.className + "' " : ""
var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' " //var imgTitle = (img.title) ? "title=\"" + img.title + "\" " : "alt=\"" + img.alt + "\" "
var imgTitle = (img.title) ? "title=\"" + img.title + "\" " : "";
imgTitle = imgTitle + (img.alt) ? "title=\"" + img.alt + "\" " : "";
var imgStyle = "display:inline-block;" + img.style.cssText var imgStyle = "display:inline-block;" + img.style.cssText
if (img.align == "left") imgStyle = "float:left;" + imgStyle if (img.align == "left") imgStyle = "float:left;" + imgStyle
if (img.align == "right") imgStyle = "float:right;" + imgStyle if (img.align == "right") imgStyle = "float:right;" + imgStyle
@ -24,6 +31,7 @@ function correctPNG()
img.outerHTML = strNewHTML img.outerHTML = strNewHTML
i = i-1 i = i-1
} }
}
} }
} }
window.attachEvent("onload", correctPNG); window.attachEvent("onload", correctPNG);

View file

@ -287,6 +287,70 @@ foreach ($queries as $query)
pwg_query($query); pwg_query($query);
} }
// delete obsolete users table colums
$queries = array(
"
ALTER TABLE phpwebgallery_users
DROP COLUMN status
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN nb_image_line
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN maxheight
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN language
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN nb_line_page
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN expand
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN template
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN maxwidth
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN show_nb_comments
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN recent_period
;",
"
ALTER TABLE phpwebgallery_users
CHANGE COLUMN password password varchar(32) default NULL
;"
);
foreach ($queries as $query)
{
$query = str_replace('phpwebgallery_', PREFIX_TABLE, $query);
pwg_query($query);
}
$infos = array(); $infos = array();
if ($prefix_thumbnail != 'TN-') if ($prefix_thumbnail != 'TN-')

View file

@ -287,6 +287,70 @@ foreach ($queries as $query)
pwg_query($query); pwg_query($query);
} }
// delete obsolete users table colums
$queries = array(
"
ALTER TABLE phpwebgallery_users
DROP COLUMN status
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN nb_image_line
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN maxheight
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN language
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN nb_line_page
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN expand
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN template
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN maxwidth
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN show_nb_comments
;",
"
ALTER TABLE phpwebgallery_users
DROP COLUMN recent_period
;",
"
ALTER TABLE phpwebgallery_users
CHANGE COLUMN password password varchar(32) default NULL
;"
);
foreach ($queries as $query)
{
$query = str_replace('phpwebgallery_', PREFIX_TABLE, $query);
pwg_query($query);
}
$infos = array(); $infos = array();
if ($prefix_thumbnail != 'TN-') if ($prefix_thumbnail != 'TN-')

89
install/upgrade_1.5.0.php Normal file
View file

@ -0,0 +1,89 @@
<?php
// +-----------------------------------------------------------------------+
// | PhpWebGallery - a PHP based picture gallery |
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
// | Copyright (C) 2003-2005 PhpWebGallery Team - http://phpwebgallery.net |
// +-----------------------------------------------------------------------+
// | branch : BSF (Best So Far)
// | file : $RCSfile$
// | last update : $Date: 2005-10-23 23:02:21 +0200 (dim, 23 oct 2005) $
// | last modifier : $Author: plg $
// | revision : $Revision: 911 $
// +-----------------------------------------------------------------------+
// | 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. |
// +-----------------------------------------------------------------------+
if (!defined('PHPWG_ROOT_PATH'))
{
die ('This page cannot be loaded directly, load upgrade.php');
}
else
{
if (!defined('PHPWG_IN_UPGRADE') or !PHPWG_IN_UPGRADE)
{
die ('Hacking attempt!');
}
}
// depending on the way the 1.5.0 was installed (from scratch or by upgrade)
// the database structure has small differences that should be corrected.
$query = '
ALTER TABLE phpwebgallery_users
CHANGE COLUMN password password varchar(32) default NULL
;';
pwg_query(
str_replace(
'phpwebgallery_',
PREFIX_TABLE,
$query
)
);
$to_keep = array('id', 'username', 'password', 'mail_address');
$query = '
DESC phpwebgallery_users
;';
$result =
pwg_query(
str_replace(
'phpwebgallery_',
PREFIX_TABLE,
$query
)
);
while ($row = mysql_fetch_array($result))
{
if (!in_array($row['Field'], $to_keep))
{
$query = '
ALTER TABLE phpwebgallery_users
DROP COLUMN '.$row['Field'].'
;';
pwg_query(
str_replace(
'phpwebgallery_',
PREFIX_TABLE,
$query
)
);
}
}
?>

View file

@ -239,7 +239,7 @@ $lang['remote_site'] = 'Remote site';
$lang['remote_site_already_exists'] = 'This site already exists'; $lang['remote_site_already_exists'] = 'This site already exists';
$lang['remote_site_clean'] = 'clean'; $lang['remote_site_clean'] = 'clean';
$lang['remote_site_clean_hint'] = 'remove remote listing.xml file'; $lang['remote_site_clean_hint'] = 'remove remote listing.xml file';
$lang['remote_site_create'] = 'Create a new site : (give its URL to generate_file_listing.php)'; $lang['remote_site_create'] = 'Create a new site : (give its URL to create_listing_file.php)';
$lang['remote_site_created'] = 'created'; $lang['remote_site_created'] = 'created';
$lang['remote_site_delete'] = 'delete'; $lang['remote_site_delete'] = 'delete';
$lang['remote_site_delete_hint'] = 'delete this site and all its attached elements'; $lang['remote_site_delete_hint'] = 'delete this site and all its attached elements';

View file

@ -1,9 +1,9 @@
<ul> <ul>
<li>PhpWebGallery est une application web permettant de créant facilement <li>PhpWebGallery est une application web permettant de créer facilement
une galerie d'images en ligne.</li> une galerie d'images en ligne.</li>
<li>Techniquement, PhpWebGallery est développé en PHP avec une base de <li>Techniquement, PhpWebGallery est développée en PHP avec une base de
données MySQL.</li> données MySQL.</li>
<li>Si vous avez des suggestions ou des commentaires, visitez le <a <li>Si vous avez des suggestions ou des commentaires, visitez le <a

View file

@ -237,9 +237,9 @@ $lang['remote_site'] = 'Site distant';
$lang['remote_site_already_exists'] = 'Ce site existe déjà'; $lang['remote_site_already_exists'] = 'Ce site existe déjà';
$lang['remote_site_clean'] = 'nettoyer'; $lang['remote_site_clean'] = 'nettoyer';
$lang['remote_site_clean_hint'] = 'supprimer le fichier listing.xml distant'; $lang['remote_site_clean_hint'] = 'supprimer le fichier listing.xml distant';
$lang['remote_site_create'] = 'Créer un nouveau site distant : (donner son URL vers generate_file_listing.php)'; $lang['remote_site_create'] = 'Créer un nouveau site distant : (donner son URL vers create_listing_file.php)';
$lang['remote_site_created'] = 'créé'; $lang['remote_site_created'] = 'créé';
$lang['remote_site_delete'] = 'supprimé'; $lang['remote_site_delete'] = 'supprimer';
$lang['remote_site_delete_hint'] = 'supprimer ce site distant et toutes les informations associées'; $lang['remote_site_delete_hint'] = 'supprimer ce site distant et toutes les informations associées';
$lang['remote_site_deleted'] = 'supprimé'; $lang['remote_site_deleted'] = 'supprimé';
$lang['remote_site_error'] = 'une erreur est survenue'; $lang['remote_site_error'] = 'une erreur est survenue';
@ -255,7 +255,7 @@ $lang['remote_site_removed_title'] = '
$lang['remote_site_uncorrect_url'] = 'L\'URL d\'un site distant doit commencer par "http" ou "https" et ne doit contenir des caractères que parmi "/", "a-zA-Z0-9", "-" ou "_"'; $lang['remote_site_uncorrect_url'] = 'L\'URL d\'un site distant doit commencer par "http" ou "https" et ne doit contenir des caractères que parmi "/", "a-zA-Z0-9", "-" ou "_"';
$lang['remote_site_update'] = 'synchronisation'; $lang['remote_site_update'] = 'synchronisation';
$lang['remote_site_update_hint'] = 'lit le fichier listing.xml distant et met à jour la base de données'; $lang['remote_site_update_hint'] = 'lit le fichier listing.xml distant et met à jour la base de données';
$lang['remote_sites'] = 'Sites distant'; $lang['remote_sites'] = 'Sites distants';
$lang['remove keyword'] = 'supprimer mot-clef'; $lang['remove keyword'] = 'supprimer mot-clef';
$lang['selection'] = 'sélection'; $lang['selection'] = 'sélection';
$lang['set to'] = 'changer en'; $lang['set to'] = 'changer en';

View file

@ -50,7 +50,7 @@ $lang['Connection'] = 'Connexion';
$lang['Connection settings'] = 'Paramètres de connexion'; $lang['Connection settings'] = 'Paramètres de connexion';
$lang['Contact webmaster'] = 'Contacter le webmestre'; $lang['Contact webmaster'] = 'Contacter le webmestre';
$lang['Create a new account'] = 'Créer un nouveau compte'; $lang['Create a new account'] = 'Créer un nouveau compte';
$lang['Created on'] = 'Créer le'; $lang['Created on'] = 'Créée le';
$lang['Current password is wrong'] = 'Erreur sur le mot de passe actuel'; $lang['Current password is wrong'] = 'Erreur sur le mot de passe actuel';
$lang['Dimensions'] = 'Dimensions'; $lang['Dimensions'] = 'Dimensions';
$lang['Display'] = 'Affichage'; $lang['Display'] = 'Affichage';
@ -85,7 +85,7 @@ $lang['PhpWebGallery Help'] = 'Aide de PhpWebGallery';
$lang['Profile'] = 'Profil'; $lang['Profile'] = 'Profil';
$lang['RSS feed'] = 'flux RSS'; $lang['RSS feed'] = 'flux RSS';
$lang['Register'] = 'S\'enregistrer'; $lang['Register'] = 'S\'enregistrer';
$lang['Registered on'] = 'Enregistré le'; $lang['Registered on'] = 'Enregistrée le';
$lang['Registration'] = 'Enregistrement'; $lang['Registration'] = 'Enregistrement';
$lang['Reset'] = 'Annuler'; $lang['Reset'] = 'Annuler';
$lang['Retrieve password'] = 'Récupérer un mot de passe'; $lang['Retrieve password'] = 'Récupérer un mot de passe';
@ -153,7 +153,7 @@ $lang['favorite_cat'] = 'Mes favorites';
$lang['favorite_cat_hint'] = 'afficher mes images favorites'; $lang['favorite_cat_hint'] = 'afficher mes images favorites';
$lang['favorites'] = 'Favoris'; $lang['favorites'] = 'Favoris';
$lang['first_page'] = 'Premier'; $lang['first_page'] = 'Premier';
$lang['gallery_locked_message'] = 'La galerie est vérouillée pour cause de maintenance. Revenir plus tard.'; $lang['gallery_locked_message'] = 'La galerie est verrouillée pour cause de maintenance. Revenir plus tard.';
$lang['generation_time'] = 'Page fabriquée en'; $lang['generation_time'] = 'Page fabriquée en';
$lang['guest'] = 'visiteur'; $lang['guest'] = 'visiteur';
$lang['hello'] = 'Bonjour'; $lang['hello'] = 'Bonjour';

View file

@ -6,7 +6,7 @@
<dt>Autorisation à l'ajout</dt> <dt>Autorisation à l'ajout</dt>
<dd>Rendre les catégories autorisée à l'ajout par les visiteurs. Cette <dd>Rendre les catégories autorisées à l'ajout par les visiteurs. Cette
option n'est pas disponible pour les catégories virtuelles et option n'est pas disponible pour les catégories virtuelles et
distantes.</dd> distantes.</dd>
@ -14,23 +14,23 @@ distantes.</dd>
<dd>Autoriser les utilisateurs à commenter les images des catégories <dd>Autoriser les utilisateurs à commenter les images des catégories
sélectionnées. Par héritage, une image est commentable si elle appartient à sélectionnées. Par héritage, une image est commentable si elle appartient à
au moins une catégories commentable.</dd> au moins une catégorie commentable.</dd>
<dt>Vérouiller</dt> <dt>Vérouiller</dt>
<dd>Les catégories sélectionnées deviennent temporairement inactive pour <dd>Les catégories sélectionnées deviennent temporairement inactives pour
maintenance. Lorsqu'une catégorie est vérouillée, toutes les catégories maintenance. Lorsqu'une catégorie est verrouillée, toutes les catégories
enfant sont vérouillées. Lorsqu'une catégorie est dévérouillée, toutes les enfant sont verrouillées. Lorsqu'une catégorie est déverrouillée, toutes les
catégories parente sont dévérouillées.</dd> catégories parentes sont déverrouillées.</dd>
<dt>Publique / Privée</dt> <dt>Publique / Privée</dt>
<dd>Gestion du status des catégories. Les permissions ne sont possibles <dd>Gestion du status des catégories. Les permissions ne sont possibles
que pour les catégories privées. Une fois qu'une catégorie est privée, vous que pour les catégories privées. Une fois qu'une catégorie est privée, vous
devez explicitement autoriser les utilisateur ou les groupes à y devez explicitement autoriser les utilisateurs ou les groupes à y
accéder. Lorsqu'une catégorie devient privée, toutes les catégories enfant accéder. Lorsqu'une catégorie devient privée, toutes les catégories enfant
deviennent privées. Lorsqu'une catégorie devient publique, toutes les deviennent privées. Lorsqu'une catégorie devient publique, toutes les
catégories parentes deviennent publique.</dd> catégories parentes deviennent publiques.</dd>
<dt>Représentant</dt> <dt>Représentant</dt>

View file

@ -31,11 +31,23 @@ define('PHPWG_ROOT_PATH','./');
include_once(PHPWG_ROOT_PATH.'include/common.inc.php'); include_once(PHPWG_ROOT_PATH.'include/common.inc.php');
//-------------------------------------------------- access authorization check //-------------------------------------------------- access authorization check
check_cat_id( $_GET['cat'] ); check_cat_id( $_GET['cat'] );
if (!isset($page['cat']))
{
die($lang['access_forbiden']);
}
check_login_authorization(); check_login_authorization();
if ( isset( $page['cat'] ) and is_numeric( $page['cat'] ) ) if ( isset( $page['cat'] ) and is_numeric( $page['cat'] ) )
{ {
check_restrictions( $page['cat'] ); check_restrictions( $page['cat'] );
} }
if (!is_numeric($_GET['image_id']))
{
die('Hacking attempt on "image_id" GET parameter');
}
//---------------------------------------- incrementation of the number of hits //---------------------------------------- incrementation of the number of hits
$query = ' $query = '
UPDATE '.IMAGES_TABLE.' UPDATE '.IMAGES_TABLE.'
@ -392,16 +404,21 @@ if ( isset( $_POST['content'] ) && !empty($_POST['content']) )
mass_inserts(COMMENTS_TABLE, $fields, array($data)); mass_inserts(COMMENTS_TABLE, $fields, array($data));
// information message // information message
$message = $lang['comment_added']; $message =
$lang['comment_added']
if (!$conf['comments_validation'] or $user['status'] == 'admin') .(
($conf['comments_validation'] and $user['status'] != 'admin')
?
'<br />'.$lang['comment_to_validate']
:
''
)
;
if ( $conf['comments_validation'] and $user['status'] != 'admin' ) $template->assign_block_vars(
{ 'information',
$message.= '<br />'.$lang['comment_to_validate']; array('INFORMATION'=>$message)
} );
$template->assign_block_vars('information',
array('INFORMATION'=>$message));
} }
else else
{ {

View file

@ -36,14 +36,15 @@ if (isset($_POST['submit']))
{ {
array_push($errors, $lang['reg_err_pass']); array_push($errors, $lang['reg_err_pass']);
} }
else
$errors = {
array_merge( $errors =
$errors, register_user(
register_user($_POST['login'], $_POST['login'],
$_POST['password'], $_POST['password'],
$_POST['mail_address']) $_POST['mail_address']
); );
}
if (count($errors) == 0) if (count($errors) == 0)
{ {

View file

@ -2,7 +2,7 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li> <li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" class="button" alt="{lang:home}"/></a></li>
</ul> </ul>
<h2>{lang:About}</h2> <h2>{lang:About}</h2>
</div> </div>

View file

@ -6,6 +6,7 @@
<dd> <dd>
<ul> <ul>
<li><a href="{U_RETURN}">{lang:home}</a></li> <li><a href="{U_RETURN}">{lang:home}</a></li>
<li><a href="{U_ADMIN}" >{lang:admin}</a></li>
</ul> </ul>
</dd> </dd>
@ -76,7 +77,7 @@
<!-- END errors --> <!-- END errors -->
<!-- BEGIN infos --> <!-- BEGIN infos -->
<div id="infos"> <div class="infos">
<ul> <ul>
<!-- BEGIN info --> <!-- BEGIN info -->
<li>{infos.info.INFO}</li> <li>{infos.info.INFO}</li>

View file

@ -11,17 +11,17 @@
<li class="categoryLi"> <!-- category {category.ID} --> <li class="categoryLi"> <!-- category {category.ID} -->
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{category.U_JUMPTO}" title="{lang:jump to category}"><img src="./template/yoga/theme/category_jump-to.png" alt="{lang:jump to}" /></a></li> <li><a href="{category.U_JUMPTO}" title="{lang:jump to category}"><img src="./template/yoga/theme/category_jump-to.png" class="button" alt="{lang:jump to}" /></a></li>
<li><a href="{category.U_EDIT}" title="{lang:edit category informations}"><img src="./template/yoga/theme/category_edit.png" alt="{lang:edit}"/></a></li> <li><a href="{category.U_EDIT}" title="{lang:edit category informations}"><img src="./template/yoga/theme/category_edit.png" class="button" alt="{lang:edit}"/></a></li>
<!-- BEGIN elements --> <!-- BEGIN elements -->
<li><a href="{category.elements.URL}" title="{lang:manage category elements}"><img src="./template/yoga/theme/category_elements.png" alt="{lang:elements}" /></a></li> <li><a href="{category.elements.URL}" title="{lang:manage category elements}"><img src="./template/yoga/theme/category_elements.png" class="button" alt="{lang:elements}" /></a></li>
<!-- END elements --> <!-- END elements -->
<li><a href="{category.U_CHILDREN}" title="{lang:manage sub-categories}"><img src="./template/yoga/theme/category_children.png" alt="{lang:sub-categories}" /></a></li> <li><a href="{category.U_CHILDREN}" title="{lang:manage sub-categories}"><img src="./template/yoga/theme/category_children.png" class="button" alt="{lang:sub-categories}" /></a></li>
<!-- BEGIN permissions --> <!-- BEGIN permissions -->
<li><a href="{category.permissions.URL}" title="{lang:edit category permissions}" ><img src="./template/yoga/theme/category_permissions.png" alt="{lang:permissions}" /></a></li> <li><a href="{category.permissions.URL}" title="{lang:edit category permissions}" ><img src="./template/yoga/theme/category_permissions.png" class="button" alt="{lang:permissions}" /></a></li>
<!-- END permissions --> <!-- END permissions -->
<!-- BEGIN delete --> <!-- BEGIN delete -->
<li><a href="{category.delete.URL}" title="{lang:delete category}"><img src="./template/yoga/theme/category_delete.png" alt="{lang:delete}" /></a></li> <li><a href="{category.delete.URL}" title="{lang:delete category}"><img src="./template/yoga/theme/category_delete.png" class="button" alt="{lang:delete}" /></a></li>
<!-- END delete --> <!-- END delete -->
</ul> </ul>

View file

@ -1,7 +1,7 @@
<!-- $Id$ --> <!-- $Id$ -->
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
</ul> </ul>
<h2>{lang:title_edit_cat}</h2> <h2>{lang:title_edit_cat}</h2>
</div> </div>
@ -9,16 +9,16 @@
<h3>{CATEGORIES_NAV}</h3> <h3>{CATEGORIES_NAV}</h3>
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_JUMPTO}" title="{lang:jump to category}"><img src="./template/yoga/theme/category_jump-to.png" alt="{lang:jump to}" /></a></li> <li><a href="{U_JUMPTO}" title="{lang:jump to category}"><img src="./template/yoga/theme/category_jump-to.png" class="button" alt="{lang:jump to}" /></a></li>
<!-- BEGIN elements --> <!-- BEGIN elements -->
<li><a href="{elements.URL}" title="{lang:manage category elements}"><img src="./template/yoga/theme/category_elements.png" alt="{lang:elements}" /></a></li> <li><a href="{elements.URL}" title="{lang:manage category elements}"><img src="./template/yoga/theme/category_elements.png" class="button" alt="{lang:elements}" /></a></li>
<!-- END elements --> <!-- END elements -->
<li><a href="{U_CHILDREN}" title="{lang:manage sub-categories}"><img src="./template/yoga/theme/category_children.png" alt="{lang:sub-categories}" /></a></li> <li><a href="{U_CHILDREN}" title="{lang:manage sub-categories}"><img src="./template/yoga/theme/category_children.png" class="button" alt="{lang:sub-categories}" /></a></li>
<!-- BEGIN permissions --> <!-- BEGIN permissions -->
<li><a href="{permissions.URL}" title="{lang:edit category permissions}" ><img src="./template/yoga/theme/category_permissions.png" alt="{lang:permissions}" /></a></li> <li><a href="{permissions.URL}" title="{lang:edit category permissions}" ><img src="./template/yoga/theme/category_permissions.png" class="button" alt="{lang:permissions}" /></a></li>
<!-- END permissions --> <!-- END permissions -->
<!-- BEGIN delete --> <!-- BEGIN delete -->
<li><a href="{delete.URL}" title="{lang:delete category}"><img src="./template/yoga/theme/category_delete.png" alt="{lang:delete}" /></a></li> <li><a href="{delete.URL}" title="{lang:delete category}"><img src="./template/yoga/theme/category_delete.png" class="button" alt="{lang:delete}" /></a></li>
<!-- END delete --> <!-- END delete -->
</ul> </ul>
@ -118,7 +118,7 @@
<!-- END picture --> <!-- END picture -->
<!-- BEGIN random --> <!-- BEGIN random -->
<img src="./template/yoga/theme/category_representant_random.png" alt="{lang:Random picture}" class="miniature" /> <img src="./template/yoga/theme/category_representant_random.png" class="button" alt="{lang:Random picture}" class="miniature" />
<!-- END random --> <!-- END random -->
</td> </td>
<td> <td>

View file

@ -1,7 +1,7 @@
<!-- $Id$ --> <!-- $Id$ -->
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
</ul> </ul>
<h2>{lang:Move categories}</h2> <h2>{lang:Move categories}</h2>
</div> </div>

View file

@ -1,7 +1,7 @@
<!-- $Id$ --> <!-- $Id$ -->
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
</ul> </ul>
<h2>{lang:title_cat_options}</h2> <h2>{lang:title_cat_options}</h2>
</div> </div>

View file

@ -1,6 +1,6 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
</ul> </ul>
<h2>{lang:Manage permissions for a category}</h2> <h2>{lang:Manage permissions for a category}</h2>
</div> </div>

View file

@ -1,7 +1,7 @@
<!-- $Id$ --> <!-- $Id$ -->
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
</ul> </ul>
<h2>{lang:title_configuration}</h2> <h2>{lang:title_configuration}</h2>
</div> </div>

View file

@ -20,8 +20,8 @@
<td>{group.NAME}</td> <td>{group.NAME}</td>
<td><a href="{group.U_MEMBERS}">{group.MEMBERS}</a></td> <td><a href="{group.U_MEMBERS}">{group.MEMBERS}</a></td>
<td style="text-align:center;"> <td style="text-align:center;">
<a href="{group.U_PERM}"><img src="./template/yoga/theme/permissions.png" style="border:none" alt="permissions" title="{lang:permissions}" /></a> <a href="{group.U_PERM}"><img src="./template/yoga/theme/permissions.png" class="button" style="border:none" alt="permissions" title="{lang:permissions}" /></a>
<a href="{group.U_DELETE}"><img src="./template/yoga/theme/delete.png" style="border:none" alt="delete" title="{lang:delete}" /></a> <a href="{group.U_DELETE}"><img src="./template/yoga/theme/delete.png" class="button" style="border:none" alt="delete" title="{lang:delete}" /></a>
</td> </td>
</tr> </tr>
<!-- END group --> <!-- END group -->

View file

@ -1,7 +1,7 @@
<!-- $Id$ --> <!-- $Id$ -->
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
</ul> </ul>
<h2>{lang:Maintenance}</h2> <h2>{lang:Maintenance}</h2>
</div> </div>

View file

@ -5,9 +5,9 @@
<ul class="categoryActions"> <ul class="categoryActions">
<!-- BEGIN jumpto --> <!-- BEGIN jumpto -->
<li><a href="{jumpto.URL}" title="{lang:jump to image}"><img src="./template/yoga/theme/category_jump-to.png" alt="{lang:jump to}" /></a></li> <li><a href="{jumpto.URL}" title="{lang:jump to image}"><img src="./template/yoga/theme/category_jump-to.png" class="button" alt="{lang:jump to}" /></a></li>
<!-- END jumpto --> <!-- END jumpto -->
<li><a href="{U_SYNC}" title="{lang:synchronize metadata}"><img src="./template/yoga/theme/sync_metadata.png" alt="{lang:synchronize}" /></a></li> <li><a href="{U_SYNC}" title="{lang:synchronize metadata}"><img src="./template/yoga/theme/sync_metadata.png" class="button" alt="{lang:synchronize}" /></a></li>
</ul> </ul>
<form action="{F_ACTION}" method="post" id="properties"> <form action="{F_ACTION}" method="post" id="properties">

View file

@ -1,7 +1,7 @@
<!-- $Id$ --> <!-- $Id$ -->
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
</ul> </ul>
<h2>{lang:remote_sites}</h2> <h2>{lang:remote_sites}</h2>
</div> </div>
@ -68,14 +68,16 @@
</p> </p>
</form> </form>
<!-- BEGIN sites -->
<table> <table>
<!-- BEGIN site --> <!-- BEGIN site -->
<tr> <tr>
<td>{site.NAME}</td> <td>{sites.site.NAME}</td>
<td>[<a href="{site.U_GENERATE}" title="{L_REMOTE_SITE_GENERATE_HINT}">{L_REMOTE_SITE_GENERATE}</a>]</td> <td>[<a href="{sites.site.U_GENERATE}" title="{L_REMOTE_SITE_GENERATE_HINT}">{L_REMOTE_SITE_GENERATE}</a>]</td>
<td>[<a href="{site.U_UPDATE}" title="{L_REMOTE_SITE_UPDATE_HINT}">{L_REMOTE_SITE_UPDATE}</a>]</td> <td>[<a href="{sites.site.U_UPDATE}" title="{L_REMOTE_SITE_UPDATE_HINT}">{L_REMOTE_SITE_UPDATE}</a>]</td>
<td>[<a href="{site.U_CLEAN}" title="{L_REMOTE_SITE_CLEAN_HINT}">{L_REMOTE_SITE_CLEAN}</a>]</td> <td>[<a href="{sites.site.U_CLEAN}" title="{L_REMOTE_SITE_CLEAN_HINT}">{L_REMOTE_SITE_CLEAN}</a>]</td>
<td>[<a href="{site.U_DELETE}" title="{L_REMOTE_SITE_DELETE_HINT}">{L_REMOTE_SITE_DELETE}</a>]</td> <td>[<a href="{sites.site.U_DELETE}" title="{L_REMOTE_SITE_DELETE_HINT}">{L_REMOTE_SITE_DELETE}</a>]</td>
</tr> </tr>
<!-- END site --> <!-- END site -->
</table> </table>
<!-- END sites -->

View file

@ -1,7 +1,7 @@
<!-- $Id$ --> <!-- $Id$ -->
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
</ul> </ul>
<h2>{lang:title_thumbnails}</h2> <h2>{lang:title_thumbnails}</h2>
</div> </div>

View file

@ -2,7 +2,7 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
</ul> </ul>
<h2>{lang:title_update}</h2> <h2>{lang:title_update}</h2>
</div> </div>

View file

@ -1,6 +1,6 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
</ul> </ul>
<h2>{lang:title_liste_users}</h2> <h2>{lang:title_liste_users}</h2>
</div> </div>
@ -90,7 +90,7 @@
<td>{user.EMAIL}</td> <td>{user.EMAIL}</td>
<td>{user.GROUPS}</td> <td>{user.GROUPS}</td>
<td style="text-align:center;"> <td style="text-align:center;">
<a href="{user.U_PERM}"><img src="./template/yoga/theme/permissions.png" style="border:none" alt="{L_PERMISSIONS}" title="{L_PERMISSIONS}" /></a> <a href="{user.U_PERM}"><img src="./template/yoga/theme/permissions.png" class="button" style="border:none" alt="{L_PERMISSIONS}" title="{L_PERMISSIONS}" /></a>
</td> </td>
</tr> </tr>
<!-- END user --> <!-- END user -->

View file

@ -90,7 +90,11 @@
<p> <p>
<input type="submit" name="login" value="{lang:submit}"> <input type="submit" name="login" value="{lang:submit}">
</p> </p>
<ul class="actions">
<li><a href="{U_LOST_PASSWORD}" title="{lang:Forgot your password?}"><img src="template/yoga/theme/lost_password.png" class="button" alt="{lang:Forgot your password?}"></a></li>
<li><a href="{U_REGISTER}" title="{lang:Create a new account}"><img src="template/yoga/theme/register.png" class="button" alt="{lang:register}"/></a></li>
</ul>
</fieldset> </fieldset>
</form> </form>
<!-- END quickconnect --> <!-- END quickconnect -->
@ -104,10 +108,10 @@
<ul class="categoryActions"> <ul class="categoryActions">
<li>&nbsp;</li> <li>&nbsp;</li>
<!-- BEGIN caddie --> <!-- BEGIN caddie -->
<li><a href="{caddie.URL}" title="{lang:add to caddie}"><img src="./template/yoga/theme/caddie_add.png" alt="{lang:caddie}"/></a></li> <li><a href="{caddie.URL}" title="{lang:add to caddie}"><img src="./template/yoga/theme/caddie_add.png" class="button" alt="{lang:caddie}"/></a></li>
<!-- END caddie --> <!-- END caddie -->
<!-- BEGIN edit --> <!-- BEGIN edit -->
<li><a href="{edit.URL}" title="{lang:edit category informations}"><img src="./template/yoga/theme/category_edit.png" alt="{lang:edit}"/></a></li> <li><a href="{edit.URL}" title="{lang:edit category informations}"><img src="./template/yoga/theme/category_edit.png" class="button" alt="{lang:edit}"/></a></li>
<!-- END edit --> <!-- END edit -->
</ul> </ul>
<h2>{TITLE}</h2> <h2>{TITLE}</h2>
@ -122,14 +126,15 @@
<!-- BEGIN line --> <!-- BEGIN line -->
<!-- BEGIN thumbnail --> <!-- BEGIN thumbnail -->
<li> <li>
<span> <span class="wrap1">
<span><span class="wrap"> <span class="wrap2">
<a href="{thumbnails.line.thumbnail.U_IMG_LINK}"> <a href="{thumbnails.line.thumbnail.U_IMG_LINK}">
<img class="thumbnail" src="{thumbnails.line.thumbnail.IMAGE}" <img class="thumbnail" src="{thumbnails.line.thumbnail.IMAGE}"
alt="{thumbnails.line.thumbnail.IMAGE_ALT}" alt="{thumbnails.line.thumbnail.IMAGE_ALT}"
title="{thumbnails.line.thumbnail.IMAGE_TITLE}"> title="{thumbnails.line.thumbnail.IMAGE_TITLE}">
</a> </a>
</span></span> </span>
<span class="thumbLegend">
<!-- BEGIN element_name --> <!-- BEGIN element_name -->
{thumbnails.line.thumbnail.element_name.NAME} {thumbnails.line.thumbnail.element_name.NAME}
<!-- END element_name --> <!-- END element_name -->
@ -140,7 +145,8 @@
<!-- BEGIN nb_comments --> <!-- BEGIN nb_comments -->
<br />{thumbnails.line.thumbnail.nb_comments.NB_COMMENTS} {L_COMMENT} <br />{thumbnails.line.thumbnail.nb_comments.NB_COMMENTS} {L_COMMENT}
<!-- END nb_comments --> <!-- END nb_comments -->
</span> </span>
</span>
</li> </li>
<!-- END thumbnail --> <!-- END thumbnail -->
<!-- END line --> <!-- END line -->

View file

@ -3,7 +3,7 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li> <li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" class="button" alt="{lang:home}"/></a></li>
</ul> </ul>
<h2>{lang:User comments}</h2> <h2>{lang:User comments}</h2>
</div> </div>

View file

@ -29,8 +29,28 @@ BODY#theNotificationPage #content
margin-bottom: 1ex; margin-bottom: 1ex;
} }
/* Thumbnails customization */
#content UL.thumbnails SPAN, #content UL.thumbnails SPAN.wrap2 A {
width: 140px; /* max thumbnail width + 2px */
}
#content UL.thumbnails SPAN.wrap2 {
height: 140px; /* max thumbnail height + 2px */
}
#content UL.thumbnails SPAN.wrap2 {
border: 1px solid #aaaaaa; /* thumbnails border color and style */
-moz-border-radius: 4px; /* round corners with Geko */
border-radius: 4px 4px; /* round corners with CSS3 compliant browsers */
}
#content UL.thumbnails SPAN.wrap2:hover {
border-color: yellow; /* thumbnails border color when mouse cursor is over it */
}
#content UL.thumbnails SPAN.thumbLegend {
font-size: 80%; /* font size */
height: 3em; /* max legend height (don't set auto to be Geko friendly)*/
display: block; /* display: hide if you don't want legend */
overflow: hidden; /* oversized legend is clipped */
}
/* Thumbnail "elastic" layout */ /* Thumbnail "elastic" layout */
#content UL.thumbnails { #content UL.thumbnails {
margin: 0; margin: 0;
padding: 0; padding: 0;
@ -39,59 +59,42 @@ BODY#theNotificationPage #content
} }
#content UL.thumbnails LI { display: inline } #content UL.thumbnails LI { display: inline }
#content UL.thumbnails SPAN { #content UL.thumbnails SPAN.wrap1 {
margin: 0 5px 5px 5px; margin: 0 5px 5px 5px;
/*width: 130px; 128px + 2 * 1px if the SPAN has a border of 1px */
width: 128px; /* we can use the same size as well */
display: table-cell; display: inline-table; display: inline-block; display: table-cell; display: inline-table; display: inline-block;
vertical-align: top; /* OK with Opera and IE6 not Geko */ vertical-align: top; /* OK with Opera and IE6 not Geko */
text-align: center; /* to center the thumbnail and legend in Geko/Opera */ text-align: center; /* to center the thumbnail and legend in Geko/Opera */
font-size: 80%;
} }
#content UL.thumbnails SPAN SPAN { #content UL.thumbnails SPAN.wrap2 {
margin: 0; /* important reset the margins */ margin: 0; /* important reset the margins */
border: 1px solid #aaaaaa;
width: 128px; /* fixed size again */
height: 128px; /* fixed size again */
display: table-cell; /* block prevents vertical-align here */ display: table-cell; /* block prevents vertical-align here */
vertical-align: middle; /* Ok with Opera and Geko not IE6 */ vertical-align: middle; /* Ok with Opera and Geko not IE6 */
} }
#content UL.thumbnails SPAN.wrap { #content UL.thumbnails SPAN.wrap2 A {
border: none; display: block;
height: auto; /* important for vertical centering */ border-bottom: none;
display: block; /* important */
overflow: hidden; /* everridden by specific IE6 rule below */
margin-top: auto; /* to make vertical-align work in Geko and Opera */
margin-bottom: auto; /* to make vertical-align work in Geko and Opera */
} }
#content UL.thumbnails IMG { #content UL.thumbnails IMG {
margin-bottom: -4px; /* why ??? something wrong with Geko and Opera ignored by IE6*/ margin-bottom: -4px; /* why ??? something wrong with Geko and Opera ignored by IE6*/
} }
/* fix Geko's lack of good willing in vertical-align: top */
/* Too dirty : have to find something better */
/*#content UL.thumbnails>LI>SPAN{*/
/* height: 170px;*/ /* unfortunately min-height doesn't work here */
/*}*/
/* fix IE with another layout */ /* fix IE with another layout */
* html #content UL.thumbnails SPAN { * html #content UL.thumbnails SPAN.wrap2 {
overflow: hidden; /* keep it there: not needed by Geko, buggy with Opera */ display: block;
}
* html #content UL.thumbnails SPAN SPAN {
position: relative; position: relative;
text-align: left;
} }
* html #content UL.thumbnails SPAN.wrap { * html #content UL.thumbnails SPAN.wrap2 A {
overflow: visible; overflow: visible;
position: absolute; position: absolute;
top: 50%; top: 50%;
left: 0px; /* same as "#content UL.thumbnails SPAN SPAN { padding:" if any*/ text-align: center;
} }
* html #content UL.thumbnails IMG.thumbnail { * html #content UL.thumbnails IMG.thumbnail {
position: relative; position: relative;
top: -50%; top: -50%;
} }
#content .navigationBar, #content .additional_info { #content .navigationBar, #content .additional_info {
margin: 10px 0; margin: 10px 0;
text-align: center; text-align: center;
@ -142,20 +145,22 @@ ul.categoryActions {
/* User comments */ /* User comments */
#content DIV#comments {
padding-left: 5px;
padding-right: 5px;
-moz-box-sizing: padding-box;
}
#content DIV.comment { #content DIV.comment {
margin: 5px; margin: 0 0 0.5em 0;
border: 1px solid gray; padding: 0;
min-height: 150px; /* maximum thumbnail height */ overflow: hidden; /* these 2 lines ensure the floating child is kept in the DIV */
width: 100%; /* don't ask why. It's a very usefull trick */
} }
#content DIV.comment > A.illustration { #content DIV.comment A.illustration {
display: block; display: block;
position: absolute; float: left;
margin: 5px; margin: 0.5em 0 0 0.5em;
}
#content DIV.comment > A.illustration IMG {
border: 1px solid gray;
} }
#content DIV.comment P.commentHeader { #content DIV.comment P.commentHeader {
@ -168,18 +173,11 @@ ul.categoryActions {
margin: 0.2em; margin: 0.2em;
} }
#content DIV.comment > UL.actions > LI {
display: inline;
}
#content DIV.comment BLOCKQUOTE { #content DIV.comment BLOCKQUOTE {
margin: 1em 1em 1em 150px; /* margin-left corresponds to maximum thumbnail width */ margin: 1em 0.5em 0.5em 150px; /* margin-left corresponds to maximum thumbnail width + ~10px */
border: 1px solid #d3d3d3;
border-left: 2px solid gray;
padding: 0.5em; padding: 0.5em;
} }
/* should be in admin.css ? CSS properties also used in popuphelp */ /* should be in admin.css ? CSS properties also used in popuphelp */
SPAN.pwgScreen { SPAN.pwgScreen {

View file

@ -98,10 +98,19 @@ A.navThumb, A.navThumb:hover {
background:#eeeeee; background:#eeeeee;
} }
/* User comments */
#content DIV.comment {
border: 1px solid gray;
}
#comments BLOCKQUOTE { #content DIV.comment A.illustration IMG {
background: #eeeeee; border: 1px solid gray;
}
#comments DIV.comment BLOCKQUOTE {
border: 1px solid #d3d3d3;
border-left: 2px solid #696969; border-left: 2px solid #696969;
background-color: #eee;
} }
/* Tables & forms */ /* Tables & forms */
@ -114,7 +123,7 @@ input, select, textarea {
border: 1px solid gray; border: 1px solid gray;
} }
#errors { /* Errors display */ .errors { /* Errors display */
color: red; color: red;
background-color: #ffe1e1; background-color: #ffe1e1;
font-weight: bold; font-weight: bold;
@ -127,7 +136,7 @@ input, select, textarea {
padding: 10px 50px 10px 10px; padding: 10px 50px 10px 10px;
} }
#errors ul li .errors ul li
{ {
font-weight: normal; font-weight: normal;
} }
@ -135,7 +144,7 @@ input, select, textarea {
/** /**
* Informations box in administration * Informations box in administration
*/ */
#infos { .infos {
text-align: left; text-align: left;
background-color: palegreen; background-color: palegreen;
background-image: url(admin/images/infos.png); background-image: url(admin/images/infos.png);

View file

@ -182,22 +182,6 @@ FORM.properties LABEL {
padding: 0 0.5em 0 0; padding: 0 0.5em 0 0;
} }
FORM#quickconnect {
margin: 0;
}
FORM#quickconnect FIELDSET {
margin: 5px;
}
FORM#quickconnect P {
text-align: center;
}
FORM#quickconnect P INPUT {
display: inline;
}
FORM.properties LABEL.mandatory { FORM.properties LABEL.mandatory {
font-weight: bold; font-weight: bold;
} }
@ -258,4 +242,16 @@ FORM#addComment FIELDSET LABEL {
FORM#addComment FIELDSET INPUT[type="hidden"] { FORM#addComment FIELDSET INPUT[type="hidden"] {
display: none; display: none;
} }
/* button tools */
UL.actions {
text-indent: 0;
list-style: none;
}
UL.actions LI {
display: inline;
}
UL.actions A {
border: none;
}

View file

@ -17,5 +17,8 @@
</div> <!-- copyright --> </div> <!-- copyright -->
</div> <!-- the_page --> </div> <!-- the_page -->
<!-- BEGIN debug -->
{debug.QUERIES_LIST}
<!-- END debug -->
</body> </body>
</html> </html>

View file

@ -20,7 +20,7 @@ the "text/nonsense" prevents geko based browsers to load it -->
<!-- BEGIN refresh --> <!-- BEGIN refresh -->
<meta http-equiv="refresh" content="{REFRESH_TIME};url={U_REFRESH}"> <meta http-equiv="refresh" content="{REFRESH_TIME};url={U_REFRESH}">
<!-- END refresh --> <!-- END refresh -->
<title>{PAGE_TITLE}</title> <title>{GALLERY_TITLE}:{PAGE_TITLE}</title>
<script type="text/javascript" src="include/scripts.js"></script> <script type="text/javascript" src="include/scripts.js"></script>
<!--[if gte IE 5.5000]> <!--[if gte IE 5.5000]>
<script type="text/javascript" src="include/pngfix.js"></script> <script type="text/javascript" src="include/pngfix.js"></script>

View file

@ -3,9 +3,9 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_LOST_PASSWORD}" title="{lang:Forgot your password?}"><img src="template/yoga/theme/lost_password.png" alt="{lang:Forgot your password?}"></a></li> <li><a href="{U_LOST_PASSWORD}" title="{lang:Forgot your password?}"><img src="template/yoga/theme/lost_password.png" class="button" alt="{lang:Forgot your password?}"></a></li>
<li><a href="{U_REGISTER}" title="{lang:Create a new account}"><img src="./template/yoga/theme/register.png" alt="{lang:register}"/></a></li> <li><a href="{U_REGISTER}" title="{lang:Create a new account}"><img src="./template/yoga/theme/register.png" class="button" alt="{lang:register}"/></a></li>
<li><a href="{U_HOME}" title="{lang:Go through the gallery as a visitor}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li> <li><a href="{U_HOME}" title="{lang:Go through the gallery as a visitor}"><img src="./template/yoga/theme/home.png" class="button" alt="{lang:home}"/></a></li>
</ul> </ul>
<h2>{lang:Identification}</h2> <h2>{lang:Identification}</h2>
</div> </div>
@ -48,8 +48,8 @@
</form> </form>
<p> <p>
<a href="{U_REGISTER}"><img src="template/yoga/theme/register.png" alt=""> {L_REGISTER}</a> <a href="{U_REGISTER}"><img src="template/yoga/theme/register.png" class="button" alt=""> {L_REGISTER}</a>
<a href="{U_LOST_PASSWORD}"><img src="template/yoga/theme/lost_password.png" alt=""> {lang:Forgot your password?}</a> <a href="{U_LOST_PASSWORD}"><img src="template/yoga/theme/lost_password.png" class="button" alt=""> {lang:Forgot your password?}</a>
</p> </p>
</div> <!-- content --> </div> <!-- content -->

View file

@ -65,20 +65,23 @@ de l'image...
margin: 0 auto; margin: 0 auto;
} }
.navThumb.prev { .navThumb {
margin-top: 2px;
}
#thumbPrev {
float: left; float: left;
} }
.navThumb.next { #thumbNext {
float: right; float: right;
} }
.thumbLink.prev { #linkPrev {
margin-right: 10px; margin-right: 10px;
margin-left: 5px; margin-left: 5px;
} }
.thumbLink.next { #linkNext {
margin-right: 5px; margin-right: 5px;
margin-left: 10px; margin-left: 10px;
} }

View file

@ -70,3 +70,39 @@ BODY#theAdminPage #menubar {
#menubar INPUT { #menubar INPUT {
text-indent: 2px; text-indent: 2px;
} }
/* quickconnect form */
FORM#quickconnect {
margin: 0;
padding: 5px;
}
FORM#quickconnect FIELDSET {
margin: 0;
padding: 0 0 0.5em 0;
overflow: hidden; /* Correct float issue with Opera 7.5 */
width: 100%; /* // */
}
FORM#quickconnect P {
float: left;
}
FORM#quickconnect P INPUT {
margin: 0;
}
FORM#quickconnect UL.actions {
display: inline;
float: right;
padding: 0;
text-align: right; /* Opera 7.5 */
width: 40%; /* Opera 7.5 cannot find why width:auto fails :-( */
}
FORM#quickconnect UL.actions,
FORM#quickconnect P,
FORM#quickconnect LABEL {
margin: 0 0.5em 0 0.5em;
}

View file

@ -2,7 +2,7 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li> <li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" class="button" alt="{lang:home}"/></a></li>
</ul> </ul>
<h2>{lang:Notification}</h2> <h2>{lang:Notification}</h2>
</div> </div>

View file

@ -3,7 +3,7 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HOME}" title="{lang:Go through the gallery as a visitor}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li> <li><a href="{U_HOME}" title="{lang:Go through the gallery as a visitor}"><img src="./template/yoga/theme/home.png" class="button" alt="{lang:home}"/></a></li>
</ul> </ul>
<h2>{lang:Password forgotten}</h2> <h2>{lang:Password forgotten}</h2>
</div> </div>

View file

@ -14,32 +14,32 @@
<div id="imageToolBar"> <div id="imageToolBar">
<div class="randomButtons"> <div class="randomButtons">
<a href="{U_SLIDESHOW}" title="{L_SLIDESHOW}"><img src="template/yoga/theme/slideshow.png" alt="{L_SLIDESHOW}"></a> <a href="{U_SLIDESHOW}" title="{L_SLIDESHOW}"><img src="template/yoga/theme/slideshow.png" class="button" alt="{L_SLIDESHOW}"></a>
<a href="{U_METADATA}" title="{L_PICTURE_METADATA}"><img src="template/yoga/theme/metadata.png" alt="{L_PICTURE_METADATA}"></a> <a href="{U_METADATA}" title="{L_PICTURE_METADATA}"><img src="template/yoga/theme/metadata.png" class="button" alt="{L_PICTURE_METADATA}"></a>
<!-- BEGIN representative --> <!-- BEGIN representative -->
<a href="{representative.URL}" title="{lang:set as category representative}"><img src="template/yoga/theme/representative.png" alt="{lang:representative}" /></a> <a href="{representative.URL}" title="{lang:set as category representative}"><img src="template/yoga/theme/representative.png" class="button" alt="{lang:representative}" /></a>
<!-- END representative --> <!-- END representative -->
<!-- BEGIN favorite --> <!-- BEGIN favorite -->
<a href="{favorite.U_FAVORITE}" title="{favorite.FAVORITE_HINT}"><img src="{favorite.FAVORITE_IMG}" alt="{favorite.FAVORITE_ALT}"></a> <a href="{favorite.U_FAVORITE}" title="{favorite.FAVORITE_HINT}"><img src="{favorite.FAVORITE_IMG}" class="button" alt="{favorite.FAVORITE_ALT}"></a>
<!-- END favorite --> <!-- END favorite -->
<!-- BEGIN download --> <!-- BEGIN download -->
<a href="{download.U_DOWNLOAD}" title="{L_DOWNLOAD}"><img src="template/yoga/theme/save.png" alt="{L_DOWNLOAD}"></a> <a href="{download.U_DOWNLOAD}" title="{L_DOWNLOAD}"><img src="template/yoga/theme/save.png" class="button" alt="{L_DOWNLOAD}"></a>
<!-- END download --> <!-- END download -->
<!-- BEGIN admin --> <!-- BEGIN admin -->
<a href="{U_ADMIN}" title="{L_ADMIN}"><img src="template/yoga/theme/preferences.png" alt="{L_ADMIN}"></a> <a href="{U_ADMIN}" title="{L_ADMIN}"><img src="template/yoga/theme/preferences.png" class="button" alt="{L_ADMIN}"></a>
<!-- END admin --> <!-- END admin -->
<!-- BEGIN caddie --> <!-- BEGIN caddie -->
<a href="{caddie.URL}" title="{lang:add to caddie}"><img src="./template/yoga/theme/caddie_add.png" alt="{lang:caddie}"/></a> <a href="{caddie.URL}" title="{lang:add to caddie}"><img src="./template/yoga/theme/caddie_add.png" class="button" alt="{lang:caddie}"/></a>
<!-- END caddie --> <!-- END caddie -->
</div> </div>
<div class="navButtons"> <div class="navButtons">
<!-- BEGIN next --> <!-- BEGIN next -->
<a class="navButton next" href="{next.U_IMG}" title="{L_NEXT_IMG}{next.TITLE_IMG}"><img src="template/yoga/theme/right.png" alt="next"></a> <a class="navButton next" href="{next.U_IMG}" title="{L_NEXT_IMG}{next.TITLE_IMG}"><img src="template/yoga/theme/right.png" class="button" alt="next"></a>
<!-- END next --> <!-- END next -->
<a class="navButton up" href="{U_UP}" title="{L_UP_HINT}"><img src="template/yoga/theme/up.png" alt="{L_UP_ALT}"></a> <a class="navButton up" href="{U_UP}" title="{L_UP_HINT}"><img src="template/yoga/theme/up.png" class="button" alt="{L_UP_ALT}"></a>
<!-- BEGIN previous --> <!-- BEGIN previous -->
<a class="navButton prev" href="{previous.U_IMG}" title="{L_PREV_IMG}{previous.TITLE_IMG}"><img src="template/yoga/theme/left.png" alt="previous"></a> <a class="navButton prev" href="{previous.U_IMG}" title="{L_PREV_IMG}{previous.TITLE_IMG}"><img src="template/yoga/theme/left.png" class="button" alt="previous"></a>
<!-- END previous --> <!-- END previous -->
</div> </div>
@ -65,13 +65,13 @@
</div> </div>
<!-- BEGIN previous --> <!-- BEGIN previous -->
<a class="navThumb prev" href="{previous.U_IMG}" title="{L_PREV_IMG}{previous.TITLE_IMG}"> <a class="navThumb" id="thumbPrev" href="{previous.U_IMG}" title="{L_PREV_IMG}{previous.TITLE_IMG}">
<img src="{previous.IMG}" class="thumbLink prev" alt="{previous.TITLE_IMG}"> <img src="{previous.IMG}" class="thumbLink" id="linkPrev" alt="{previous.TITLE_IMG}">
</a> </a>
<!-- END previous --> <!-- END previous -->
<!-- BEGIN next --> <!-- BEGIN next -->
<a class="navThumb next" href="{next.U_IMG}" title="{L_NEXT_IMG}{next.TITLE_IMG}"> <a class="navThumb" id="thumbNext" href="{next.U_IMG}" title="{L_NEXT_IMG}{next.TITLE_IMG}">
<img src="{next.IMG}" class="thumbLink next" alt="{next.TITLE_IMG}"> <img src="{next.IMG}" class="thumbLink" id="linkNext" alt="{next.TITLE_IMG}">
</a> </a>
<!-- END next --> <!-- END next -->
@ -164,7 +164,7 @@
<!-- BEGIN delete --> <!-- BEGIN delete -->
<p class="userCommentDelete"> <p class="userCommentDelete">
<a href="{comments.comment.delete.U_COMMENT_DELETE}" title="{L_DELETE_COMMENT}"> <a href="{comments.comment.delete.U_COMMENT_DELETE}" title="{L_DELETE_COMMENT}">
<img src="template/yoga/theme/delete.png" style="border:none;vertical-align:middle; margin-left:5px;" alt="[{L_DELETE}]"/> <img src="template/yoga/theme/delete.png" class="button" style="border:none;vertical-align:middle; margin-left:5px;" alt="[{L_DELETE}]"/>
</a> </a>
</p> </p>
<!-- END delete --> <!-- END delete -->

View file

@ -2,4 +2,4 @@
{HELP_CONTENT} {HELP_CONTENT}
</div> <!-- content --> </div> <!-- content -->
<p id="pageBottomActions"><a href="#" onclick="window.close();" title="{lang:Close this window}"><img src="template/yoga/theme/exit.png" alt="close"></a></p> <p id="pageBottomActions"><a href="#" onclick="window.close();" title="{lang:Close this window}"><img src="template/yoga/theme/exit.png" class="button" alt="close"></a></p>

View file

@ -12,7 +12,7 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_RETURN}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li> <li><a href="{U_RETURN}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" class="button" alt="{lang:home}"/></a></li>
</ul> </ul>
<h2>{lang:Profile}</h2> <h2>{lang:Profile}</h2>
</div> </div>

View file

@ -4,7 +4,7 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li> <li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" class="button" alt="{lang:home}"/></a></li>
</ul> </ul>
<h2>{lang:Registration}</h2> <h2>{lang:Registration}</h2>
</div> </div>

View file

@ -2,8 +2,8 @@
<div class="titrePage"> <div class="titrePage">
<ul class="categoryActions"> <ul class="categoryActions">
<li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" alt="(?)"></a></li> <li><a href="{U_HELP}" onclick="popuphelp(this.href); return false;" title="{lang:Help}"><img src="template/yoga/theme/help.png" class="button" alt="(?)"></a></li>
<li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" alt="{lang:home}"/></a></li> <li><a href="{U_HOME}" title="{lang:return to homepage}"><img src="./template/yoga/theme/home.png" class="button" alt="{lang:home}"/></a></li>
</ul> </ul>
<h2>{lang:Search}</h2> <h2>{lang:Search}</h2>
</div> </div>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB