2003-11-02 10:22:14 +00:00
|
|
|
<?php
|
2004-02-07 19:36:44 +00:00
|
|
|
// +-----------------------------------------------------------------------+
|
2004-11-06 21:12:59 +00:00
|
|
|
// | PhpWebGallery - a PHP based picture gallery |
|
|
|
|
// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net |
|
2006-02-28 01:13:16 +00:00
|
|
|
// | Copyright (C) 2003-2006 PhpWebGallery Team - http://phpwebgallery.net |
|
2004-02-07 19:36:44 +00:00
|
|
|
// +-----------------------------------------------------------------------+
|
2004-11-06 21:12:59 +00:00
|
|
|
// | branch : BSF (Best So Far)
|
2004-02-07 19:36:44 +00:00
|
|
|
// | file : $RCSfile$
|
|
|
|
// | last update : $Date$
|
|
|
|
// | last modifier : $Author$
|
|
|
|
// | revision : $Revision$
|
|
|
|
// +-----------------------------------------------------------------------+
|
|
|
|
// | This program is free software; you can redistribute it and/or modify |
|
|
|
|
// | it under the terms of the GNU General Public License as published by |
|
|
|
|
// | the Free Software Foundation |
|
|
|
|
// | |
|
|
|
|
// | This program is distributed in the hope that it will be useful, but |
|
|
|
|
// | WITHOUT ANY WARRANTY; without even the implied warranty of |
|
|
|
|
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|
|
|
|
// | General Public License for more details. |
|
|
|
|
// | |
|
|
|
|
// | You should have received a copy of the GNU General Public License |
|
|
|
|
// | along with this program; if not, write to the Free Software |
|
|
|
|
// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
|
|
|
|
// | USA. |
|
|
|
|
// +-----------------------------------------------------------------------+
|
2003-11-02 10:22:14 +00:00
|
|
|
|
2004-02-02 00:55:18 +00:00
|
|
|
//----------------------------------------------------------- include
|
2004-02-19 00:31:09 +00:00
|
|
|
define('PHPWG_ROOT_PATH','./');
|
2004-03-20 00:52:37 +00:00
|
|
|
define('IN_ADMIN', true);
|
2004-02-19 00:31:09 +00:00
|
|
|
include_once( PHPWG_ROOT_PATH.'include/common.inc.php' );
|
2006-03-09 22:46:28 +00:00
|
|
|
|
|
|
|
include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
|
2006-12-14 00:58:57 +00:00
|
|
|
include_once(PHPWG_ROOT_PATH.'admin/include/functions_plugins.inc.php');
|
2006-03-09 22:46:28 +00:00
|
|
|
|
|
|
|
// +-----------------------------------------------------------------------+
|
|
|
|
// | Check Access and exit when user status is not ok |
|
|
|
|
// +-----------------------------------------------------------------------+
|
|
|
|
check_status(ACCESS_ADMINISTRATOR);
|
2005-08-08 20:52:19 +00:00
|
|
|
|
|
|
|
// +-----------------------------------------------------------------------+
|
|
|
|
// | synchronize user informations |
|
|
|
|
// +-----------------------------------------------------------------------+
|
|
|
|
|
|
|
|
sync_users();
|
|
|
|
|
2006-12-28 00:06:06 +00:00
|
|
|
// +-----------------------------------------------------------------------+
|
|
|
|
// | Check configuration and add notes on problem |
|
|
|
|
// +-----------------------------------------------------------------------+
|
|
|
|
|
|
|
|
check_conf();
|
|
|
|
|
2005-08-17 14:25:38 +00:00
|
|
|
// +-----------------------------------------------------------------------+
|
|
|
|
// | variables init |
|
|
|
|
// +-----------------------------------------------------------------------+
|
2004-03-20 00:52:37 +00:00
|
|
|
|
2007-01-08 00:16:10 +00:00
|
|
|
unset($page['page']);
|
|
|
|
|
|
|
|
if
|
|
|
|
(
|
|
|
|
isset($_GET['page'])
|
2005-08-17 14:25:38 +00:00
|
|
|
and preg_match('/^[a-z_]*$/', $_GET['page'])
|
2007-01-08 00:16:10 +00:00
|
|
|
)
|
2003-11-02 10:22:14 +00:00
|
|
|
{
|
2007-01-08 00:16:10 +00:00
|
|
|
if
|
|
|
|
(
|
|
|
|
(!isset($_GET['page_type']) or $_GET['page_type'] == 'standard')
|
|
|
|
and is_file(PHPWG_ROOT_PATH.'admin/'.$_GET['page'].'.php')
|
|
|
|
)
|
|
|
|
{
|
|
|
|
$page['page']['type'] = 'standard';
|
|
|
|
$page['page']['name'] = $_GET['page'];
|
|
|
|
}
|
|
|
|
else if
|
|
|
|
(
|
|
|
|
(isset($_GET['page_type']) and $_GET['page_type'] == 'plugin')
|
|
|
|
and isset($_GET['plugin_id'])
|
|
|
|
and preg_match('/^[a-z_]*$/', $_GET['plugin_id'])
|
|
|
|
and is_file(PHPWG_PLUGINS_PATH.$_GET['plugin_id'].'/admin/'.$_GET['page'].'.php')
|
|
|
|
)
|
|
|
|
{
|
|
|
|
if (function_exists('mysql_real_escape_string'))
|
|
|
|
{
|
|
|
|
$page['page']['plugin_id'] = mysql_real_escape_string($_GET['plugin_id']);
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
$page['page']['plugin_id'] = mysql_escape_string($_GET['plugin_id']);
|
|
|
|
}
|
|
|
|
|
2007-01-08 05:48:37 +00:00
|
|
|
$check_db_plugin = get_db_plugins('active', $page['page']['plugin_id']);
|
2007-01-08 00:16:10 +00:00
|
|
|
if (!empty($check_db_plugin))
|
|
|
|
{
|
|
|
|
$page['page']['type'] = $_GET['page_type'];
|
|
|
|
$page['page']['name'] = $_GET['page'];
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
unset($page['page']);
|
|
|
|
}
|
|
|
|
unset($check_db_plugin);
|
|
|
|
}
|
2003-11-02 10:22:14 +00:00
|
|
|
}
|
2007-01-08 00:16:10 +00:00
|
|
|
|
|
|
|
if (!isset($page['page']))
|
2003-11-02 10:22:14 +00:00
|
|
|
{
|
2007-01-08 00:16:10 +00:00
|
|
|
if (isset($_GET['page_type']) and $_GET['page_type'] == 'plugin')
|
|
|
|
{
|
|
|
|
$page['page']['type'] = 'standard';
|
|
|
|
$page['page']['name'] = 'plugins';
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
$page['page']['type'] = 'standard';
|
|
|
|
$page['page']['name'] = 'intro';
|
|
|
|
}
|
2003-11-02 10:22:14 +00:00
|
|
|
}
|
2004-03-20 00:52:37 +00:00
|
|
|
|
2006-12-14 00:58:57 +00:00
|
|
|
$page['errors'] = array();
|
|
|
|
$page['infos'] = array();
|
|
|
|
|
2004-03-20 00:52:37 +00:00
|
|
|
$link_start = PHPWG_ROOT_PATH.'admin.php?page=';
|
2004-11-13 13:43:53 +00:00
|
|
|
$conf_link = $link_start.'configuration&section=';
|
2004-11-23 22:31:24 +00:00
|
|
|
$opt_link = $link_start.'cat_options&section=';
|
2004-03-20 00:52:37 +00:00
|
|
|
//----------------------------------------------------- template initialization
|
- improvement: long localized messages are in HTML files instead of $lang
array. This is the case of admin/help and about pages.
- deletion: of unused functions (ts_to_mysqldt, is_image, TN_exists,
check_date_format, date_convert, get_category_directories,
get_used_metadata_list, array_remove, pwg_write_debug,
get_group_restrictions, get_all_group_restrictions, is_group_allowed,
style_select, deprecated_getAttribute).
- new: many new contextual help pages to replace descriptions previously
included in pages.
- modification: reorganisation of language files. Deletion of unused
language keys, alphabetical sort. No faq.lang.php anymore (replaced by
help.html). Only done for en_UK.iso-8859-1.
git-svn-id: http://piwigo.org/svn/trunk@862 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-09-14 21:57:05 +00:00
|
|
|
$title = l10n('PhpWebGallery Administration'); // for include/page_header.php
|
2006-03-09 01:57:13 +00:00
|
|
|
$page['page_banner'] = '<h1>'.l10n('PhpWebGallery Administration').'</h1>';
|
- new : HTML BODY identifier to let CSS stylesheets manage specific
behaviour.
- deletion : admin/search useless
- improvement : in admin/user_list, special behaviour for true/false fields
(expand, show_comments)
- new : gallery_title and gallery_description are displayed at the top of
each page.
- improvement : simplification in HTML for categories menu.
- improvement : standardization of presentation in all public pages
(identification, registration, search, profile, notification, comments,
etc.)
(not in ChangeLog, below this line)
- add forgotten notification.php (should have been added in a previous
commit)
- [template cclear] deletion of useless class .bouton
- [template cclear] for test purpose, new presentation of register page
(using FORM.filter)
- [template cclear] adaptation of admin/group_list from template default
- [template cclear] deletion of obsolete admin/infos_images
- [template cclear] deletion of obsolete admin/search_username
- [template cclear] new icon register.png
git-svn-id: http://piwigo.org/svn/trunk@850 68402e56-0260-453c-a942-63ccdbb3a9ee
2005-08-25 22:43:47 +00:00
|
|
|
$page['body_id'] = 'theAdminPage';
|
2004-03-20 00:52:37 +00:00
|
|
|
include(PHPWG_ROOT_PATH.'include/page_header.php');
|
|
|
|
|
2005-08-17 14:25:38 +00:00
|
|
|
$template->set_filenames(array('admin' => 'admin.tpl'));
|
2004-11-23 22:31:24 +00:00
|
|
|
|
2005-08-17 14:25:38 +00:00
|
|
|
$template->assign_vars(
|
|
|
|
array(
|
2006-02-08 01:17:07 +00:00
|
|
|
'U_SITE_MANAGER'=> $link_start.'site_manager',
|
2006-01-15 13:45:42 +00:00
|
|
|
'U_HISTORY'=> $link_start.'stats',
|
|
|
|
'U_FAQ'=> $link_start.'help',
|
|
|
|
'U_SITES'=> $link_start.'remote_site',
|
|
|
|
'U_MAINTENANCE'=> $link_start.'maintenance',
|
2006-03-21 22:58:59 +00:00
|
|
|
'U_NOTIFICATION_BY_MAIL'=> $link_start.'notification_by_mail',
|
2006-12-14 21:37:51 +00:00
|
|
|
'U_ADVANCED_FEATURE'=> $link_start.'advanced_feature',
|
2006-01-15 13:45:42 +00:00
|
|
|
'U_CONFIG_GENERAL'=> $conf_link.'general',
|
|
|
|
'U_CONFIG_COMMENTS'=> $conf_link.'comments',
|
|
|
|
'U_CONFIG_DISPLAY'=> $conf_link.'default',
|
|
|
|
'U_CATEGORIES'=> $link_start.'cat_list',
|
|
|
|
'U_MOVE'=> $link_start.'cat_move',
|
|
|
|
'U_CAT_UPLOAD'=> $opt_link.'upload',
|
|
|
|
'U_CAT_COMMENTS'=> $opt_link.'comments',
|
|
|
|
'U_CAT_VISIBLE'=> $opt_link.'visible',
|
|
|
|
'U_CAT_STATUS'=> $opt_link.'status',
|
|
|
|
'U_CAT_OPTIONS'=> $link_start.'cat_options',
|
2006-02-28 01:13:16 +00:00
|
|
|
'U_CAT_UPDATE'=> $link_start.'site_update&site=1',
|
2006-01-15 13:45:42 +00:00
|
|
|
'U_WAITING'=> $link_start.'waiting',
|
|
|
|
'U_COMMENTS'=> $link_start.'comments',
|
2006-02-15 02:29:26 +00:00
|
|
|
'U_RATING'=> $link_start.'rating',
|
2006-01-15 13:45:42 +00:00
|
|
|
'U_CADDIE'=> $link_start.'element_set&cat=caddie',
|
2006-04-02 22:26:19 +00:00
|
|
|
'U_TAGS'=> $link_start.'tags',
|
2006-01-15 13:45:42 +00:00
|
|
|
'U_THUMBNAILS'=> $link_start.'thumbnail',
|
|
|
|
'U_USERS'=> $link_start.'user_list',
|
|
|
|
'U_GROUPS'=> $link_start.'group_list',
|
2006-03-15 22:44:35 +00:00
|
|
|
'U_RETURN'=> make_index_url(),
|
2006-01-15 13:45:42 +00:00
|
|
|
'U_ADMIN'=> PHPWG_ROOT_PATH.'admin.php',
|
2005-11-19 23:46:18 +00:00
|
|
|
'L_ADMIN' => $lang['admin'],
|
|
|
|
'L_ADMIN_HINT' => $lang['hint_admin']
|
2005-08-17 14:25:38 +00:00
|
|
|
)
|
|
|
|
);
|
2006-12-16 10:22:31 +00:00
|
|
|
if ($conf['allow_web_services'])
|
|
|
|
{
|
|
|
|
$template->assign_block_vars(
|
|
|
|
'web_services',
|
|
|
|
array(
|
|
|
|
'U_WS_CHECKER'=> $link_start.'ws_checker',
|
|
|
|
)
|
|
|
|
);
|
|
|
|
}
|
2005-08-13 23:09:54 +00:00
|
|
|
if ($conf['allow_random_representative'])
|
|
|
|
{
|
|
|
|
$template->assign_block_vars(
|
|
|
|
'representative',
|
|
|
|
array(
|
2006-01-15 13:45:42 +00:00
|
|
|
'URL' => $opt_link.'representative'
|
2005-08-13 23:09:54 +00:00
|
|
|
)
|
|
|
|
);
|
|
|
|
}
|
2006-02-28 01:13:16 +00:00
|
|
|
|
2006-12-14 00:58:57 +00:00
|
|
|
// required before plugin page inclusion
|
|
|
|
trigger_action('plugin_admin_menu');
|
2005-08-17 14:25:38 +00:00
|
|
|
|
2007-01-08 00:16:10 +00:00
|
|
|
switch($page['page']['type'])
|
|
|
|
{
|
|
|
|
case 'standard':
|
|
|
|
{
|
|
|
|
include(PHPWG_ROOT_PATH.'admin/'.$page['page']['name'].'.php');
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
case 'plugin':
|
|
|
|
{
|
|
|
|
include(PHPWG_PLUGINS_PATH.$page['page']['plugin_id'].'/admin/'.$page['page']['name'].'.php');
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
default:
|
|
|
|
{
|
|
|
|
die ("Hacking attempt!");
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2005-06-11 14:10:04 +00:00
|
|
|
|
2006-12-14 00:58:57 +00:00
|
|
|
//------------------------------------------------------------- content display
|
|
|
|
$template->assign_block_vars('plugin_menu.menu_item',
|
|
|
|
array(
|
|
|
|
'NAME' => l10n('admin'),
|
|
|
|
'URL' => $link_start.'plugins'
|
|
|
|
)
|
|
|
|
);
|
|
|
|
if ( isset($page['plugin_admin_menu']) )
|
|
|
|
{
|
|
|
|
$plug_base_url = $link_start.'plugin&section=';
|
|
|
|
foreach ($page['plugin_admin_menu'] as $menu)
|
|
|
|
{
|
|
|
|
$template->assign_block_vars('plugin_menu.menu_item',
|
|
|
|
array(
|
|
|
|
'NAME' => $menu['title'],
|
|
|
|
'URL' => $plug_base_url.$menu['uid']
|
|
|
|
)
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2005-06-11 14:10:04 +00:00
|
|
|
// +-----------------------------------------------------------------------+
|
|
|
|
// | errors & infos |
|
|
|
|
// +-----------------------------------------------------------------------+
|
2005-08-17 14:25:38 +00:00
|
|
|
|
2005-06-11 14:10:04 +00:00
|
|
|
if (count($page['errors']) != 0)
|
|
|
|
{
|
|
|
|
foreach ($page['errors'] as $error)
|
|
|
|
{
|
|
|
|
$template->assign_block_vars('errors.error',array('ERROR'=>$error));
|
|
|
|
}
|
|
|
|
}
|
2005-08-17 14:25:38 +00:00
|
|
|
|
2005-06-11 14:10:04 +00:00
|
|
|
if (count($page['infos']) != 0)
|
|
|
|
{
|
|
|
|
foreach ($page['infos'] as $info)
|
|
|
|
{
|
|
|
|
$template->assign_block_vars('infos.info',array('INFO'=>$info));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2005-01-13 10:18:49 +00:00
|
|
|
$template->parse('admin');
|
2004-03-20 00:52:37 +00:00
|
|
|
include(PHPWG_ROOT_PATH.'include/page_tail.php');
|
2005-08-17 14:25:38 +00:00
|
|
|
|
2004-12-25 19:33:36 +00:00
|
|
|
// +-----------------------------------------------------------------------+
|
|
|
|
// | order permission refreshment |
|
|
|
|
// +-----------------------------------------------------------------------+
|
2005-08-17 14:25:38 +00:00
|
|
|
|
2004-12-25 19:33:36 +00:00
|
|
|
$query = '
|
2005-08-08 20:52:19 +00:00
|
|
|
UPDATE '.USER_CACHE_TABLE.'
|
2004-12-25 19:33:36 +00:00
|
|
|
SET need_update = \'true\'
|
|
|
|
;';
|
|
|
|
pwg_query($query);
|
2004-02-11 23:20:38 +00:00
|
|
|
?>
|