- modification : major simplification of admin.php. Titles are managed by

included page, localized items are managed directly in the template.

- new : sub template admin/double_select is included in templates
  admin/cat_options, admin/user_perm and admin/group_perm. I haven't been
  able to use it in admin/picture_modify because it seems impossible to have
  two instance of the same sub-template without interfering.

- modification : bug 99, in profile manager, no auto submit when changing
  language (useless and generate accessibility problem).

- improvement : HTML semantically correct for administration menu, simpler
  syntax, less tags, correct tags (dl/dt/dd instead of div/div).

- modification : number of waiting elements and unvalidated comments are
  displayed in admin/intro instead of administration menu (with a link to
  the dedicated pages).

- deletion : no link to profile from admin/user_list anymore (no need).


git-svn-id: http://piwigo.org/svn/trunk@817 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
plegall 2005-08-17 14:25:38 +00:00
parent de22732f93
commit 20f0541697
34 changed files with 517 additions and 508 deletions

264
admin.php
View file

@ -37,232 +37,32 @@ include_once( PHPWG_ROOT_PATH.'admin/include/isadmin.inc.php' );
sync_users(); sync_users();
//--------------------------------------- validating page and creation of title // +-----------------------------------------------------------------------+
$page_valide = false; // | variables init |
$title = ''; // +-----------------------------------------------------------------------+
$username='';
if (isset($_POST['username']))
{
$username = $_POST['username'];
}
else if (isset($_POST['userid']))
{
$username = get_username($_POST['userid']);
}
else if (isset($_GET['user_id']))
{
$username = get_username($_GET['user_id']);
}
$_GET['page'] = isset($_GET['page']) ? $_GET['page'] : 'intro'; if (isset($_GET['page'])
and preg_match('/^[a-z_]*$/', $_GET['page'])
switch ( $_GET['page'] ) and is_file(PHPWG_ROOT_PATH.'admin/'.$_GET['page'].'.php'))
{ {
case 'user_list' : $page['page'] = $_GET['page'];
{
$title = $lang['title_liste_users'];
$page_valide = true;
break;
}
case 'profile' :
{
$title = $lang['title_user_modify'];
$page_valide = true;
break;
}
case 'user_perm':
$title = $lang['title_user_perm'].' '.$username;
$page_valide = true; break;
case 'group_list' :
$title = $lang['title_groups']; $page_valide = true; break;
case 'group_perm' :
if (!is_numeric($_GET['group_id']))
{
$_GET['group_id'] = -1;
}
$query = '
SELECT name
FROM '.GROUPS_TABLE.'
WHERE id = '.$_GET['group_id'].'
;';
$result = pwg_query($query);
if (mysql_num_rows($result) > 0 )
{
$row = mysql_fetch_array($result);
$title = $lang['title_group_perm'].' "'.$row['name'].'"';
$page_valide = true;
} }
else else
{ {
$page_valide = false; $page['page'] = 'intro';
}
break;
case 'stats':
$title = $lang['title_history']; $page_valide = true; break;
case 'update':
$title = $lang['title_update']; $page_valide = true; break;
case 'configuration':
$title = $lang['title_configuration']; $page_valide = true; break;
case 'help':
$title = $lang['title_instructions']; $page_valide = true; break;
case 'cat_perm':
$title = $lang['title_cat_perm'];
if ( isset( $_GET['cat'] ) )
{
check_cat_id( $_GET['cat'] );
if ( isset( $page['cat'] ) and is_numeric( $page['cat'] ) )
{
$result = get_cat_info( $page['cat'] );
$name = get_cat_display_name($result['name'], '');
$title.= ' "'.$name.'"';
}
}
$page_valide = true;
break;
case 'cat_list':
$title = $lang['title_categories']; $page_valide = true; break;
case 'cat_modify':
$title = $lang['title_edit_cat']; $page_valide = true; break;
case 'infos_images':
$title = $lang['title_info_images']; $page_valide = true; break;
case 'waiting':
$title = $lang['title_waiting']; $page_valide = true; break;
case 'thumbnail':
$title = $lang['title_thumbnails'];
if ( isset( $_GET['dir'] ) )
{
$title.= ' '.$lang['title_thumbnails_2'].' <span class="titreImg">';
// $_GET['dir'] contains :
// ./galleries/vieux_lyon ou
// ./galleries/vieux_lyon/visite ou
// ./galleries/vieux_lyon/visite/truc ...
$dir = explode( "/", $_GET['dir'] );
$title.= $dir[2];
for ( $i = 2; $i < sizeof( $dir ) - 1; $i++ )
{
$title.= ' &gt; '.$dir[$i+1];
}
$title.= "</span>";
}
$page_valide = true;
break;
case 'comments' :
$title = $lang['title_comments'];
$page_valide = true;
break;
case 'picture_modify' :
$title = $lang['title_picmod'];
$page_valide = true;
break;
case 'remote_site' :
{
$title = $lang['remote_sites'];
$page_valide = true;
break;
}
case 'cat_options' :
{
$title = $lang['title_cat_options'];
$page_valide = true;
break;
}
case 'element_set' :
{
$title = 'batch management';
$page_valide = true;
break;
}
case 'maintenance' :
{
$title = l10n('Maintenance');
$page_valide = true;
break;
}
case 'representative' :
{
$title = l10n('Representative');
$page_valide = true;
break;
}
// case 'element_set_unit' :
// {
// $title = 'batch management';
// $page_valide = true;
// break;
// }
case 'intro' :
{
$_GET['page'] = 'intro';
$title = $lang['title_default'];
$page_valide = true;
break;
}
default :
{
break;
}
}
if ( $title == '' ) $title = $lang['title_default'];
// waiting
$query = 'SELECT id FROM '.WAITING_TABLE;
$query.= " WHERE validated='false'";
$query.= ';';
$result = pwg_query( $query );
$nb_waiting = '';
if ( mysql_num_rows( $result ) > 0 )
{
$nb_waiting = ' [ '.mysql_num_rows( $result ).' ]';
}
// comments
$query = 'SELECT id FROM '.COMMENTS_TABLE;
$query.= " WHERE validated='false'";
$query.= ';';
$result = pwg_query( $query );
$nb_comments = '';
if ( mysql_num_rows( $result ) > 0 )
{
$nb_comments = ' [ '.mysql_num_rows( $result ).' ]';
} }
$link_start = PHPWG_ROOT_PATH.'admin.php?page='; $link_start = PHPWG_ROOT_PATH.'admin.php?page=';
$conf_link = $link_start.'configuration&amp;section='; $conf_link = $link_start.'configuration&amp;section=';
$opt_link = $link_start.'cat_options&amp;section='; $opt_link = $link_start.'cat_options&amp;section=';
//----------------------------------------------------- template initialization //----------------------------------------------------- template initialization
$title = l10n('PhpWebGallery administration'); // for include/page_header.php
include(PHPWG_ROOT_PATH.'include/page_header.php'); include(PHPWG_ROOT_PATH.'include/page_header.php');
$template->set_filenames(array('admin' => 'admin.tpl')); $template->set_filenames(array('admin' => 'admin.tpl'));
$template->assign_vars(array( $template->assign_vars(
'L_TITLE'=>$lang['admin_panel'], array(
'L_LINKS'=>$lang['links'],
'L_GALLERY_INDEX'=>$lang['home'],
'L_GENERAL'=>$lang['general'],
'L_DEFAULT'=>$lang['gallery_default'],
'L_HISTORY'=>$lang['history'],
'L_FAQ'=>$lang['instructions'],
'L_CONFIGURATION'=>$lang['config'],
'L_CONFIG_GENERAL'=>$lang['general'],
'L_CONFIG_COMMENTS'=>$lang['comments'],
'L_CONFIG_DISPLAY'=>$lang['conf_default'],
'L_CONFIG_UPLOAD'=>$lang['upload'],
'L_CONFIG_SESSION'=>$lang['conf_cookie'],
'L_CONFIG_METADATA'=>$lang['metadata'],
'L_SITES'=>$lang['remote_sites'],
'L_CATEGORIES'=>$lang['categories'],
'L_MANAGE'=>$lang['manage'],
'L_IMAGES'=>$lang['pictures'],
'L_WAITING'=>$lang['waiting'].$nb_waiting,
'L_COMMENTS'=>$lang['comments'].$nb_comments,
'L_THUMBNAILS'=>$lang['thumbnails'],
'L_IDENTIFY'=>$lang['identification'],
'L_USERS'=>$lang['users'],
'L_GROUPS'=>$lang['groups'],
'L_UPDATE'=>$lang['update'],
'L_CAT_UPLOAD'=>$lang['upload'],
'L_CAT_COMMENTS'=>$lang['comments'],
'L_CAT_VISIBLE'=>$lang['lock'],
'L_CAT_STATUS'=>$lang['cat_security'],
'U_HISTORY'=>add_session_id($link_start.'stats' ), 'U_HISTORY'=>add_session_id($link_start.'stats' ),
'U_FAQ'=>add_session_id($link_start.'help' ), 'U_FAQ'=>add_session_id($link_start.'help' ),
'U_SITES'=>add_session_id($link_start.'remote_site'), 'U_SITES'=>add_session_id($link_start.'remote_site'),
@ -287,7 +87,8 @@ $template->assign_vars(array(
'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_RETURN'=>add_session_id(PHPWG_ROOT_PATH.'category.php') 'U_RETURN'=>add_session_id(PHPWG_ROOT_PATH.'category.php')
)); )
);
if ($conf['allow_random_representative']) if ($conf['allow_random_representative'])
{ {
@ -299,44 +100,16 @@ if ($conf['allow_random_representative'])
); );
} }
//--------------------------------------------------------------------- summary
$link_start = PHPWG_ROOT_PATH.'admin.php?page=';
//------------------------------------------------------------- content display //------------------------------------------------------------- content display
$page['errors'] = array(); $page['errors'] = array();
$page['infos'] = array(); $page['infos'] = array();
if ($page_valide) include(PHPWG_ROOT_PATH.'admin/'.$page['page'].'.php');
{
switch ($_GET['page'])
{
case 'comments' :
{
include(PHPWG_ROOT_PATH.'comments.php');
break;
}
case 'profile' :
{
include(PHPWG_ROOT_PATH.'profile.php');
break;
}
default :
{
include(PHPWG_ROOT_PATH.'admin/'.$_GET['page'].'.php');
}
}
}
else
{
$template->assign_vars(
array(
'ADMIN_CONTENT'
=>'<div style="text-align:center">'.$lang['default_message'].'</div>'
)
);
}
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// | errors & infos | // | errors & infos |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
if (count($page['errors']) != 0) if (count($page['errors']) != 0)
{ {
$template->assign_block_vars('errors',array()); $template->assign_block_vars('errors',array());
@ -345,6 +118,7 @@ if (count($page['errors']) != 0)
$template->assign_block_vars('errors.error',array('ERROR'=>$error)); $template->assign_block_vars('errors.error',array('ERROR'=>$error));
} }
} }
if (count($page['infos']) != 0) if (count($page['infos']) != 0)
{ {
$template->assign_block_vars('infos',array()); $template->assign_block_vars('infos',array());
@ -356,9 +130,11 @@ if (count($page['infos']) != 0)
$template->parse('admin'); $template->parse('admin');
include(PHPWG_ROOT_PATH.'include/page_tail.php'); include(PHPWG_ROOT_PATH.'include/page_tail.php');
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// | order permission refreshment | // | order permission refreshment |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
$query = ' $query = '
UPDATE '.USER_CACHE_TABLE.' UPDATE '.USER_CACHE_TABLE.'
SET need_update = \'true\' SET need_update = \'true\'

View file

@ -30,9 +30,11 @@ if (!defined('PHPWG_ROOT_PATH'))
die ("Hacking attempt!"); die ("Hacking attempt!");
} }
include_once(PHPWG_ROOT_PATH.'admin/include/isadmin.inc.php'); include_once(PHPWG_ROOT_PATH.'admin/include/isadmin.inc.php');
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// | modification registration | // | modification registration |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// print '<pre>'; // print '<pre>';
// print_r($_POST); // print_r($_POST);
// print '</pre>'; // print '</pre>';
@ -129,21 +131,21 @@ UPDATE '.CATEGORIES_TABLE.'
} }
} }
} }
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// | template init | // | template init |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
$template->set_filenames(array('cat_options'=>'admin/cat_options.tpl'));
if (!isset($_GET['section'])) $template->set_filenames(
{ array(
$page['section'] = 'upload'; 'cat_options' => 'admin/cat_options.tpl',
} 'double_select' => 'admin/double_select.tpl'
else )
{ );
$page['section'] = $_GET['section'];
}
$page['section'] = isset($_GET['section']) ? $_GET['section'] : 'upload';
$base_url = PHPWG_ROOT_PATH.'admin.php?page=cat_options&amp;section='; $base_url = PHPWG_ROOT_PATH.'admin.php?page=cat_options&amp;section=';
$template->assign_vars( $template->assign_vars(
array( array(
'L_SUBMIT'=>$lang['submit'], 'L_SUBMIT'=>$lang['submit'],
@ -153,7 +155,6 @@ $template->assign_vars(
) )
); );
$template->assign_vars(array(strtoupper($page['section']).'_CLASS'=>'opened'));
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// | form display | // | form display |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
@ -189,7 +190,7 @@ SELECT id,name,uppercats,global_rank
;'; ;';
$template->assign_vars( $template->assign_vars(
array( array(
'L_CAT_TITLE' => $lang['cat_upload_title'], 'L_SECTION' => $lang['cat_upload_title'],
'L_CAT_OPTIONS_TRUE' => $lang['authorized'], 'L_CAT_OPTIONS_TRUE' => $lang['authorized'],
'L_CAT_OPTIONS_FALSE' => $lang['forbidden'], 'L_CAT_OPTIONS_FALSE' => $lang['forbidden'],
'L_CAT_OPTIONS_INFO' => $lang['cat_upload_info'], 'L_CAT_OPTIONS_INFO' => $lang['cat_upload_info'],
@ -211,7 +212,7 @@ SELECT id,name,uppercats,global_rank
;'; ;';
$template->assign_vars( $template->assign_vars(
array( array(
'L_CAT_TITLE' => $lang['cat_comments_title'], 'L_SECTION' => $lang['cat_comments_title'],
'L_CAT_OPTIONS_TRUE' => $lang['authorized'], 'L_CAT_OPTIONS_TRUE' => $lang['authorized'],
'L_CAT_OPTIONS_FALSE' => $lang['forbidden'], 'L_CAT_OPTIONS_FALSE' => $lang['forbidden'],
'L_CAT_OPTIONS_INFO' => $lang['cat_comments_info'], 'L_CAT_OPTIONS_INFO' => $lang['cat_comments_info'],
@ -233,7 +234,7 @@ SELECT id,name,uppercats,global_rank
;'; ;';
$template->assign_vars( $template->assign_vars(
array( array(
'L_CAT_TITLE' => $lang['cat_lock_title'], 'L_SECTION' => $lang['cat_lock_title'],
'L_CAT_OPTIONS_TRUE' => $lang['unlocked'], 'L_CAT_OPTIONS_TRUE' => $lang['unlocked'],
'L_CAT_OPTIONS_FALSE' => $lang['locked'], 'L_CAT_OPTIONS_FALSE' => $lang['locked'],
'L_CAT_OPTIONS_INFO' => $lang['cat_lock_info'], 'L_CAT_OPTIONS_INFO' => $lang['cat_lock_info'],
@ -255,7 +256,7 @@ SELECT id,name,uppercats,global_rank
;'; ;';
$template->assign_vars( $template->assign_vars(
array( array(
'L_CAT_TITLE' => $lang['cat_status_title'], 'L_SECTION' => $lang['cat_status_title'],
'L_CAT_OPTIONS_TRUE' => $lang['cat_public'], 'L_CAT_OPTIONS_TRUE' => $lang['cat_public'],
'L_CAT_OPTIONS_FALSE' => $lang['cat_private'], 'L_CAT_OPTIONS_FALSE' => $lang['cat_private'],
'L_CAT_OPTIONS_INFO' => $lang['cat_status_info'], 'L_CAT_OPTIONS_INFO' => $lang['cat_status_info'],
@ -278,7 +279,7 @@ SELECT id,name,uppercats,global_rank
;'; ;';
$template->assign_vars( $template->assign_vars(
array( array(
'L_CAT_TITLE' => l10n('Representative'), 'L_SECTION' => l10n('Representative'),
'L_CAT_OPTIONS_TRUE' => l10n('singly represented'), 'L_CAT_OPTIONS_TRUE' => l10n('singly represented'),
'L_CAT_OPTIONS_FALSE' => l10n('randomly represented'), 'L_CAT_OPTIONS_FALSE' => l10n('randomly represented'),
'L_CAT_OPTIONS_INFO' => l10n('') 'L_CAT_OPTIONS_INFO' => l10n('')
@ -289,8 +290,11 @@ SELECT id,name,uppercats,global_rank
} }
display_select_cat_wrapper($query_true,array(),'category_option_true'); display_select_cat_wrapper($query_true,array(),'category_option_true');
display_select_cat_wrapper($query_false,array(),'category_option_false'); display_select_cat_wrapper($query_false,array(),'category_option_false');
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// | sending html code | // | sending html code |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
$template->assign_var_from_handle('DOUBLE_SELECT', 'double_select');
$template->assign_var_from_handle('ADMIN_CONTENT', 'cat_options'); $template->assign_var_from_handle('ADMIN_CONTENT', 'cat_options');
?> ?>

View file

@ -196,12 +196,22 @@ SELECT user_id, cat_id
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// | template initialization | // | template initialization |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
$template->set_filenames(array('cat_perm'=>'admin/cat_perm.tpl')); $template->set_filenames(array('cat_perm'=>'admin/cat_perm.tpl'));
$form_action = PHPWG_ROOT_PATH.'admin.php'; $template->assign_vars(
$form_action.= '?page=cat_perm&amp;cat='.$page['cat']; array(
'TITLE' =>
$template->assign_vars(array('F_ACTION' => $form_action)); sprintf(
l10n('Manage permissions for category "%s"'),
get_cat_display_name_from_id($page['cat'])
)
'F_ACTION' =>
add_session_id(
PHPWG_ROOT_PATH.'admin.php?page=cat_perm&amp;cat='.$page['cat']
)
)
);
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// | form construction | // | form construction |

View file

@ -120,11 +120,21 @@ SELECT cat_id
// | template init | // | template init |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
$template->set_filenames(array('group_perm'=>'admin/cat_options.tpl')); $template->set_filenames(
array(
'group_perm' => 'admin/group_perm.tpl',
'double_select' => 'admin/double_select.tpl'
)
);
$template->assign_vars( $template->assign_vars(
array( array(
'L_RESET'=>$lang['reset'], 'TITLE' =>
sprintf(
l10n('Manage permissions for group "%s"'),
get_groupname($page['group']
)
),
'L_CAT_OPTIONS_TRUE'=>$lang['authorized'], 'L_CAT_OPTIONS_TRUE'=>$lang['authorized'],
'L_CAT_OPTIONS_FALSE'=>$lang['forbidden'], 'L_CAT_OPTIONS_FALSE'=>$lang['forbidden'],
'L_CAT_OPTIONS_INFO'=>$lang['permuser_info'], 'L_CAT_OPTIONS_INFO'=>$lang['permuser_info'],
@ -171,6 +181,7 @@ display_select_cat_wrapper($query_false,array(),'category_option_false');
// | html code display | // | html code display |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
$template->assign_var_from_handle('DOUBLE_SELECT', 'double_select');
$template->assign_var_from_handle('ADMIN_CONTENT', 'group_perm'); $template->assign_var_from_handle('ADMIN_CONTENT', 'group_perm');
?> ?>

View file

@ -193,6 +193,44 @@ $template->assign_vars(
) )
); );
// waiting elements
$query = '
SELECT COUNT(*)
FROM '.WAITING_TABLE.'
WHERE validated=\'false\'
;';
list($nb_waiting) = mysql_fetch_row(pwg_query($query));
if ($nb_waiting > 0)
{
$template->assign_block_vars(
'waiting',
array(
'URL' => add_session_id(PHPWG_ROOT_PATH.'admin.php?page=waiting'),
'INFO' => sprintf(l10n('%d waiting for validation'), $nb_waiting)
)
);
}
// unvalidated comments
$query = '
SELECT COUNT(*)
FROM '.COMMENTS_TABLE.'
WHERE validated=\'false\'
;';
list($nb_comments) = mysql_fetch_row(pwg_query($query));
if ($nb_comments > 0)
{
$template->assign_block_vars(
'unvalidated',
array(
'URL' => add_session_id(PHPWG_ROOT_PATH.'admin.php?page=comments'),
'INFO' => sprintf(l10n('%d waiting for validation'), $nb_comments)
)
);
}
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// | sending html code | // | sending html code |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+

View file

@ -167,7 +167,12 @@ $storage_category = get_cat_display_name_cache($row['uppercats'],
$url, $url,
false); false);
//----------------------------------------------------- template initialization //----------------------------------------------------- template initialization
$template->set_filenames(array('picture_modify'=>'admin/picture_modify.tpl')); $template->set_filenames(
array(
'picture_modify' => 'admin/picture_modify.tpl'
)
);
$template->assign_vars(array( $template->assign_vars(array(
'TITLE_IMG'=>$title, 'TITLE_IMG'=>$title,
'STORAGE_CATEGORY_IMG'=>$storage_category, 'STORAGE_CATEGORY_IMG'=>$storage_category,
@ -250,6 +255,9 @@ SELECT id,name,uppercats,global_rank
OR representative_picture_id IS NULL OR representative_picture_id IS NULL
;'; ;';
display_select_cat_wrapper($query, array(), 'dismissed_option'); display_select_cat_wrapper($query, array(), 'dismissed_option');
//----------------------------------------------------------- sending html code //----------------------------------------------------------- sending html code
$template->assign_var_from_handle('ADMIN_CONTENT', 'picture_modify'); $template->assign_var_from_handle('ADMIN_CONTENT', 'picture_modify');
?> ?>

View file

@ -109,15 +109,28 @@ SELECT cat_id
mass_inserts(USER_ACCESS_TABLE, array('user_id','cat_id'), $inserts); mass_inserts(USER_ACCESS_TABLE, array('user_id','cat_id'), $inserts);
} }
//----------------------------------------------------- template initialization
$template->set_filenames(array('user_perm'=>'admin/cat_options.tpl')); // +-----------------------------------------------------------------------+
// | template init |
// +-----------------------------------------------------------------------+
$template->set_filenames(
array(
'user_perm' => 'admin/user_perm.tpl',
'double_select' => 'admin/double_select.tpl'
)
);
$template->assign_vars( $template->assign_vars(
array( array(
'L_RESET'=>$lang['reset'], 'TITLE' =>
sprintf(
l10n('Manage permissions for user "%s"'),
get_username($page['user']
)
),
'L_CAT_OPTIONS_TRUE'=>$lang['authorized'], 'L_CAT_OPTIONS_TRUE'=>$lang['authorized'],
'L_CAT_OPTIONS_FALSE'=>$lang['forbidden'], 'L_CAT_OPTIONS_FALSE'=>$lang['forbidden'],
'L_CAT_OPTIONS_INFO'=>$lang['permuser_info'],
'F_ACTION' => 'F_ACTION' =>
add_session_id( add_session_id(
@ -157,7 +170,10 @@ $query_false.= '
;'; ;';
display_select_cat_wrapper($query_false,array(),'category_option_false'); display_select_cat_wrapper($query_false,array(),'category_option_false');
//----------------------------------------------------------- sending html code // +-----------------------------------------------------------------------+
// | sending html code |
// +-----------------------------------------------------------------------+
$template->assign_var_from_handle('DOUBLE_SELECT', 'double_select');
$template->assign_var_from_handle('ADMIN_CONTENT', 'user_perm'); $template->assign_var_from_handle('ADMIN_CONTENT', 'user_perm');
?> ?>

View file

@ -1,3 +1,29 @@
2005-08-17 Pierrick LE GALL
* modification : major simplification of admin.php. Titles are
managed by included page, localized items are managed directly in
the template.
* new : sub template admin/double_select is included in templates
admin/cat_options, admin/user_perm and admin/group_perm. I haven't
been able to use it in admin/picture_modify because it seems
impossible to have two instance of the same sub-template without
interfering.
* modification : bug 99, in profile manager, no auto submit when
changing language (useless and generate accessibility problem).
* improvement : HTML semantically correct for administration menu,
simpler syntax, less tags, correct tags (dl/dt/dd instead of
div/div).
* modification : number of waiting elements and unvalidated
comments are displayed in admin/intro instead of administration
menu (with a link to the dedicated pages).
* deletion : no link to profile from admin/user_list anymore (no
need).
2005-08-16 Pierrick LE GALL 2005-08-16 Pierrick LE GALL
* modification : admin/group_list screen completely rewrite to * modification : admin/group_list screen completely rewrite to

View file

@ -192,7 +192,7 @@ function language_select($default, $select_name = "language")
{ {
$available_lang = get_languages(); $available_lang = get_languages();
$lang_select = '<select name="' . $select_name . '" onchange="this.form.submit()">'; $lang_select = '<select name="' . $select_name . '">';
foreach ($available_lang as $code => $displayname) foreach ($available_lang as $code => $displayname)
{ {
$selected = ( strtolower($default) == strtolower($code) ) ? ' selected="selected"' : ''; $selected = ( strtolower($default) == strtolower($code) ) ? ' selected="selected"' : '';
@ -449,4 +449,12 @@ function parse_comment_content($content)
return $content; return $content;
} }
function get_cat_display_name_from_id($cat_id,
$url = 'category.php?cat=',
$replace_space = true)
{
$cat_info = get_cat_info($cat_id);
get_cat_display_name($cat_info['id'], $url, $replace_space);
}
?> ?>

View file

@ -454,4 +454,31 @@ function create_user_infos($user_id)
include_once(PHPWG_ROOT_PATH.'admin/include/functions.php'); include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
mass_inserts(USER_INFOS_TABLE, array_keys($insert), array($insert)); mass_inserts(USER_INFOS_TABLE, array_keys($insert), array($insert));
} }
/**
* returns the groupname corresponding to the given group identifier if
* exists
*
* @param int group_id
* @return mixed
*/
function get_groupname($group_id)
{
$query = '
SELECT name
FROM '.GROUPS_TABLE.'
WHERE id = '.intval($group_id).'
;';
$result = pwg_query($query);
if (mysql_num_rows($result) > 0)
{
list($groupname) = mysql_fetch_row($result);
}
else
{
return false;
}
return $groupname;
}
?> ?>

View file

@ -25,19 +25,6 @@
// | USA. | // | USA. |
// +-----------------------------------------------------------------------+ // +-----------------------------------------------------------------------+
// Dynamic change of language with database persistency
//
// FIXME : ce bout de code fait planter l'assignation d'un language a
// plusieurs users simultanement dans la nouvelle page admin/user_list.php
//
// if (isset($_POST['language']))
// {
// $query = "UPDATE ".USERS_TABLE." SET language = '";
// $query.= $_POST['language'];
// $query.= "' WHERE id = ".$_POST['userid'].";";
// pwg_query($query);
// }
// retrieving connected user informations // retrieving connected user informations
if (isset($_COOKIE['id'])) if (isset($_COOKIE['id']))
{ {

View file

@ -1,72 +1,75 @@
<!-- BEGIN install_warning -->
<p class="install_warning">{L_INSTALL_WARNING}</div>
<!-- END install_warning -->
<table style="width:100%;"> <table style="width:100%;">
<tr> <tr>
<td valign="top" style="padding:10px;width:1%;"> <td valign="top" style="width:1%;">
<div class="table1"> <div id="theNavbar">
<dl>
<dt>{lang:links}</dt>
<dd>
<ul>
<li><a href="{U_RETURN}">{lang:home}</a></li>
</ul>
</dd>
<div class="titreMenu">{L_LINKS}</div> <dt>{lang:general}</dt>
<div class="menu"> <dd>
<ul class="menu"> <ul>
<li><a class="adminMenu" href="{U_RETURN}">{L_GALLERY_INDEX}</a></li> <li><a href="{U_FAQ}">{lang:instructions}</a></li>
<li><a href="{U_SITES}">{lang:remote_sites}</a></li>
<li><a href="{U_HISTORY}">{lang:history}</a></li>
<li><a href="{U_CAT_UPDATE}">{lang:update}</a></li>
<li><a href="{U_MAINTENANCE}">{lang:Maintenance}</a></li>
</ul> </ul>
</div> </dd>
<div class="titreMenu">{L_GENERAL}</div>
<div class="menu"> <dt>{lang:config}</dt>
<ul class="menu"> <dd>
<li><a class="adminMenu" href="{U_FAQ}">{L_FAQ}</a></li> <ul>
<li><a class="adminMenu" href="{U_SITES}">{L_SITES}</a></li> <li><a href="{U_CONFIG_GENERAL}">{lang:general}</a></li>
<li><a class="adminMenu" href="{U_HISTORY}">{L_HISTORY}</a></li> <li><a href="{U_CONFIG_COMMENTS}">{lang:comments}</a></li>
<li><a class="adminMenu" href="{U_CAT_UPDATE}">{L_UPDATE}</a></li> <li><a href="{U_CONFIG_DISPLAY}">{lang:conf_default}</a></li>
<li><a class="adminMenu" href="{U_MAINTENANCE}">{lang:Maintenance}</a></li> <li><a href="{U_CONFIG_UPLOAD}">{lang:upload}</a></li>
<li><a href="{U_CONFIG_SESSION}">{lang:conf_cookie}</a></li>
<li><a href="{U_CONFIG_METADATA}">{lang:metadata}</a></li>
</ul> </ul>
</div> </dd>
<div class="titreMenu">{L_CONFIGURATION}</div>
<div class="menu"> <dt>{lang:categories}</dt>
<ul class="menu"> <dd>
<li><a class="adminMenu" href="{U_CONFIG_GENERAL}">{L_CONFIG_GENERAL}</a></li> <ul>
<li><a class="adminMenu" href="{U_CONFIG_COMMENTS}">{L_CONFIG_COMMENTS}</a></li> <li><a href="{U_CATEGORIES}">{lang:manage}</a></li>
<li><a class="adminMenu" href="{U_CONFIG_DISPLAY}">{L_CONFIG_DISPLAY}</a></li> <li><a href="{U_CAT_UPLOAD}">{lang:upload}</a></li>
<li><a class="adminMenu" href="{U_CONFIG_UPLOAD}">{L_CONFIG_UPLOAD}</a></li> <li><a href="{U_CAT_COMMENTS}">{lang:comments}</a></li>
<li><a class="adminMenu" href="{U_CONFIG_SESSION}">{L_CONFIG_SESSION}</a></li> <li><a href="{U_CAT_VISIBLE}">{lang:lock}</a></li>
<li><a class="adminMenu" href="{U_CONFIG_METADATA}">{L_CONFIG_METADATA}</a></li> <li><a href="{U_CAT_STATUS}">{lang:cat_security}</a></li>
</ul>
</div>
<div class="titreMenu">{L_CATEGORIES}</div>
<div class="menu">
<ul class="menu">
<li><a class="adminMenu" href="{U_CATEGORIES}">{L_MANAGE}</a></li>
<li><a class="adminMenu" href="{U_CAT_UPLOAD}">{L_CAT_UPLOAD}</a></li>
<li><a class="adminMenu" href="{U_CAT_COMMENTS}">{L_CAT_COMMENTS}</a></li>
<li><a class="adminMenu" href="{U_CAT_VISIBLE}">{L_CAT_VISIBLE}</a></li>
<li><a class="adminMenu" href="{U_CAT_STATUS}">{L_CAT_STATUS}</a></li>
<!-- BEGIN representative --> <!-- BEGIN representative -->
<li><a class="adminMenu" href="{representative.URL}">{lang:Representative}</a></li> <li><a href="{representative.URL}">{lang:Representative}</a></li>
<!-- END representative --> <!-- END representative -->
</ul> </ul>
</div> </dd>
<div class="titreMenu">{L_IMAGES}</div>
<div class="menu"> <dt>{lang:pictures}</dt>
<ul class="menu"> <dd>
<li><a class="adminMenu" href="{U_WAITING}">{L_WAITING}</a></li> <ul>
<li><a class="adminMenu" href="{U_THUMBNAILS}">{L_THUMBNAILS}</a></li> <li><a href="{U_WAITING}">{lang:waiting}</a></li>
<li><a class="adminMenu" href="{U_COMMENTS}">{L_COMMENTS}</a></li> <li><a href="{U_THUMBNAILS}">{lang:thumbnails}</a></li>
<li><a class="adminMenu" href="{U_CADDIE}">Caddie</a></li> <li><a href="{U_COMMENTS}">{lang:comments}</a></li>
<li><a href="{U_CADDIE}">{lang:Caddie}</a></li>
</ul> </ul>
</div> </dd>
<div class="titreMenu">{L_IDENTIFY}</div>
<div class="menu"> <dt>{lang:identification}</dt>
<ul class="menu"> <dd>
<li><a class="adminMenu" href="{U_USERS}">{L_USERS}</a></li> <ul>
<li><a class="adminMenu" href="{U_GROUPS}">{L_GROUPS}</a></li> <li><a href="{U_USERS}">{lang:users}</a></li>
<li><a href="{U_GROUPS}">{lang:groups}</a></li>
</ul> </ul>
</div> </dd>
</div> </dl>
</div> <!-- end div#theNavbar -->
</td> </td>
<td style="padding:10px;width:99%;" valign="top">
<div class="home"> <td style="width:99%;" valign="top">
<div class="titrePage">{PAGE_TITLE}</div> <div id="adminMain">
<!-- BEGIN errors --> <!-- BEGIN errors -->
<div id="errors"> <div id="errors">
@ -87,9 +90,8 @@
</ul> </ul>
</div> </div>
<!-- END infos --> <!-- END infos -->
<div id="adminMain">
{ADMIN_CONTENT} {ADMIN_CONTENT}
</div>
</div> </div>
</td> </td>
</tr> </tr>

View file

@ -1,3 +1,5 @@
<h1>{lang:title_categories}</h1>
<div class="admin">{CATEGORIES_NAV}</div> <div class="admin">{CATEGORIES_NAV}</div>
<form id="categoryOrdering" action="" method="post"> <form id="categoryOrdering" action="" method="post">

View file

@ -1,3 +1,5 @@
<h1>{lang:title_edit_cat}</h1>
<h2>{CATEGORIES_NAV}</h2> <h2>{CATEGORIES_NAV}</h2>
<ul class="categoryActions"> <ul class="categoryActions">

View file

@ -1,30 +1,11 @@
<div class="admin">{L_CAT_TITLE}</div> <h1>{lang:title_cat_options}</h1>
<form method="post" action="{F_ACTION}"> <form method="post" action="{F_ACTION}">
<table class="doubleSelect"> <fieldset>
<tr> <legend>{L_SECTION}</legend>
<td> {DOUBLE_SELECT}
<h3>{L_CAT_OPTIONS_TRUE}</h3> </fieldset>
<select class="categoryList" name="cat_true[]" multiple="multiple" size="30">
<!-- BEGIN category_option_true -->
<option class="{category_option_true.CLASS}" {category_option_true.SELECTED} value="{category_option_true.VALUE}">{category_option_true.OPTION}</option>
<!-- END category_option_true -->
</select>
<p><input type="submit" value="&raquo;" name="falsify" style="font-size:15px;"/></p>
</td>
<td>
<h3>{L_CAT_OPTIONS_FALSE}</h3>
<select class="categoryList" name="cat_false[]" multiple="multiple" size="30">
<!-- BEGIN category_option_false -->
<option class="{category_option_false.CLASS}" {category_option_false.SELECTED} value="{category_option_false.VALUE}">{category_option_false.OPTION}</option>
<!-- END category_option_false -->
</select>
<p><input type="submit" value="&laquo;" name="trueify" style="font-size:15px;" /></p>
</td>
</tr>
</table>
</form> </form>
<div class="information">{L_CAT_OPTIONS_INFO}</div> <p class="information">{L_CAT_OPTIONS_INFO}</div>

View file

@ -1,3 +1,5 @@
<h1>{TITLE}</h1>
<form action="{F_ACTION}" method="post" id="categoryPermissions"> <form action="{F_ACTION}" method="post" id="categoryPermissions">
<h2>{lang:Groups}</h2> <h2>{lang:Groups}</h2>

View file

@ -1,3 +1,5 @@
<h1>{lang:title_configuration}</h1>
<form method="post" action="{F_ACTION}"> <form method="post" action="{F_ACTION}">
<table width="100%" align="center"> <table width="100%" align="center">
<!-- BEGIN general --> <!-- BEGIN general -->

View file

@ -0,0 +1,23 @@
<table class="doubleSelect">
<tr>
<td>
<h3>{L_CAT_OPTIONS_TRUE}</h3>
<select class="categoryList" name="cat_true[]" multiple="multiple" size="30">
<!-- BEGIN category_option_true -->
<option {category_option_true.SELECTED} value="{category_option_true.VALUE}">{category_option_true.OPTION}</option>
<!-- END category_option_true -->
</select>
<p><input type="submit" value="&raquo;" name="falsify" style="font-size:15px;"/></p>
</td>
<td>
<h3>{L_CAT_OPTIONS_FALSE}</h3>
<select class="categoryList" name="cat_false[]" multiple="multiple" size="30">
<!-- BEGIN category_option_false -->
<option {category_option_false.SELECTED} value="{category_option_false.VALUE}">{category_option_false.OPTION}</option>
<!-- END category_option_false -->
</select>
<p><input type="submit" value="&laquo;" name="trueify" style="font-size:15px;" /></p>
</td>
</tr>
</table>

View file

@ -1,3 +1,5 @@
<h1>{lang:Batch management}</h1>
<div class="admin">{CATEGORY_TITLE}</div> <div class="admin">{CATEGORY_TITLE}</div>
<p style="text-align:center;"> <p style="text-align:center;">

View file

@ -1,3 +1,5 @@
<h1>{lang:title_groups}</h1>
<form class="filter" method="post" name="add_user" action="{F_ADD_ACTION}"> <form class="filter" method="post" name="add_user" action="{F_ADD_ACTION}">
<fieldset> <fieldset>
<legend>{lang:Add group}</legend> <legend>{lang:Add group}</legend>

View file

@ -0,0 +1,7 @@
<h1>{TITLE}</h1>
<form method="post" action="{F_ACTION}">
{DOUBLE_SELECT}
</form>
<p>{lang:Only private categories are listed}</p>

View file

@ -1,3 +1,5 @@
<h1>{lang:title_instructions}</h1>
<table style="width:100%;"> <table style="width:100%;">
<!-- BEGIN cat --> <!-- BEGIN cat -->
<tr class="admin"> <tr class="admin">

View file

@ -1,3 +1,5 @@
<h1>{lang:title_default}</h1>
<dl> <dl>
<dt>{lang:PhpWebGallery version}</dt> <dt>{lang:PhpWebGallery version}</dt>
<dd> <dd>
@ -19,18 +21,23 @@
<dt>{lang:Database}</dt> <dt>{lang:Database}</dt>
<dd> <dd>
<ul> <ul>
<li>{DB_ELEMENTS}</li> <li>
{DB_ELEMENTS}
<!-- BEGIN waiting -->
(<a href="{waiting.URL}">{waiting.INFO}</a>)
<!-- END waiting -->
</li>
<li>{DB_CATEGORIES}</li> <li>{DB_CATEGORIES}</li>
<li>{DB_USERS}</li> <li>{DB_USERS}</li>
<li>{DB_GROUPS}</li> <li>{DB_GROUPS}</li>
<li>{DB_COMMENTS}</li> <li>
{DB_COMMENTS}
<!-- BEGIN unvalidated -->
(<a href="{unvalidated.URL}">{unvalidated.INFO}</a>)
<!-- END unvalidated -->
</li>
<li>{DB_DATE}</li> <li>{DB_DATE}</li>
</ul> </ul>
</dd> </dd>
<dt></dt>
<dd></dd>
<dt></dt>
<dd></dd>
</dl> </dl>

View file

@ -1,3 +1,5 @@
<h1>{lang:Maintenance}</h1>
<ul> <ul>
<li><a href="{U_MAINT_CATEGORIES}">{lang:update categories informations}</a></li> <li><a href="{U_MAINT_CATEGORIES}">{lang:update categories informations}</a></li>
<li><a href="{U_MAINT_IMAGES}">{lang:update images informations}</a></li> <li><a href="{U_MAINT_IMAGES}">{lang:update images informations}</a></li>

View file

@ -1,3 +1,5 @@
<h1>{lang:title_picmod}</h1>
<div class="admin">{TITLE_IMG}</div> <div class="admin">{TITLE_IMG}</div>
<form action="{F_ACTION}" method="POST"> <form action="{F_ACTION}" method="POST">
<table style="width:100%;"> <table style="width:100%;">
@ -60,76 +62,64 @@
</table> </table>
</form> </form>
<form name="form1" method="post" action="{F_ACTION}" style="text-align:center;width:800px;"> <form name="form1" method="post" action="{F_ACTION}">
<fieldset>
<legend>{lang:Association to categories}</legend>
<div style="clear:both;"></div> <table class="doubleSelect">
<tr>
<div style="height:auto;"> <td>
<h3>{L_CAT_ASSOCIATED}</h3>
<div style="float:left;padding:10px;width:300px;"> <select class="categoryList" name="cat_associated[]" multiple="multiple" size="30">
<span class="titreMenu">{L_CAT_ASSOCIATED}</span><br />
<select style="height:auto;width:280px" name="cat_associated[]" multiple="multiple" size="10">
<!-- BEGIN associated_option --> <!-- BEGIN associated_option -->
<option class="{associated_option.CLASS}" {associated_option.SELECTED} value="{associated_option.VALUE}">{associated_option.OPTION}</option> <option {associated_option.SELECTED} value="{associated_option.VALUE}">{associated_option.OPTION}</option>
<!-- END associated_option --> <!-- END associated_option -->
</select> </select>
</div> <p><input type="submit" value="&raquo;" name="dissociate" style="font-size:15px;"/></p>
</td>
<div style="float:left;padding-top:80px;padding-bottom:80px;text-align:center;width:160px;" > <td>
<input type="submit" value="&laquo;" name="associate" style="font-size:15px;" class="bouton" /><br/> <h3>{L_CAT_DISSOCIATED}</h3>
<input type="submit" value="&raquo;" name="dissociate" style="font-size:15px;" class="bouton" /> <select class="categoryList" name="cat_dissociated[]" multiple="multiple" size="30">
</div>
<div style="float:right;padding:10px;width:300px;">
<span class="titreMenu">{L_CAT_DISSOCIATED}</span><br />
<select style="width:280px" name="cat_dissociated[]" multiple="multiple" size="10">
<!-- BEGIN dissociated_option --> <!-- BEGIN dissociated_option -->
<option class="{dissociated_option.CLASS}" {dissociated_option.SELECTED} value="{dissociated_option.VALUE}">{dissociated_option.OPTION}</option> <option {dissociated_option.SELECTED} value="{dissociated_option.VALUE}">{dissociated_option.OPTION}</option>
<!-- END dissociated_option --> <!-- END dissociated_option -->
</select> </select>
</div> <p><input type="submit" value="&laquo;" name="associate" style="font-size:15px;" /></p>
</td>
</div> </tr>
</table>
<div style="clear:both;"></div>
<input type="reset" name="reset" value="{L_RESET}" class="bouton" />
</fieldset>
</form> </form>
<form name="form2" method="post" action="{F_ACTION}" style="text-align:center;width:800px;"> <form name="form2" method="post" action="{F_ACTION}">
<fieldset>
<legend>{lang:Representation of categories}</legend>
<div style="clear:both;"></div> <table class="doubleSelect">
<tr>
<div style="height:auto;"> <td>
<h3>{L_REPRESENTS}</h3>
<div style="float:left;padding:10px;width:300px;"> <select class="categoryList" name="cat_elected[]" multiple="multiple" size="30">
<span class="titreMenu">{L_REPRESENTS}</span><br />
<select style="height:auto;width:280px" name="cat_elected[]" multiple="multiple" size="10">
<!-- BEGIN elected_option --> <!-- BEGIN elected_option -->
<option class="{elected_option.CLASS}" {elected_option.SELECTED} value="{elected_option.VALUE}">{elected_option.OPTION}</option> <option {elected_option.SELECTED} value="{elected_option.VALUE}">{elected_option.OPTION}</option>
<!-- END elected_option --> <!-- END elected_option -->
</select> </select>
</div> <p><input type="submit" value="&raquo;" name="dismiss" style="font-size:15px;"/></p>
</td>
<div style="float:left;padding-top:80px;padding-bottom:80px;text-align:center;width:160px;" > <td>
<input type="submit" value="&laquo;" name="elect" style="font-size:15px;" class="bouton" /><br/> <h3>{L_DOESNT_REPRESENT}</h3>
<input type="submit" value="&raquo;" name="dismiss" style="font-size:15px;" class="bouton" /> <select class="categoryList" name="cat_dismissed[]" multiple="multiple" size="30">
</div>
<div style="float:right;padding:10px;width:300px;">
<span class="titreMenu">{L_DOESNT_REPRESENT}</span><br />
<select style="width:280px" name="cat_dismissed[]" multiple="multiple" size="10">
<!-- BEGIN dismissed_option --> <!-- BEGIN dismissed_option -->
<option class="{dismissed_option.CLASS}" {dismissed_option.SELECTED} value="{dismissed_option.VALUE}">{dismissed_option.OPTION}</option> <option {dismissed_option.SELECTED} value="{dismissed_option.VALUE}">{dismissed_option.OPTION}</option>
<!-- END dismissed_option --> <!-- END dismissed_option -->
</select> </select>
</div> <p><input type="submit" value="&laquo;" name="elect" style="font-size:15px;" /></p>
</td>
</div> </tr>
</table>
<div style="clear:both;"></div>
<input type="reset" name="reset" value="{L_RESET}" class="bouton" />
</fieldset>
</form> </form>

View file

@ -1,3 +1,5 @@
<h1>{lang:remote_sites}</h1>
{REMOTE_SITE_TITLE} {REMOTE_SITE_TITLE}
<!-- BEGIN update --> <!-- BEGIN update -->

View file

@ -1,3 +1,5 @@
<h1>{lang:title_history}</h1>
<div class="admin">{L_STAT_TITLE}</div> <div class="admin">{L_STAT_TITLE}</div>
<img class="image" src="{IMG_REPORT}" alt="{L_STAT_MONTHLY_ALT}" /> <img class="image" src="{IMG_REPORT}" alt="{L_STAT_MONTHLY_ALT}" />
<div class="admin">{L_STAT_MONTH_TITLE}</div> <div class="admin">{L_STAT_MONTH_TITLE}</div>

View file

@ -1,3 +1,5 @@
<h1>{lang:title_thumbnails}</h1>
<!-- BEGIN results --> <!-- BEGIN results -->
<div class="admin">{L_RESULTS}</div> <div class="admin">{L_RESULTS}</div>
<table style="width:100%;"> <table style="width:100%;">

View file

@ -1,3 +1,5 @@
<h1>{lang:title_update}</h1>
<!-- BEGIN update --> <!-- BEGIN update -->
<div class="admin">{L_RESULT_UPDATE}</div> <div class="admin">{L_RESULT_UPDATE}</div>
<ul style="text-align:left;"> <ul style="text-align:left;">

View file

@ -1,3 +1,5 @@
<h1>{lang:title_liste_users}</h1>
<form class="filter" method="post" name="add_user" action="{F_ADD_ACTION}"> <form class="filter" method="post" name="add_user" action="{F_ADD_ACTION}">
<fieldset> <fieldset>
<legend>{lang:Add a user}</legend> <legend>{lang:Add a user}</legend>
@ -83,7 +85,6 @@
<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_MOD}"><img src="./template/default/theme/profile.png" style="border:none" alt="profile" title="profile" /></a>
<a href="{user.U_PERM}"><img src="./template/default/theme/permissions.png" style="border:none" alt="{L_PERMISSIONS}" title="{L_PERMISSIONS}" /></a> <a href="{user.U_PERM}"><img src="./template/default/theme/permissions.png" style="border:none" alt="{L_PERMISSIONS}" title="{L_PERMISSIONS}" /></a>
</td> </td>
</tr> </tr>

View file

@ -0,0 +1,7 @@
<h1>{TITLE}</h1>
<form method="post" action="{F_ACTION}">
{DOUBLE_SELECT}
</form>
<p>{lang:Only private categories are listed}</p>

View file

@ -1,3 +1,5 @@
<h1>{lang:title_waiting}</h1>
<form action="{F_ACTION}" method="post"> <form action="{F_ACTION}" method="post">
<table style="width:100%;" > <table style="width:100%;" >
<tr class="throw"> <tr class="throw">

View file

@ -366,6 +366,10 @@ input,select,textarea
div#adminMain { div#adminMain {
text-align: left; text-align: left;
background-color: #5f5f5f;
border: 1px solid black;
display: block;
width: 100%;
} }
div#adminMain h2 { div#adminMain h2 {
@ -530,6 +534,22 @@ table.doubleSelect td {
padding: 0 5px; padding: 0 5px;
} }
div#adminMain h1 {
margin-top: 0;
background-image: url(theme/tableh1_bg.gif);
color: #e0e0e0;
font-family: 'Trebuchet MS', Verdana, sans-serif;
font-weight: 600;
font-size: 16px;
padding-right: 10px;
padding-left: 10px;
border-bottom: 1px solid black;
border-right: 1px solid black;
height: 25px;
line-height: 25px;
text-align: left;
}
div#adminMain dl { div#adminMain dl {
margin: 10px; margin: 10px;
} }
@ -543,3 +563,37 @@ div#adminMain dl>dt {
font-style: italic; font-style: italic;
font-size: 110%; font-size: 110%;
} }
div#theNavbar {
background-color: #5f5f5f;
border: 1px solid black;
text-align: left;
}
div#theNavbar>dl,
div#theNavbar>dl>dd
{
margin: 0;
}
div#theNavbar>dl>dt {
background-image: url(theme/tableh1_bg.gif);
color: #fff48e;
font-size: 12px;
font-weight: 600;
padding-top: 0;
padding-right: 10px;
padding-left: 10px;
border-bottom: 1px solid black;
border-right: 1px solid black;
height: 25px;
line-height: 25px;
text-align: center;
}
div#theNavbar>dl>dd>ul {
white-space: nowrap;
list-style-type: square;
padding-left: 15px;
margin: 5px;
}

Binary file not shown.