mirror of
https://github.com/Piwigo/Piwigo.git
synced 2026-07-20 08:33:03 +02:00
use new format of config table
git-svn-id: http://piwigo.org/svn/trunk@383 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
+41
-31
@@ -44,14 +44,16 @@ $Caracs = array("
|
||||
"ù" => "u", "ú" => "u", "û" => "u", "ü" => "u",
|
||||
"ý" => "y", "ÿ" => "y");
|
||||
//------------------------------ verification and registration of modifications
|
||||
$conf_infos =
|
||||
array( 'prefix_thumbnail','webmaster','mail_webmaster','access',
|
||||
'session_id_size','session_time','session_keyword','max_user_listbox',
|
||||
'show_comments','nb_comment_page','upload_available',
|
||||
'upload_maxfilesize', 'upload_maxwidth','upload_maxheight',
|
||||
'upload_maxwidth_thumbnail','upload_maxheight_thumbnail','log',
|
||||
'comments_validation','comments_forall','authorize_cookies',
|
||||
'mail_notification' );
|
||||
$conf_infos = array();
|
||||
$query = 'SELECT param';
|
||||
$query.= ' FROM '.CONFIG_TABLE;
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
while ( $row = mysql_fetch_array( $result ) )
|
||||
{
|
||||
array_push( $conf_infos, $row['param'] );
|
||||
}
|
||||
|
||||
$default_user_infos =
|
||||
array( 'nb_image_line','nb_line_page','language','maxwidth',
|
||||
'maxheight','expand','show_nb_comments','short_period','long_period',
|
||||
@@ -198,24 +200,24 @@ if ( isset( $_POST['submit'] ) )
|
||||
// updating configuraiton if no error found
|
||||
if ( count( $error ) == 0 )
|
||||
{
|
||||
mysql_query( 'DELETE FROM '.PREFIX_TABLE.'config;' );
|
||||
$query = 'INSERT INTO '.PREFIX_TABLE.'config';
|
||||
$query.= ' (';
|
||||
foreach ( $conf_infos as $i => $conf_info ) {
|
||||
if ( $i > 0 ) $query.= ',';
|
||||
$query.= $conf_info;
|
||||
foreach ( $conf_infos as $conf_info ) {
|
||||
if ( isset( $_POST[$conf_info] ) )
|
||||
{
|
||||
$query = 'UPDATE '.CONFIG_TABLE;
|
||||
$query.= ' SET value = ';
|
||||
if ( $_POST[$conf_info] == '' )
|
||||
{
|
||||
$query.= 'NULL';
|
||||
}
|
||||
else
|
||||
{
|
||||
$query.= "'".$_POST[$conf_info]."'";
|
||||
}
|
||||
$query.= " WHERE param = '".$conf_info."'";
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
}
|
||||
}
|
||||
$query.= ')';
|
||||
$query.= ' VALUES';
|
||||
$query.= ' (';
|
||||
foreach ( $conf_infos as $i => $conf_info ) {
|
||||
if ( $i > 0 ) $query.= ',';
|
||||
if ( $_POST[$conf_info] == '' ) $query.= 'NULL';
|
||||
else $query.= "'".$_POST[$conf_info]."'";
|
||||
}
|
||||
$query.= ')';
|
||||
$query.= ';';
|
||||
mysql_query( $query );
|
||||
|
||||
$query = 'UPDATE '.USERS_TABLE;
|
||||
$query.= ' SET';
|
||||
@@ -248,12 +250,20 @@ if ( isset( $_POST['submit'] ) )
|
||||
else
|
||||
{
|
||||
//--------------------------------------------------------- data initialization
|
||||
$query = 'SELECT '.implode( ',', $conf_infos );
|
||||
$query .= ' FROM '.PREFIX_TABLE.'config;';
|
||||
$row = mysql_fetch_array( mysql_query( $query ) );
|
||||
foreach ( $conf_infos as $info ) {
|
||||
if ( isset( $row[$info] ) ) $$info = $row[$info];
|
||||
else $$info = '';
|
||||
$query = 'SELECT param,value';
|
||||
$query.= ' FROM '.CONFIG_TABLE;
|
||||
$query.= ';';
|
||||
$result = mysql_query( $query );
|
||||
while ( $row =mysql_fetch_array( $result ) )
|
||||
{
|
||||
if ( isset( $row['value'] ) )
|
||||
{
|
||||
$$row['param'] = $row['value'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$$row['param'] = '';
|
||||
}
|
||||
}
|
||||
|
||||
$query = 'SELECT '.implode( ',', $default_user_infos );
|
||||
|
||||
+19
-24
@@ -24,6 +24,7 @@
|
||||
// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
|
||||
// | USA. |
|
||||
// +-----------------------------------------------------------------------+
|
||||
|
||||
if( !defined("PHPWG_ROOT_PATH") )
|
||||
{
|
||||
die ("Hacking attempt!");
|
||||
@@ -166,35 +167,29 @@ $user_ip = encode_ip($client_ip);
|
||||
// Setup forum wide options, if this fails then we output a CRITICAL_ERROR
|
||||
// since basic forum information is not available
|
||||
//
|
||||
$sql = 'SELECT * FROM '.CONFIG_TABLE;
|
||||
if( !($result = mysql_query($sql)) )
|
||||
$query = 'SELECT param,value';
|
||||
$query.= ' FROM '.CONFIG_TABLE;
|
||||
$query.= ';';
|
||||
if( !( $result = mysql_query( $query ) ) )
|
||||
{
|
||||
die("Could not query config information");
|
||||
}
|
||||
|
||||
$row =mysql_fetch_array($result);
|
||||
// rertieving the configuration informations for site
|
||||
// $infos array is used to know the fields to retrieve in the table "config"
|
||||
// Each field becomes an information of the array $conf.
|
||||
// Example :
|
||||
// prefix_thumbnail --> $conf['prefix_thumbnail']
|
||||
$infos = array( 'prefix_thumbnail', 'webmaster', 'mail_webmaster', 'access',
|
||||
'session_id_size', 'session_keyword', 'session_time',
|
||||
'max_user_listbox', 'show_comments', 'nb_comment_page',
|
||||
'upload_available', 'upload_maxfilesize', 'upload_maxwidth',
|
||||
'upload_maxheight', 'upload_maxwidth_thumbnail',
|
||||
'upload_maxheight_thumbnail','log','comments_validation',
|
||||
'comments_forall','authorize_cookies','mail_notification' );
|
||||
// affectation of each field of the table "config" to an information of the
|
||||
// array $conf.
|
||||
foreach ( $infos as $info ) {
|
||||
if ( isset( $row[$info] ) ) $conf[$info] = $row[$info];
|
||||
else $conf[$info] = '';
|
||||
// If the field is true or false, the variable is transformed into a boolean
|
||||
// value.
|
||||
if ( $conf[$info] == 'true' or $conf[$info] == 'false' )
|
||||
while ( $row =mysql_fetch_array( $result ) )
|
||||
{
|
||||
if ( isset( $row['value'] ) )
|
||||
{
|
||||
$conf[$info] = get_boolean( $conf[$info] );
|
||||
$conf[$row['param']] = $row['value'];
|
||||
}
|
||||
else
|
||||
{
|
||||
$conf[$row['param']] = '';
|
||||
}
|
||||
// If the field is true or false, the variable is transformed into a
|
||||
// boolean value.
|
||||
if ( $conf[$row['param']] == 'true' or $conf[$row['param']] == 'false' )
|
||||
{
|
||||
$conf[$row['param']] = get_boolean( $conf[$row['param']] );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user