diff options
author | plegall <plg@piwigo.org> | 2005-08-15 22:01:00 +0000 |
---|---|---|
committer | plegall <plg@piwigo.org> | 2005-08-15 22:01:00 +0000 |
commit | 149edc131d7cac50dfac0a9d00c0a36c4355ec9a (patch) | |
tree | d960644608912a1f6d6ba79c89104089bb472d3a | |
parent | 3b957eb48093b4705cd98d0f9c70ea932a37e633 (diff) |
- new : introduction page to administration section. This page gives
informations about PhpWebGallery version, PHP version, MySQL version,
gallery database informations (number of categories, elements, users,
comments). Ability to request phpwebgallery.net for upgrade.
- deletion : of obsolete admin/admin_phpinfo.php page replaced by a link in
introduction page.
git-svn-id: http://piwigo.org/svn/trunk@814 68402e56-0260-453c-a942-63ccdbb3a9ee
-rw-r--r-- | admin.php | 20 | ||||
-rw-r--r-- | admin/admin_phpinfo.php | 82 | ||||
-rw-r--r-- | admin/intro.php | 202 | ||||
-rw-r--r-- | doc/ChangeLog | 11 | ||||
-rw-r--r-- | template/default/admin.tpl | 1 | ||||
-rw-r--r-- | template/default/default.css | 26 |
6 files changed, 250 insertions, 92 deletions
@@ -54,7 +54,8 @@ else if (isset($_GET['user_id'])) $username = get_username($_GET['user_id']); } -if (isset( $_GET['page'] )) +$_GET['page'] = isset($_GET['page']) ? $_GET['page'] : 'intro'; + switch ( $_GET['page'] ) { case 'user_list' : @@ -97,8 +98,6 @@ switch ( $_GET['page'] ) $title = $lang['title_update']; $page_valide = true; break; case 'configuration': $title = $lang['title_configuration']; $page_valide = true; break; - case 'admin_phpinfo': - $title = $lang['phpinfos']; $page_valide = true; break; case 'help': $title = $lang['title_instructions']; $page_valide = true; break; case 'cat_perm': @@ -186,8 +185,17 @@ switch ( $_GET['page'] ) // $page_valide = true; // break; // } - default: - $title = $lang['title_default']; break; + case 'intro' : + { + $_GET['page'] = 'intro'; + $title = $lang['title_default']; + $page_valide = true; + break; + } + default : + { + break; + } } if ( $title == '' ) $title = $lang['title_default']; @@ -225,7 +233,6 @@ $template->assign_vars(array( 'L_GALLERY_INDEX'=>$lang['home'], 'L_GENERAL'=>$lang['general'], 'L_DEFAULT'=>$lang['gallery_default'], - 'L_PHPINFO'=>$lang['phpinfos'], 'L_HISTORY'=>$lang['history'], 'L_FAQ'=>$lang['instructions'], 'L_CONFIGURATION'=>$lang['config'], @@ -255,7 +262,6 @@ $template->assign_vars(array( 'U_HISTORY'=>add_session_id($link_start.'stats' ), 'U_FAQ'=>add_session_id($link_start.'help' ), 'U_SITES'=>add_session_id($link_start.'remote_site'), - 'U_PHPINFO'=>add_session_id($link_start.'admin_phpinfo' ), 'U_MAINTENANCE'=>add_session_id($link_start.'maintenance'), 'U_CONFIG_GENERAL'=>add_session_id($conf_link.'general' ), 'U_CONFIG_COMMENTS'=>add_session_id($conf_link.'comments' ), diff --git a/admin/admin_phpinfo.php b/admin/admin_phpinfo.php deleted file mode 100644 index 8b7c3230e..000000000 --- a/admin/admin_phpinfo.php +++ /dev/null @@ -1,82 +0,0 @@ -<?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$ -// | 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. | -// +-----------------------------------------------------------------------+ - -if( !defined("PHPWG_ROOT_PATH") ) -{ - die ("Hacking attempt!"); -} - -include_once( PHPWG_ROOT_PATH.'admin/include/isadmin.inc.php' ); - -ob_start(); -phpinfo(INFO_GENERAL | INFO_CONFIGURATION | INFO_MODULES | INFO_VARIABLES); -$phpinfo = ob_get_contents(); -ob_end_clean(); - -// Get used layout -$layout = (preg_match('#bgcolor#i', $phpinfo)) ? 'old' : 'new'; -$output=''; -// Here we play around a little with the PHP Info HTML to try and stylise -// it along phpBB's lines ... hopefully without breaking anything. The idea -// for this was nabbed from the PHP annotated manual -preg_match_all('#<body[^>]*>(.*)</body>#siU', $phpinfo, $output); - -switch ($layout) -{ - case 'old': - $output = preg_replace('#<table#', '<table class="table2"', $output[1][0]); - $output = preg_replace('# bgcolor="\#(\w){6}"#', '', $output); - $output = preg_replace('#(\w),(\w)#', '\1, \2', $output); - $output = preg_replace('#border="0" cellpadding="3" cellspacing="1" width="600"#', 'border="0" cellspacing="1" cellpadding="4" width="95%"', $output); - $output = preg_replace('#<tr valign="top"><td align="left">(.*?<a .*?</a>)(.*?)</td></tr>#s', '<tr class="row1"><td style="{background-color: #9999cc;}"><table width="100%" cellspacing="0" cellpadding="0" border="0"><tr><td style="{background-color: #9999cc;}">\2</td><td style="{background-color: #9999cc;}">\1</td></tr></table></td></tr>', $output); - $output = preg_replace('#<tr valign="baseline"><td[ ]{0,1}><b>(.*?)</b>#', '<tr><td class="row1" nowrap="nowrap">\1', $output); - $output = preg_replace('#<td align="(center|left)">#', '<td class="row2">', $output); - $output = preg_replace('#<td>#', '<td class="row2">', $output); - $output = preg_replace('#valign="middle"#', '', $output); - $output = preg_replace('#<tr >#', '<tr>', $output); - $output = preg_replace('#<hr(.*?)>#', '', $output); - $output = preg_replace('#<h1 align="center">#i', '<h1>', $output); - $output = preg_replace('#<h2 align="center">#i', '<h2>', $output); - break; - case 'new': - $output = preg_replace('#<table#', '<table class="table2"', $output[1][0]); - $output = preg_replace('#(\w),(\w)#', '\1, \2', $output); - $output = preg_replace('#border="0" cellpadding="3" width="600"#', 'border="0" cellspacing="1" cellpadding="2" width="95%"', $output); - $output = preg_replace('#<tr class="v"><td>(.*?<a .*?</a>)(.*?)</td></tr>#s', '<tr class="throw"><td><table width="100%" cellspacing="0" cellpadding="0" border="0"><tr><td>\2</td><td>\1</td></tr></table></td></tr>', $output); - $output = preg_replace('#<td>#', '<td style="background-color: #444444;text-align:center;">', $output); - $output = preg_replace('#<th>#', '<th class="throw">', $output); - $output = preg_replace('#class="e"#', 'class="row1"', $output); - $output = preg_replace('#class="v"#', 'class="row2"', $output); - $output = preg_replace('# class="h"#', '', $output); - $output = preg_replace('#<hr />#', '', $output); - preg_match_all('#<div class="center">(.*)</div>#siU', $output, $output); - $output = $output[1][0]; - break; -} -$template->assign_var('ADMIN_CONTENT',$output); - -?>
\ No newline at end of file diff --git a/admin/intro.php b/admin/intro.php new file mode 100644 index 000000000..25369e832 --- /dev/null +++ b/admin/intro.php @@ -0,0 +1,202 @@ +<?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$ +// | 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. | +// +-----------------------------------------------------------------------+ + +if (!defined('PHPWG_ROOT_PATH')) +{ + die ("Hacking attempt!"); +} +include_once(PHPWG_ROOT_PATH.'admin/include/isadmin.inc.php'); + +// +-----------------------------------------------------------------------+ +// | actions | +// +-----------------------------------------------------------------------+ + +// Check for upgrade : code inspired from punbb +if (isset($_GET['action']) and 'check_upgrade' == $_GET['action']) +{ + if (!ini_get('allow_url_fopen')) + { + array_push( + $page['errors'], + l10n('Unable to check for upgrade since allow_url_fopen is disabled.') + ); + } + else + { + $versions = array('current' => PHPWG_VERSION); + $lines = @file('http://www.phpwebgallery.net/latest_version'); + + // if the current version is a BSF (development branch) build, we check + // the first line, for stable versions, we check the second line + if (preg_match('/^BSF/', $versions{'current'})) + { + $versions{'latest'} = trim($lines[0]); + + // because integer are limited to 4,294,967,296 we need to split BSF + // versions in date.time + foreach ($versions as $key => $value) + { + $versions{$key} = + preg_replace('/BSF_(\d{8})(\d{4})/', '$1.$2', $value); + } + } + else + { + $versions{'latest'} = trim($lines[1]); + } + + if ('' == $versions{'latest'}) + { + array_push( + $page['errors'], + l10n('Check for upgrade failed for unknown reasons.') + ); + } + else if ('%PWGVERSION%' == $versions{'current'}) + { + array_push( + $page['infos'], + l10n('You are running on development sources, no check possible.') + ); + } + else if (version_compare($versions{'current'}, $versions{'latest'}) < 0) + { + array_push( + $page['infos'], + l10n('A new version of PhpWebGallery is available.') + ); + } + else + { + array_push( + $page['infos'], + l10n('You are running the latest version of PhpWebGallery.') + ); + } + } +} +// Show phpinfo() output +else if (isset($_GET['action']) and 'phpinfo' == $_GET['action']) +{ + phpinfo(); + exit(); +} + +// +-----------------------------------------------------------------------+ +// | template init | +// +-----------------------------------------------------------------------+ + +$template->set_filenames(array('intro' => 'admin/intro.tpl')); + +list($mysql_version) = mysql_fetch_row(pwg_query('SELECT VERSION();')); + +$query = ' +SELECT COUNT(*) + FROM '.IMAGES_TABLE.' +;'; +list($nb_elements) = mysql_fetch_row(pwg_query($query)); + +$query = ' +SELECT COUNT(*) + FROM '.CATEGORIES_TABLE.' +;'; +list($nb_categories) = mysql_fetch_row(pwg_query($query)); + +$query = ' +SELECT COUNT(*) + FROM '.CATEGORIES_TABLE.' + WHERE dir IS NULL +;'; +list($nb_virtual) = mysql_fetch_row(pwg_query($query)); + +$query = ' +SELECT COUNT(*) + FROM '.CATEGORIES_TABLE.' + WHERE dir IS NOT NULL +;'; +list($nb_physical) = mysql_fetch_row(pwg_query($query)); + +$query = ' +SELECT COUNT(*) + FROM '.USERS_TABLE.' +;'; +list($nb_users) = mysql_fetch_row(pwg_query($query)); + +$query = ' +SELECT COUNT(*) + FROM '.GROUPS_TABLE.' +;'; +list($nb_groups) = mysql_fetch_row(pwg_query($query)); + +$query = ' +SELECT COUNT(*) + FROM '.COMMENTS_TABLE.' +;'; +list($nb_comments) = mysql_fetch_row(pwg_query($query)); + +$query = ' +SELECT MIN(date_available) + FROM '.IMAGES_TABLE.' +;'; +list($first_date) = mysql_fetch_row(pwg_query($query)); + +$template->assign_vars( + array( + 'PWG_VERSION' => PHPWG_VERSION, + 'OS' => PHP_OS, + 'PHP_VERSION' => phpversion(), + 'MYSQL_VERSION' => $mysql_version, + 'DB_ELEMENTS' => sprintf(l10n('%d elements'), $nb_elements), + 'DB_CATEGORIES' => + sprintf( + l10n('%d categories including %d physical and %d virtual'), + $nb_categories, + $nb_physical, + $nb_virtual + ), + 'DB_USERS' => sprintf(l10n('%d users'), $nb_users), + 'DB_GROUPS' => sprintf(l10n('%d groups'), $nb_groups), + 'DB_COMMENTS' => sprintf(l10n('%d comments'), $nb_comments), + 'DB_DATE' => + sprintf( + l10n('first element added on %s'), + format_date($first_date, 'mysql_datetime') + ), + 'U_CHECK_UPGRADE' => + add_session_id(PHPWG_ROOT_PATH.'admin.php?action=check_upgrade'), + 'U_PHPINFO' => + add_session_id(PHPWG_ROOT_PATH.'admin.php?action=phpinfo') + ) + ); + +// +-----------------------------------------------------------------------+ +// | sending html code | +// +-----------------------------------------------------------------------+ + +$template->assign_var_from_handle('ADMIN_CONTENT', 'intro'); + +?>
\ No newline at end of file diff --git a/doc/ChangeLog b/doc/ChangeLog index a87ebf2ac..2159cdf39 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,14 @@ +2005-08-15 Pierrick LE GALL + + * new : introduction page to administration section. This page + gives informations about PhpWebGallery version, PHP version, MySQL + version, gallery database informations (number of categories, + elements, users, comments). Ability to request phpwebgallery.net + for upgrade. + + * deletion : of obsolete admin/admin_phpinfo.php page replaced by + a link in introduction page. + 2005-08-14 Pierrick LE GALL * modification : simplification of HTML/CSS code for double select diff --git a/template/default/admin.tpl b/template/default/admin.tpl index 39879fffb..ab8df9d63 100644 --- a/template/default/admin.tpl +++ b/template/default/admin.tpl @@ -17,7 +17,6 @@ <ul class="menu"> <li><a class="adminMenu" href="{U_FAQ}">{L_FAQ}</a></li> <li><a class="adminMenu" href="{U_SITES}">{L_SITES}</a></li> - <li><a class="adminMenu" href="{U_PHPINFO}">{L_PHPINFO}</a></li> <li><a class="adminMenu" href="{U_HISTORY}">{L_HISTORY}</a></li> <li><a class="adminMenu" href="{U_CAT_UPDATE}">{L_UPDATE}</a></li> <li><a class="adminMenu" href="{U_MAINTENANCE}">{lang:Maintenance}</a></li> diff --git a/template/default/default.css b/template/default/default.css index 352f5d5f1..bfadbfa81 100644 --- a/template/default/default.css +++ b/template/default/default.css @@ -26,8 +26,16 @@ input,select,textarea { color:#FFFFCC;} /* Forms font color */ /* ANCHORS */ -a { text-decoration:none; color:#FFFFFF;} -a:hover { text-decoration:none; color:#FFF48E;} +a { + text-decoration: none; + color: #F6B620; +} + +a:hover { + text-decoration:none; + color: #ffee40; +} + a.none:hover { text-decoration:none;} a.image:hover { text-decoration:none;} a.thumbLink:hover { text-decoration:none;} @@ -520,4 +528,18 @@ table.doubleSelect { table.doubleSelect td { padding: 0 5px; +} + +div#adminMain dl { + margin: 10px; +} + +div#adminMain dl>dd { + margin-bottom: 10px; +} + +div#adminMain dl>dt { + margin-bottom: 5px; + font-style: italic; + font-size: 110%; }
\ No newline at end of file |