diff --git a/phpBB/admin/admin_board.php b/phpBB/admin/admin_board.php
index 56ddc946d7..b74211f04d 100644
--- a/phpBB/admin/admin_board.php
+++ b/phpBB/admin/admin_board.php
@@ -16,16 +16,16 @@ define('IN_PHPBB', 1);
if( !empty($setmodules) )
{
$file = basename(__FILE__);
- $module['General']['Configuration'] = "$file?mode=config";
+ $module['General']['Configuration'] = "$file";
return;
}
//
// Let's set the root dir for phpBB
//
-$phpbb_root_path = "../";
+$phpbb_root_path = "./../";
require($phpbb_root_path . 'extension.inc');
-require('pagestart.' . $phpEx);
+require('./pagestart.' . $phpEx);
include($phpbb_root_path . 'includes/functions_selects.'.$phpEx);
//
@@ -43,10 +43,15 @@ else
{
$config_name = $row['config_name'];
$config_value = $row['config_value'];
- $default_config[$config_name] = $config_value;
+ $default_config[$config_name] = isset($HTTP_POST_VARS['submit']) ? str_replace("'", "\'", $config_value) : $config_value;
$new[$config_name] = ( isset($HTTP_POST_VARS[$config_name]) ) ? $HTTP_POST_VARS[$config_name] : $default_config[$config_name];
+ if ($config_name == 'cookie_name')
+ {
+ $cookie_name = str_replace('.', '_', $new['cookie_name']);
+ }
+
if( isset($HTTP_POST_VARS['submit']) )
{
$sql = "UPDATE " . CONFIG_TABLE . " SET
@@ -68,7 +73,7 @@ else
}
$style_select = style_select($new['default_style'], 'default_style', "../templates");
-$lang_select = language_select($new['default_lang'], 'default_lang', "../language");
+$lang_select = language_select($new['default_lang'], 'default_lang', "language");
$timezone_select = tz_select($new['board_timezone'], 'board_timezone');
$disable_board_yes = ( $new['board_disable'] ) ? "checked=\"checked\"" : "";
@@ -92,6 +97,9 @@ $activation_none = ( $new['require_activation'] == USER_ACTIVATION_NONE ) ? "che
$activation_user = ( $new['require_activation'] == USER_ACTIVATION_SELF ) ? "checked=\"checked\"" : "";
$activation_admin = ( $new['require_activation'] == USER_ACTIVATION_ADMIN ) ? "checked=\"checked\"" : "";
+$confirm_yes = ($new['enable_confirm']) ? 'checked="checked"' : '';
+$confirm_no = (!$new['enable_confirm']) ? 'checked="checked"' : '';
+
$board_email_form_yes = ( $new['board_email_form'] ) ? "checked=\"checked\"" : "";
$board_email_form_no = ( !$new['board_email_form'] ) ? "checked=\"checked\"" : "";
@@ -155,6 +163,8 @@ $template->assign_vars(array(
"L_NONE" => $lang['Acc_None'],
"L_USER" => $lang['Acc_User'],
"L_ADMIN" => $lang['Acc_Admin'],
+ "L_VISUAL_CONFIRM" => $lang['Visual_confirm'],
+ "L_VISUAL_CONFIRM_EXPLAIN" => $lang['Visual_confirm_explain'],
"L_COOKIE_SETTINGS" => $lang['Cookie_settings'],
"L_COOKIE_SETTINGS_EXPLAIN" => $lang['Cookie_settings_explain'],
"L_COOKIE_DOMAIN" => $lang['Cookie_domain'],
@@ -242,6 +252,9 @@ $template->assign_vars(array(
"ACTIVATION_USER_CHECKED" => $activation_user,
"ACTIVATION_ADMIN" => USER_ACTIVATION_ADMIN,
"ACTIVATION_ADMIN_CHECKED" => $activation_admin,
+ "CONFIRM_ENABLE" => $confirm_yes,
+ "CONFIRM_DISABLE" => $confirm_no,
+ "ACTIVATION_NONE_CHECKED" => $activation_none,
"BOARD_EMAIL_FORM_ENABLE" => $board_email_form_yes,
"BOARD_EMAIL_FORM_DISABLE" => $board_email_form_no,
"MAX_POLL_OPTIONS" => $new['max_poll_options'],
@@ -311,6 +324,6 @@ $template->assign_vars(array(
$template->pparse("body");
-include('page_footer_admin.'.$phpEx);
+include('./page_footer_admin.'.$phpEx);
?>
diff --git a/phpBB/admin/admin_db_utilities.php b/phpBB/admin/admin_db_utilities.php
index 00762f567c..ed7588c0c2 100644
--- a/phpBB/admin/admin_db_utilities.php
+++ b/phpBB/admin/admin_db_utilities.php
@@ -34,15 +34,10 @@ if( !empty($setmodules) )
{
$filename = basename(__FILE__);
$module['General']['Backup_DB'] = $filename . "?perform=backup";
- if(@phpversion() >= '4.0.0')
- {
- $file_uploads = @ini_get('file_uploads');
- }
- else
- {
- $file_uploads = @get_cfg_var('file_uploads');
- }
- if( ($file_uploads != 0 || empty($file_uploads)) && (strtolower($file_uploads) != 'off') && (@phpversion() != '4.0.4pl1') )
+
+ $file_uploads = (@phpversion() >= '4.0.0') ? @ini_get('file_uploads') : @get_cfg_var('file_uploads');
+
+ if( (empty($file_uploads) || $file_uploads != 0) && (strtolower($file_uploads) != 'off') && (@phpversion() != '4.0.4pl1') )
{
$module['General']['Restore_DB'] = $filename . "?perform=restore";
}
@@ -54,9 +49,9 @@ if( !empty($setmodules) )
// Load default header
//
$no_page_header = TRUE;
-$phpbb_root_path = "../";
+$phpbb_root_path = "./../";
require($phpbb_root_path . 'extension.inc');
-require('pagestart.' . $phpEx);
+require('./pagestart.' . $phpEx);
include($phpbb_root_path . 'includes/sql_parse.'.$phpEx);
//
@@ -375,7 +370,7 @@ function get_table_def_mysql($table, $crlf)
// Ok lets grab the fields...
//
$result = $db->sql_query($field_query);
- if(!result)
+ if(!$result)
{
message_die(GENERAL_ERROR, "Failed in get_table_def (show fields)", "", __LINE__, __FILE__, $field_query);
}
@@ -571,86 +566,69 @@ function get_table_content_postgresql($table, $handler)
function get_table_content_mysql($table, $handler)
{
global $db;
- //
- // Grab the data from the table.
- //
- $result = $db->sql_query("SELECT * FROM $table");
- if (!$result)
+ // Grab the data from the table.
+ if (!($result = $db->sql_query("SELECT * FROM $table")))
{
message_die(GENERAL_ERROR, "Failed in get_table_content (select *)", "", __LINE__, __FILE__, "SELECT * FROM $table");
}
- if($db->sql_numrows($result) > 0)
- {
- $schema_insert = "\n#\n# Table Data for $table\n#\n";
- }
- else
- {
- $schema_insert = "";
- }
-
- $handler($schema_insert);
-
- //
// Loop through the resulting rows and build the sql statement.
- //
-
- while ($row = $db->sql_fetchrow($result))
+ if ($row = $db->sql_fetchrow($result))
{
- $table_list = '(';
- $num_fields = $db->sql_numfields($result);
- //
- // Grab the list of field names.
- //
- for ($j = 0; $j < $num_fields; $j++)
- {
- $table_list .= $db->sql_fieldname($j, $result) . ', ';
- }
- //
- // Get rid of the last comma
- //
- $table_list = ereg_replace(', $', '', $table_list);
- $table_list .= ')';
- //
- // Start building the SQL statement.
- //
- $schema_insert = "INSERT INTO $table $table_list VALUES(";
- //
- // Loop through the rows and fill in data for each column
- //
- for ($j = 0; $j < $num_fields; $j++)
- {
- if(!isset($row[$j]))
- {
- //
- // If there is no data for the column set it to null.
- // There was a problem here with an extra space causing the
- // sql file not to reimport if the last column was null in
- // any table. Should be fixed now :) JLH
- //
- $schema_insert .= ' NULL,';
- }
- elseif ($row[$j] != '')
- {
- $schema_insert .= ' \'' . addslashes($row[$j]) . '\',';
- }
- else
- {
- $schema_insert .= '\'\',';
- }
- }
- //
- // Get rid of the the last comma.
- //
- $schema_insert = ereg_replace(',$', '', $schema_insert);
- $schema_insert .= ');';
- //
- // Go ahead and send the insert statement to the handler function.
- //
- $handler(trim($schema_insert));
+ $handler("\n#\n# Table Data for $table\n#\n");
+ $field_names = array();
+ // Grab the list of field names.
+ $num_fields = $db->sql_numfields($result);
+ $table_list = '(';
+ for ($j = 0; $j < $num_fields; $j++)
+ {
+ $field_names[$j] = $db->sql_fieldname($j, $result);
+ $table_list .= (($j > 0) ? ', ' : '') . $field_names[$j];
+
+ }
+ $table_list .= ')';
+
+ do
+ {
+ // Start building the SQL statement.
+ $schema_insert = "INSERT INTO $table $table_list VALUES(";
+
+ // Loop through the rows and fill in data for each column
+ for ($j = 0; $j < $num_fields; $j++)
+ {
+ $schema_insert .= ($j > 0) ? ', ' : '';
+
+ if(!isset($row[$field_names[$j]]))
+ {
+ //
+ // If there is no data for the column set it to null.
+ // There was a problem here with an extra space causing the
+ // sql file not to reimport if the last column was null in
+ // any table. Should be fixed now :) JLH
+ //
+ $schema_insert .= 'NULL';
+ }
+ elseif ($row[$field_names[$j]] != '')
+ {
+ $schema_insert .= '\'' . addslashes($row[$field_names[$j]]) . '\'';
+ }
+ else
+ {
+ $schema_insert .= '\'\'';
+ }
+ }
+
+ $schema_insert .= ');';
+
+ // Go ahead and send the insert statement to the handler function.
+ $handler(trim($schema_insert));
+
+ }
+ while ($row = $db->sql_fetchrow($result));
}
+
return(true);
}
@@ -671,7 +649,6 @@ function output_table_content($content)
//
// Begin program proper
//
-
if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
{
$perform = (isset($HTTP_POST_VARS['perform'])) ? $HTTP_POST_VARS['perform'] : $HTTP_GET_VARS['perform'];
@@ -680,22 +657,27 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
{
case 'backup':
- if( SQL_LAYER == 'oracle' || SQL_LAYER == 'odbc' || SQL_LAYER == 'mssql' )
+ $error = false;
+ switch(SQL_LAYER)
{
- switch(SQL_LAYER)
- {
- case 'oracle':
- $db_type = "Oracle";
- break;
- case 'odbc':
- $db_type = "ODBC";
- break;
- case 'mssql':
- $db_type = "MSSQL";
- break;
- }
+ case 'oracle':
+ $error = true;
+ break;
+ case 'db2':
+ $error = true;
+ break;
+ case 'msaccess':
+ $error = true;
+ break;
+ case 'mssql':
+ case 'mssql-odbc':
+ $error = true;
+ break;
+ }
- include('page_header_admin.'.$phpEx);
+ if ($error)
+ {
+ include('./page_header_admin.'.$phpEx);
$template->set_filenames(array(
"body" => "admin/admin_message_body.tpl")
@@ -708,11 +690,10 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
$template->pparse("body");
- break;
+ include('./page_footer_admin.'.$phpEx);
}
- $tables = array('auth_access', 'banlist', 'categories', 'config', 'disallow', 'forums', 'forum_prune', 'groups', 'posts', 'posts_text', 'privmsgs', 'privmsgs_text', 'ranks', 'search_results', 'search_results', 'search_wordlist', 'search_wordmatch', 'sessions', 'smilies', 'themes', 'themes_name', 'topics', 'topics_watch', 'user_group', 'users', 'vote_desc', 'vote_results', 'vote_voters', 'words');
-
+ $tables = array('auth_access', 'banlist', 'categories', 'config', 'disallow', 'forums', 'forum_prune', 'groups', 'posts', 'posts_text', 'privmsgs', 'privmsgs_text', 'ranks', 'search_results', 'search_wordlist', 'search_wordmatch', 'sessions', 'smilies', 'themes', 'themes_name', 'topics', 'topics_watch', 'user_group', 'users', 'vote_desc', 'vote_results', 'vote_voters', 'words', 'confirm');
$additional_tables = (isset($HTTP_POST_VARS['additional_tables'])) ? $HTTP_POST_VARS['additional_tables'] : ( (isset($HTTP_GET_VARS['additional_tables'])) ? $HTTP_GET_VARS['additional_tables'] : "" );
@@ -720,6 +701,8 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
$gzipcompress = (!empty($HTTP_POST_VARS['gzipcompress'])) ? $HTTP_POST_VARS['gzipcompress'] : ( (!empty($HTTP_GET_VARS['gzipcompress'])) ? $HTTP_GET_VARS['gzipcompress'] : 0 );
+ $drop = (!empty($HTTP_POST_VARS['drop'])) ? intval($HTTP_POST_VARS['drop']) : ( (!empty($HTTP_GET_VARS['drop'])) ? intval($HTTP_GET_VARS['drop']) : 0 );
+
if(!empty($additional_tables))
{
if(ereg(",", $additional_tables))
@@ -740,12 +723,11 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
if( !isset($HTTP_POST_VARS['backupstart']) && !isset($HTTP_GET_VARS['backupstart']))
{
- include('page_header_admin.'.$phpEx);
+ include('./page_header_admin.'.$phpEx);
$template->set_filenames(array(
"body" => "admin/db_utils_backup_body.tpl")
- );
-
+ );
$s_hidden_fields = "";
$template->assign_vars(array(
@@ -771,22 +753,26 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
}
else if( !isset($HTTP_POST_VARS['startdownload']) && !isset($HTTP_GET_VARS['startdownload']) )
{
+ if(is_array($additional_tables))
+ {
+ $additional_tables = implode(',', $additional_tables);
+ }
$template->set_filenames(array(
"body" => "admin/admin_message_body.tpl")
);
$template->assign_vars(array(
- "META" => "",
+ "META" => '',
"MESSAGE_TITLE" => $lang['Database_Utilities'] . " : " . $lang['Backup'],
"MESSAGE_TEXT" => $lang['Backup_download'])
);
- include('page_header_admin.php');
+ include('./page_header_admin.'.$phpEx);
$template->pparse("body");
- include('page_footer_admin.'.$phpEx);
+ include('./page_footer_admin.'.$phpEx);
}
header("Pragma: no-cache");
@@ -807,7 +793,7 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
{
@ob_start();
@ob_implicit_flush(0);
- header("Content-Type: text/x-delimtext; name=\"phpbb_db_backup.sql.gz\"");
+ header("Content-Type: application/x-gzip; name=\"phpbb_db_backup.sql.gz\"");
header("Content-disposition: attachment; filename=phpbb_db_backup.sql.gz");
}
else
@@ -832,15 +818,19 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
for($i = 0; $i < count($tables); $i++)
{
$table_name = $tables[$i];
- if(SQL_LAYER != 'mysql4')
+
+ switch (SQL_LAYER)
{
- $table_def_function = "get_table_def_" . SQL_LAYER;
- $table_content_function = "get_table_content_" . SQL_LAYER;
- }
- else
- {
- $table_def_function = "get_table_def_mysql";
- $table_content_function = "get_table_content_mysql";
+ case 'postgresql':
+ $table_def_function = "get_table_def_postgresql";
+ $table_content_function = "get_table_content_postgresql";
+ break;
+
+ case 'mysql':
+ case 'mysql4':
+ $table_def_function = "get_table_def_mysql";
+ $table_content_function = "get_table_content_mysql";
+ break;
}
if($backup_type != 'data')
@@ -868,12 +858,12 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
break;
case 'restore':
- if(!isset($restore_start))
+ if(!isset($HTTP_POST_VARS['restore_start']))
{
//
// Define Template files...
//
- include('page_header_admin.'.$phpEx);
+ include('./page_header_admin.'.$phpEx);
$template->set_filenames(array(
"body" => "admin/db_utils_restore_body.tpl")
@@ -907,7 +897,6 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
if($backup_file_tmpname == "" || $backup_file_name == "")
{
- include('page_header_admin.'.$phpEx);
message_die(GENERAL_MESSAGE, $lang['Restore_Error_no_file']);
}
//
@@ -916,7 +905,7 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
// a hackers attempt at getting us to process a local system
// file.
//
- if( file_exists($backup_file_tmpname) )
+ if( file_exists(phpbb_realpath($backup_file_tmpname)) )
{
if( preg_match("/^(text\/[a-zA-Z]+)|(application\/(x\-)?gzip(\-compressed)?)|(application\/octet-stream)$/is", $backup_file_type) )
{
@@ -943,7 +932,6 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
}
else
{
- include('page_header_admin.'.$phpEx);
message_die(GENERAL_ERROR, $lang['Restore_Error_decompress']);
}
}
@@ -958,13 +946,11 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
}
else
{
- include('page_header_admin.'.$phpEx);
message_die(GENERAL_ERROR, $lang['Restore_Error_filename'] ." $backup_file_type $backup_file_name");
}
}
else
{
- include('page_header_admin.'.$phpEx);
message_die(GENERAL_ERROR, $lang['Restore_Error_uploading']);
}
@@ -991,15 +977,13 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
if(!$result && ( !(SQL_LAYER == 'postgresql' && eregi("drop table", $sql) ) ) )
{
- //include('page_header_admin.'.$phpEx);
- // echo "~~$sql~~";
message_die(GENERAL_ERROR, "Error importing backup file", "", __LINE__, __FILE__, $sql);
}
}
}
}
- include('page_header_admin.'.$phpEx);
+ include('./page_header_admin.'.$phpEx);
$template->set_filenames(array(
"body" => "admin/admin_message_body.tpl")
@@ -1019,6 +1003,6 @@ if( isset($HTTP_GET_VARS['perform']) || isset($HTTP_POST_VARS['perform']) )
}
}
-include('page_footer_admin.'.$phpEx);
+include('./page_footer_admin.'.$phpEx);
?>
diff --git a/phpBB/admin/admin_disallow.php b/phpBB/admin/admin_disallow.php
index 4efcd2f3e9..54871098db 100644
--- a/phpBB/admin/admin_disallow.php
+++ b/phpBB/admin/admin_disallow.php
@@ -33,17 +33,20 @@ if( !empty($setmodules) )
//
// Include required files, get $phpEx and check permissions
//
-$phpbb_root_path = "../";
+$phpbb_root_path = "./../";
require($phpbb_root_path . 'extension.inc');
-require('pagestart.' . $phpEx);
+require('./pagestart.' . $phpEx);
if( isset($HTTP_POST_VARS['add_name']) )
{
include($phpbb_root_path . 'includes/functions_validate.'.$phpEx);
- $disallowed_user = ( isset($HTTP_POST_VARS['disallowed_user']) ) ? $HTTP_POST_VARS['disallowed_user'] : $HTTP_GET_VARS['disallowed_user'];
- $disallowed_user = preg_replace( '/\*/', '%', $disallowed_user );
+ $disallowed_user = ( isset($HTTP_POST_VARS['disallowed_user']) ) ? trim($HTTP_POST_VARS['disallowed_user']) : trim($HTTP_GET_VARS['disallowed_user']);
+ if ($disallowed_user == '')
+ {
+ message_die(MESSAGE, $lang['Fields_empty']);
+ }
if( !validate_username($disallowed_user) )
{
$message = $lang['Disallowed_already'];
@@ -110,8 +113,6 @@ else
$user = array();
for( $i = 0; $i < count($disallowed); $i++ )
{
- $disallowed[$i]['disallow_username'] = preg_replace('/%/', '*', $disallowed[$i]['disallow_username']);
-
$disallow_select .= '';
}
}
@@ -140,4 +141,6 @@ $template->assign_vars(array(
$template->pparse("body");
+include('./page_footer_admin.'.$phpEx);
+
?>
\ No newline at end of file
diff --git a/phpBB/admin/admin_forum_prune.php b/phpBB/admin/admin_forum_prune.php
index 6315d9b2da..a766360e12 100644
--- a/phpBB/admin/admin_forum_prune.php
+++ b/phpBB/admin/admin_forum_prune.php
@@ -32,9 +32,9 @@ if ( !empty($setmodules) )
//
// Load default header
//
-$phpbb_root_path = '../';
+$phpbb_root_path = "./../";
require($phpbb_root_path . 'extension.inc');
-require('pagestart.' . $phpEx);
+require('./pagestart.' . $phpEx);
require($phpbb_root_path . 'includes/prune.'.$phpEx);
require($phpbb_root_path . 'includes/functions_admin.'.$phpEx);
@@ -168,9 +168,9 @@ else
$forum_name = ( $forum_id == -1 ) ? $lang['All_Forums'] : $forum_rows[0]['forum_name'];
$prune_data = $lang['Prune_topics_not_posted'] . " ";
- $prune_data .= ' ' . $lang['Days'];
+ $prune_data .= ' ' . $lang['Days'];
- $hidden_input = '';
+ $hidden_input = '';
//
// Assign the template variables.
@@ -178,6 +178,7 @@ else
$template->assign_vars(array(
'FORUM_NAME' => $forum_name,
+ 'L_FORUM' => $lang['Forum'],
'L_FORUM_PRUNE' => $lang['Forum_Prune'],
'L_FORUM_PRUNE_EXPLAIN' => $lang['Forum_Prune_explain'],
'L_DO_PRUNE' => $lang['Do_Prune'],
@@ -193,6 +194,6 @@ else
//
$template->pparse('body');
-include('page_footer_admin.'.$phpEx);
+include('./page_footer_admin.'.$phpEx);
?>
\ No newline at end of file
diff --git a/phpBB/admin/admin_forumauth.php b/phpBB/admin/admin_forumauth.php
index e6edc49eb2..69e097e445 100644
--- a/phpBB/admin/admin_forumauth.php
+++ b/phpBB/admin/admin_forumauth.php
@@ -34,9 +34,9 @@ if( !empty($setmodules) )
// Load default header
//
$no_page_header = TRUE;
-$phpbb_root_path = "../";
+$phpbb_root_path = './../';
require($phpbb_root_path . 'extension.inc');
-require('pagestart.' . $phpEx);
+require('./pagestart.' . $phpEx);
//
// Start program - define vars
@@ -52,23 +52,23 @@ $simple_auth_ary = array(
6 => array(AUTH_MOD, AUTH_MOD, AUTH_MOD, AUTH_MOD, AUTH_MOD, AUTH_MOD, AUTH_MOD, AUTH_MOD, AUTH_MOD, AUTH_MOD),
);
-$simple_auth_types = array($lang['Public'], $lang['Registered'], $lang['Registered'] . " [" . $lang['Hidden'] . "]", $lang['Private'], $lang['Private'] . " [" . $lang['Hidden'] . "]", $lang['Moderators'], $lang['Moderators'] . " [" . $lang['Hidden'] . "]");
+$simple_auth_types = array($lang['Public'], $lang['Registered'], $lang['Registered'] . ' [' . $lang['Hidden'] . ']', $lang['Private'], $lang['Private'] . ' [' . $lang['Hidden'] . ']', $lang['Moderators'], $lang['Moderators'] . ' [' . $lang['Hidden'] . ']');
-$forum_auth_fields = array("auth_view", "auth_read", "auth_post", "auth_reply", "auth_edit", "auth_delete", "auth_sticky", "auth_announce", "auth_vote", "auth_pollcreate");
+$forum_auth_fields = array('auth_view', 'auth_read', 'auth_post', 'auth_reply', 'auth_edit', 'auth_delete', 'auth_sticky', 'auth_announce', 'auth_vote', 'auth_pollcreate');
$field_names = array(
- "auth_view" => $lang['View'],
- "auth_read" => $lang['Read'],
- "auth_post" => $lang['Post'],
- "auth_reply" => $lang['Reply'],
- "auth_edit" => $lang['Edit'],
- "auth_delete" => $lang['Delete'],
- "auth_sticky" => $lang['Sticky'],
- "auth_announce" => $lang['Announce'],
- "auth_vote" => $lang['Vote'],
- "auth_pollcreate" => $lang['Pollcreate']);
+ 'auth_view' => $lang['View'],
+ 'auth_read' => $lang['Read'],
+ 'auth_post' => $lang['Post'],
+ 'auth_reply' => $lang['Reply'],
+ 'auth_edit' => $lang['Edit'],
+ 'auth_delete' => $lang['Delete'],
+ 'auth_sticky' => $lang['Sticky'],
+ 'auth_announce' => $lang['Announce'],
+ 'auth_vote' => $lang['Vote'],
+ 'auth_pollcreate' => $lang['Pollcreate']);
-$forum_auth_levels = array("ALL", "REG", "PRIVATE", "MOD", "ADMIN");
+$forum_auth_levels = array('ALL', 'REG', 'PRIVATE', 'MOD', 'ADMIN');
$forum_auth_const = array(AUTH_ALL, AUTH_REG, AUTH_ACL, AUTH_MOD, AUTH_ADMIN);
if(isset($HTTP_GET_VARS[POST_FORUM_URL]) || isset($HTTP_POST_VARS[POST_FORUM_URL]))
@@ -79,7 +79,7 @@ if(isset($HTTP_GET_VARS[POST_FORUM_URL]) || isset($HTTP_POST_VARS[POST_FORUM_URL
else
{
unset($forum_id);
- $forum_sql = "";
+ $forum_sql = '';
}
if( isset($HTTP_GET_VARS['adv']) )
@@ -96,66 +96,58 @@ else
//
if( isset($HTTP_POST_VARS['submit']) )
{
- $sql = "";
+ $sql = '';
if(!empty($forum_id))
{
- $sql = "UPDATE " . FORUMS_TABLE . " SET ";
-
if(isset($HTTP_POST_VARS['simpleauth']))
{
- $simple_ary = $simple_auth_ary[$HTTP_POST_VARS['simpleauth']];
+ $simple_ary = $simple_auth_ary[intval($HTTP_POST_VARS['simpleauth'])];
for($i = 0; $i < count($simple_ary); $i++)
{
- $sql .= $forum_auth_fields[$i] . " = " . $simple_ary[$i];
- if($i < count($simple_ary) - 1)
- {
- $sql .= ", ";
- }
+ $sql .= ( ( $sql != '' ) ? ', ' : '' ) . $forum_auth_fields[$i] . ' = ' . $simple_ary[$i];
}
- $sql .= " WHERE forum_id = $forum_id";
+ if (is_array($simple_ary))
+ {
+ $sql = "UPDATE " . FORUMS_TABLE . " SET $sql WHERE forum_id = $forum_id";
+ }
}
else
{
for($i = 0; $i < count($forum_auth_fields); $i++)
{
- $value = $HTTP_POST_VARS[$forum_auth_fields[$i]];
+ $value = intval($HTTP_POST_VARS[$forum_auth_fields[$i]]);
- if($forum_auth_fields[$i] == 'auth_vote')
+ if ( $forum_auth_fields[$i] == 'auth_vote' )
{
- if( $HTTP_POST_VARS['auth_vote'] == AUTH_ALL )
+ if ( $HTTP_POST_VARS['auth_vote'] == AUTH_ALL )
{
$value = AUTH_REG;
}
}
- $sql .= $forum_auth_fields[$i] . " = " . $value;
- if($i < count($forum_auth_fields) - 1)
- {
- $sql .= ", ";
- }
+ $sql .= ( ( $sql != '' ) ? ', ' : '' ) .$forum_auth_fields[$i] . ' = ' . $value;
}
- $sql .= " WHERE forum_id = $forum_id";
-
+ $sql = "UPDATE " . FORUMS_TABLE . " SET $sql WHERE forum_id = $forum_id";
}
- if($sql != "")
+ if ( $sql != '' )
{
- if(!$db->sql_query($sql))
+ if ( !$db->sql_query($sql) )
{
- message_die(GENERAL_ERROR, "Couldn't update auth table!", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Could not update auth table', '', __LINE__, __FILE__, $sql);
}
}
- $forum_sql = "";
+ $forum_sql = '';
$adv = 0;
}
$template->assign_vars(array(
- "META" => '')
+ 'META' => '')
);
$message = $lang['Forum_auth_updated'] . '
' . sprintf($lang['Click_return_forumauth'], '', "");
message_die(GENERAL_MESSAGE, $message);
@@ -187,7 +179,7 @@ if( empty($forum_id) )
// specified
//
$template->set_filenames(array(
- "body" => "admin/auth_select_body.tpl")
+ 'body' => 'admin/auth_select_body.tpl')
);
$select_list = '';
$template->assign_vars(array(
- "L_AUTH_TITLE" => $lang['Auth_Control_Forum'],
- "L_AUTH_EXPLAIN" => $lang['Forum_auth_explain'],
- "L_AUTH_SELECT" => $lang['Select_a_Forum'],
- "L_LOOK_UP" => $lang['Look_up_Forum'],
+ 'L_AUTH_TITLE' => $lang['Auth_Control_Forum'],
+ 'L_AUTH_EXPLAIN' => $lang['Forum_auth_explain'],
+ 'L_AUTH_SELECT' => $lang['Select_a_Forum'],
+ 'L_LOOK_UP' => $lang['Look_up_Forum'],
- "S_AUTH_ACTION" => append_sid("admin_forumauth.$phpEx"),
- "S_AUTH_SELECT" => $select_list)
+ 'S_AUTH_ACTION' => append_sid("admin_forumauth.$phpEx"),
+ 'S_AUTH_SELECT' => $select_list)
);
}
@@ -215,7 +207,7 @@ else
// specified
//
$template->set_filenames(array(
- "body" => "admin/auth_forum_body.tpl")
+ 'body' => 'admin/auth_forum_body.tpl')
);
$forum_name = $forum_rows[0]['forum_name'];
@@ -244,38 +236,30 @@ else
// If we didn't get a match above then we
// automatically switch into 'advanced' mode
//
- if(!isset($adv) && !$matched)
+ if ( !isset($adv) && !$matched )
{
$adv = 1;
}
$s_column_span == 0;
- if( empty($adv) )
+ if ( empty($adv) )
{
- $simple_auth = "';
- $template->assign_block_vars("forum_auth_titles", array(
- "CELL_TITLE" => $lang['Simple_mode'])
+ $template->assign_block_vars('forum_auth_titles', array(
+ 'CELL_TITLE' => $lang['Simple_mode'])
);
- $template->assign_block_vars("forum_auth_data", array(
- "S_AUTH_LEVELS_SELECT" => $simple_auth)
+ $template->assign_block_vars('forum_auth_data', array(
+ 'S_AUTH_LEVELS_SELECT' => $simple_auth)
);
$s_column_span++;
@@ -288,37 +272,29 @@ else
//
for($j = 0; $j < count($forum_auth_fields); $j++)
{
- $custom_auth[$j] = " ";
+ $custom_auth[$j] = ' ';
for($k = 0; $k < count($forum_auth_levels); $k++)
{
- if ( $forum_rows[0][$forum_auth_fields[$j]] == $forum_auth_const[$k] )
- {
- $custom_auth[$j] .= "";
- }
- else
- {
- $custom_auth[$j] .= "";
- }
+ $selected = ( $forum_rows[0][$forum_auth_fields[$j]] == $forum_auth_const[$k] ) ? ' selected="selected"' : '';
+ $custom_auth[$j] .= '';
}
- $custom_auth[$j] .= " ";
+ $custom_auth[$j] .= ' ';
$cell_title = $field_names[$forum_auth_fields[$j]];
- $template->assign_block_vars("forum_auth_titles", array(
- "CELL_TITLE" => $cell_title)
+ $template->assign_block_vars('forum_auth_titles', array(
+ 'CELL_TITLE' => $cell_title)
);
- $template->assign_block_vars("forum_auth_data", array(
- "S_AUTH_LEVELS_SELECT" => $custom_auth[$j])
+ $template->assign_block_vars('forum_auth_data', array(
+ 'S_AUTH_LEVELS_SELECT' => $custom_auth[$j])
);
$s_column_span++;
}
}
- $adv_mode = (empty($adv)) ? "1" : "0";
+ $adv_mode = ( empty($adv) ) ? '1' : '0';
$switch_mode = append_sid("admin_forumauth.$phpEx?" . POST_FORUM_URL . "=" . $forum_id . "&adv=". $adv_mode);
$switch_mode_text = ( empty($adv) ) ? $lang['Advanced_mode'] : $lang['Simple_mode'];
$u_switch_mode = '' . $switch_mode_text . '';
@@ -326,26 +302,27 @@ else
$s_hidden_fields = '';
$template->assign_vars(array(
- "FORUM_NAME" => $forum_name,
+ 'FORUM_NAME' => $forum_name,
- "L_AUTH_TITLE" => $lang['Auth_Control_Forum'],
- "L_AUTH_EXPLAIN" => $lang['Forum_auth_explain'],
- "L_SUBMIT" => $lang['Submit'],
- "L_RESET" => $lang['Reset'],
+ 'L_FORUM' => $lang['Forum'],
+ 'L_AUTH_TITLE' => $lang['Auth_Control_Forum'],
+ 'L_AUTH_EXPLAIN' => $lang['Forum_auth_explain'],
+ 'L_SUBMIT' => $lang['Submit'],
+ 'L_RESET' => $lang['Reset'],
- "U_SWITCH_MODE" => $u_switch_mode,
+ 'U_SWITCH_MODE' => $u_switch_mode,
- "S_FORUMAUTH_ACTION" => append_sid("admin_forumauth.$phpEx"),
- "S_COLUMN_SPAN" => $s_column_span,
- "S_HIDDEN_FIELDS" => $s_hidden_fields)
+ 'S_FORUMAUTH_ACTION' => append_sid("admin_forumauth.$phpEx"),
+ 'S_COLUMN_SPAN' => $s_column_span,
+ 'S_HIDDEN_FIELDS' => $s_hidden_fields)
);
}
-include('page_header_admin.'.$phpEx);
+include('./page_header_admin.'.$phpEx);
-$template->pparse("body");
+$template->pparse('body');
-include('page_footer_admin.'.$phpEx);
+include('./page_footer_admin.'.$phpEx);
?>
\ No newline at end of file
diff --git a/phpBB/admin/admin_forums.php b/phpBB/admin/admin_forums.php
index 223949ebe7..e1006dd0f0 100644
--- a/phpBB/admin/admin_forums.php
+++ b/phpBB/admin/admin_forums.php
@@ -1,6 +1,6 @@
AUTH_ALL,
"auth_edit" => AUTH_REG,
"auth_delete" => AUTH_REG,
- "auth_sticky" => AUTH_REG,
+ "auth_sticky" => AUTH_MOD,
"auth_announce" => AUTH_MOD,
"auth_vote" => AUTH_REG,
"auth_pollcreate" => AUTH_REG
@@ -56,6 +55,7 @@ $forum_auth_ary = array(
if( isset($HTTP_POST_VARS['mode']) || isset($HTTP_GET_VARS['mode']) )
{
$mode = ( isset($HTTP_POST_VARS['mode']) ) ? $HTTP_POST_VARS['mode'] : $HTTP_GET_VARS['mode'];
+ $mode = htmlspecialchars($mode);
}
else
{
@@ -233,6 +233,7 @@ if( isset($HTTP_POST_VARS['addforum']) || isset($HTTP_POST_VARS['addcategory'])
if( $mode == "addforum" )
{
list($cat_id) = each($HTTP_POST_VARS['addforum']);
+ $cat_id = intval($cat_id);
//
// stripslashes needs to be run on this because slashes are added when the forum name is posted
//
@@ -302,8 +303,14 @@ if( !empty($mode) )
$catlist = get_list('category', $cat_id, TRUE);
$forumstatus == ( FORUM_LOCKED ) ? $forumlocked = "selected=\"selected\"" : $forumunlocked = "selected=\"selected\"";
- $statuslist = "\n";
- $statuslist .= "\n";
+
+ // These two options ($lang['Status_unlocked'] and $lang['Status_locked']) seem to be missing from
+ // the language files.
+ $lang['Status_unlocked'] = isset($lang['Status_unlocked']) ? $lang['Status_unlocked'] : 'Unlocked';
+ $lang['Status_locked'] = isset($lang['Status_locked']) ? $lang['Status_locked'] : 'Locked';
+
+ $statuslist = "\n";
+ $statuslist .= "\n";
$template->set_filenames(array(
"body" => "admin/forum_edit_body.tpl")
@@ -493,7 +500,7 @@ if( !empty($mode) )
// There is no problem having duplicate forum names so we won't check for it.
//
$sql = "INSERT INTO " . CATEGORIES_TABLE . " (cat_title, cat_order)
- VALUES ('" . $HTTP_POST_VARS['categoryname'] . "', $next_order)";
+ VALUES ('" . str_replace("\'", "''", $HTTP_POST_VARS['categoryname']) . "', $next_order)";
if( !$result = $db->sql_query($sql) )
{
message_die(GENERAL_ERROR, "Couldn't insert row in categories table", "", __LINE__, __FILE__, $sql);
@@ -604,8 +611,41 @@ if( !empty($mode) )
// Either delete or move all posts in a forum
if($to_id == -1)
{
+ // Delete polls in this forum
+ $sql = "SELECT v.vote_id
+ FROM " . VOTE_DESC_TABLE . " v, " . TOPICS_TABLE . " t
+ WHERE t.forum_id = $from_id
+ AND v.topic_id = t.topic_id";
+ if (!($result = $db->sql_query($sql)))
+ {
+ message_die(GENERAL_ERROR, "Couldn't obtain list of vote ids", "", __LINE__, __FILE__, $sql);
+ }
+
+ if ($row = $db->sql_fetchrow($result))
+ {
+ $vote_ids = '';
+ do
+ {
+ $vote_ids = (($vote_ids != '') ? ', ' : '') . $row['vote_id'];
+ }
+ while ($row = $db->sql_fetchrow($result));
+
+ $sql = "DELETE FROM " . VOTE_DESC_TABLE . "
+ WHERE vote_id IN ($vote_ids)";
+ $db->sql_query($sql);
+
+ $sql = "DELETE FROM " . VOTE_RESULTS_TABLE . "
+ WHERE vote_id IN ($vote_ids)";
+ $db->sql_query($sql);
+
+ $sql = "DELETE FROM " . VOTE_USERS_TABLE . "
+ WHERE vote_id IN ($vote_ids)";
+ $db->sql_query($sql);
+ }
+ $db->sql_freeresult($result);
+
include($phpbb_root_path . "includes/prune.$phpEx");
- prune($from_id, 0); // Delete everything from forum
+ prune($from_id, 0, true); // Delete everything from forum
}
else
{
@@ -616,6 +656,7 @@ if( !empty($mode) )
{
message_die(GENERAL_ERROR, "Couldn't verify existence of forums", "", __LINE__, __FILE__, $sql);
}
+
if($db->sql_numrows($result) != 2)
{
message_die(GENERAL_ERROR, "Ambiguous forum ID's", "", __LINE__, __FILE__);
@@ -637,6 +678,57 @@ if( !empty($mode) )
sync('forum', $to_id);
}
+ // Alter Mod level if appropriate - 2.0.4
+ $sql = "SELECT ug.user_id
+ FROM " . AUTH_ACCESS_TABLE . " a, " . USER_GROUP_TABLE . " ug
+ WHERE a.forum_id <> $from_id
+ AND a.auth_mod = 1
+ AND ug.group_id = a.group_id";
+ if( !$result = $db->sql_query($sql) )
+ {
+ message_die(GENERAL_ERROR, "Couldn't obtain moderator list", "", __LINE__, __FILE__, $sql);
+ }
+
+ if ($row = $db->sql_fetchrow($result))
+ {
+ $user_ids = '';
+ do
+ {
+ $user_ids .= (($user_ids != '') ? ', ' : '' ) . $row['user_id'];
+ }
+ while ($row = $db->sql_fetchrow($result));
+
+ $sql = "SELECT ug.user_id
+ FROM " . AUTH_ACCESS_TABLE . " a, " . USER_GROUP_TABLE . " ug
+ WHERE a.forum_id = $from_id
+ AND a.auth_mod = 1
+ AND ug.group_id = a.group_id
+ AND ug.user_id NOT IN ($user_ids)";
+ if( !$result2 = $db->sql_query($sql) )
+ {
+ message_die(GENERAL_ERROR, "Couldn't obtain moderator list", "", __LINE__, __FILE__, $sql);
+ }
+
+ if ($row = $db->sql_fetchrow($result2))
+ {
+ $user_ids = '';
+ do
+ {
+ $user_ids .= (($user_ids != '') ? ', ' : '' ) . $row['user_id'];
+ }
+ while ($row = $db->sql_fetchrow($result2));
+
+ $sql = "UPDATE " . USERS_TABLE . "
+ SET user_level = " . USER . "
+ WHERE user_id IN ($user_ids)
+ AND user_level <> " . ADMIN;
+ $db->sql_query($sql);
+ }
+ $db->sql_freeresult($result);
+
+ }
+ $db->sql_freeresult($result2);
+
$sql = "DELETE FROM " . FORUMS_TABLE . "
WHERE forum_id = $from_id";
if( !$result = $db->sql_query($sql) )
@@ -826,7 +918,7 @@ if( !empty($mode) )
if ($show_index != TRUE)
{
- include('page_footer_admin.'.$phpEx);
+ include('./page_footer_admin.'.$phpEx);
exit;
}
}
@@ -931,6 +1023,6 @@ if( $total_categories = $db->sql_numrows($q_categories) )
$template->pparse("body");
-include('page_footer_admin.'.$phpEx);
+include('./page_footer_admin.'.$phpEx);
-?>
+?>
\ No newline at end of file
diff --git a/phpBB/admin/admin_groups.php b/phpBB/admin/admin_groups.php
index 6ae809ff20..2b125e2f2d 100644
--- a/phpBB/admin/admin_groups.php
+++ b/phpBB/admin/admin_groups.php
@@ -22,7 +22,7 @@
define('IN_PHPBB', 1);
-if( !empty($setmodules) )
+if ( !empty($setmodules) )
{
$filename = basename(__FILE__);
$module['Groups']['Manage'] = $filename;
@@ -33,38 +33,36 @@ if( !empty($setmodules) )
//
// Load default header
//
-$phpbb_root_path = "../";
+$phpbb_root_path = './../';
require($phpbb_root_path . 'extension.inc');
-require('pagestart.' . $phpEx);
+require('./pagestart.' . $phpEx);
-if( isset($HTTP_POST_VARS[POST_GROUPS_URL]) || isset($HTTP_GET_VARS[POST_GROUPS_URL]) )
+if ( isset($HTTP_POST_VARS[POST_GROUPS_URL]) || isset($HTTP_GET_VARS[POST_GROUPS_URL]) )
{
$group_id = ( isset($HTTP_POST_VARS[POST_GROUPS_URL]) ) ? intval($HTTP_POST_VARS[POST_GROUPS_URL]) : intval($HTTP_GET_VARS[POST_GROUPS_URL]);
}
else
{
- $group_id = "";
+ $group_id = 0;
}
-//
-// Mode setting
-//
-if( isset($HTTP_POST_VARS['mode']) || isset($HTTP_GET_VARS['mode']) )
+if ( isset($HTTP_POST_VARS['mode']) || isset($HTTP_GET_VARS['mode']) )
{
$mode = ( isset($HTTP_POST_VARS['mode']) ) ? $HTTP_POST_VARS['mode'] : $HTTP_GET_VARS['mode'];
+ $mode = htmlspecialchars($mode);
}
else
{
- $mode = "";
+ $mode = '';
}
-if( isset($HTTP_POST_VARS['edit']) || isset($HTTP_POST_VARS['new']) )
+if ( isset($HTTP_POST_VARS['edit']) || isset($HTTP_POST_VARS['new']) )
{
//
// Ok they are editing a group or creating a new group
//
$template->set_filenames(array(
- "body" => "admin/group_edit_body.tpl")
+ 'body' => 'admin/group_edit_body.tpl')
);
if ( isset($HTTP_POST_VARS['edit']) )
@@ -76,34 +74,33 @@ if( isset($HTTP_POST_VARS['edit']) || isset($HTTP_POST_VARS['new']) )
FROM " . GROUPS_TABLE . "
WHERE group_single_user <> " . TRUE . "
AND group_id = $group_id";
- if(!$result = $db->sql_query($sql))
+ if ( !($result = $db->sql_query($sql)) )
{
- message_die(GENERAL_ERROR, "Error getting group information", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Error getting group information', '', __LINE__, __FILE__, $sql);
}
- if( !$db->sql_numrows($result) )
+ if ( !($group_info = $db->sql_fetchrow($result)) )
{
message_die(GENERAL_MESSAGE, $lang['Group_not_exist']);
}
- $group_info = $db->sql_fetchrow($result);
-
- $mode = "editgroup";
- $template->assign_block_vars("group_edit", array());
+ $mode = 'editgroup';
+ $template->assign_block_vars('group_edit', array());
}
- else if( isset($HTTP_POST_VARS['new']) )
+ else if ( isset($HTTP_POST_VARS['new']) )
{
$group_info = array (
- "group_name" => "",
- "group_description" => "",
- "group_moderator" => "",
- "group_type" => GROUP_OPEN);
- $group_open = "checked=\"checked\"";
+ 'group_name' => '',
+ 'group_description' => '',
+ 'group_moderator' => '',
+ 'group_type' => GROUP_OPEN);
+ $group_open = ' checked="checked"';
- $mode = "newgroup";
+ $mode = 'newgroup';
}
+
//
// Ok, now we know everything about them, let's show the page.
//
@@ -111,119 +108,166 @@ if( isset($HTTP_POST_VARS['edit']) || isset($HTTP_POST_VARS['new']) )
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS . "
ORDER BY username";
- $u_result = $db->sql_query($sql);
- if( !$u_result )
+ if ( !($result = $db->sql_query($sql)) )
{
- message_die(GENERAL_ERROR, "Couldn't obtain user info for moderator list", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Could not obtain user info for moderator list', '', __LINE__, __FILE__, $sql);
}
- $user_list = $db->sql_fetchrowset($u_result);
-
- for($i = 0; $i < count($user_list); $i++)
+ while ( $row = $db->sql_fetchrow($result) )
{
- if( $user_list[$i]['user_id'] == $group_info['group_moderator'] )
+ if ( $row['user_id'] == $group_info['group_moderator'] )
{
- $group_moderator = $user_list[$i]['username'];
+ $group_moderator = $row['username'];
}
}
- $group_open = ( $group_info['group_type'] == GROUP_OPEN ) ? "checked=\"checked\"" : "";
- $group_closed = ( $group_info['group_type'] == GROUP_CLOSED ) ? "checked=\"checked\"" : "";
- $group_hidden = ( $group_info['group_type'] == GROUP_HIDDEN ) ? "checked=\"checked\"" : "";
+ $group_open = ( $group_info['group_type'] == GROUP_OPEN ) ? ' checked="checked"' : '';
+ $group_closed = ( $group_info['group_type'] == GROUP_CLOSED ) ? ' checked="checked"' : '';
+ $group_hidden = ( $group_info['group_type'] == GROUP_HIDDEN ) ? ' checked="checked"' : '';
$s_hidden_fields = '';
$template->assign_vars(array(
- "GROUP_NAME" => $group_info['group_name'],
- "GROUP_DESCRIPTION" => $group_info['group_description'],
- "GROUP_MODERATOR" => $group_moderator,
+ 'GROUP_NAME' => $group_info['group_name'],
+ 'GROUP_DESCRIPTION' => $group_info['group_description'],
+ 'GROUP_MODERATOR' => $group_moderator,
- "L_GROUP_TITLE" => $lang['Group_administration'],
- "L_GROUP_EDIT_DELETE" => ( isset($HTTP_POST_VARS['new']) ) ? $lang['New_group'] : $lang['Edit_group'],
- "L_GROUP_NAME" => $lang['group_name'],
- "L_GROUP_DESCRIPTION" => $lang['group_description'],
- "L_GROUP_MODERATOR" => $lang['group_moderator'],
- "L_FIND_USERNAME" => $lang['Find_username'],
- "L_GROUP_STATUS" => $lang['group_status'],
- "L_GROUP_OPEN" => $lang['group_open'],
- "L_GROUP_CLOSED" => $lang['group_closed'],
- "L_GROUP_HIDDEN" => $lang['group_hidden'],
- "L_GROUP_DELETE" => $lang['group_delete'],
- "L_GROUP_DELETE_CHECK" => $lang['group_delete_check'],
- "L_SUBMIT" => $lang['Submit'],
- "L_RESET" => $lang['Reset'],
- "L_DELETE_MODERATOR" => $lang['delete_group_moderator'],
- "L_DELETE_MODERATOR_EXPLAIN" => $lang['delete_moderator_explain'],
- "L_YES" => $lang['Yes'],
+ 'L_GROUP_TITLE' => $lang['Group_administration'],
+ 'L_GROUP_EDIT_DELETE' => ( isset($HTTP_POST_VARS['new']) ) ? $lang['New_group'] : $lang['Edit_group'],
+ 'L_GROUP_NAME' => $lang['group_name'],
+ 'L_GROUP_DESCRIPTION' => $lang['group_description'],
+ 'L_GROUP_MODERATOR' => $lang['group_moderator'],
+ 'L_FIND_USERNAME' => $lang['Find_username'],
+ 'L_GROUP_STATUS' => $lang['group_status'],
+ 'L_GROUP_OPEN' => $lang['group_open'],
+ 'L_GROUP_CLOSED' => $lang['group_closed'],
+ 'L_GROUP_HIDDEN' => $lang['group_hidden'],
+ 'L_GROUP_DELETE' => $lang['group_delete'],
+ 'L_GROUP_DELETE_CHECK' => $lang['group_delete_check'],
+ 'L_SUBMIT' => $lang['Submit'],
+ 'L_RESET' => $lang['Reset'],
+ 'L_DELETE_MODERATOR' => $lang['delete_group_moderator'],
+ 'L_DELETE_MODERATOR_EXPLAIN' => $lang['delete_moderator_explain'],
+ 'L_YES' => $lang['Yes'],
- "U_SEARCH_USER" => append_sid("../search.$phpEx?mode=searchuser"),
+ 'U_SEARCH_USER' => append_sid("../search.$phpEx?mode=searchuser"),
- "S_GROUP_OPEN_TYPE" => GROUP_OPEN,
- "S_GROUP_CLOSED_TYPE" => GROUP_CLOSED,
- "S_GROUP_HIDDEN_TYPE" => GROUP_HIDDEN,
- "S_GROUP_OPEN_CHECKED" => $group_open,
- "S_GROUP_CLOSED_CHECKED" => $group_closed,
- "S_GROUP_HIDDEN_CHECKED" => $group_hidden,
- "S_GROUP_ACTION" => append_sid("admin_groups.$phpEx"),
- "S_HIDDEN_FIELDS" => $s_hidden_fields)
+ 'S_GROUP_OPEN_TYPE' => GROUP_OPEN,
+ 'S_GROUP_CLOSED_TYPE' => GROUP_CLOSED,
+ 'S_GROUP_HIDDEN_TYPE' => GROUP_HIDDEN,
+ 'S_GROUP_OPEN_CHECKED' => $group_open,
+ 'S_GROUP_CLOSED_CHECKED' => $group_closed,
+ 'S_GROUP_HIDDEN_CHECKED' => $group_hidden,
+ 'S_GROUP_ACTION' => append_sid("admin_groups.$phpEx"),
+ 'S_HIDDEN_FIELDS' => $s_hidden_fields)
);
$template->pparse('body');
}
-else if( isset($HTTP_POST_VARS['group_update']) )
+else if ( isset($HTTP_POST_VARS['group_update']) )
{
//
// Ok, they are submitting a group, let's save the data based on if it's new or editing
//
- if( isset($HTTP_POST_VARS['group_delete']) )
+ if ( isset($HTTP_POST_VARS['group_delete']) )
{
+ //
+ // Reset User Moderator Level
+ //
+
+ // Is Group moderating a forum ?
+ $sql = "SELECT auth_mod FROM " . AUTH_ACCESS_TABLE . "
+ WHERE group_id = " . $group_id;
+ if ( !($result = $db->sql_query($sql)) )
+ {
+ message_die(GENERAL_ERROR, 'Could not select auth_access', '', __LINE__, __FILE__, $sql);
+ }
+
+ $row = $db->sql_fetchrow($result);
+ if (intval($row['auth_mod']) == 1)
+ {
+ // Yes, get the assigned users and update their Permission if they are no longer moderator of one of the forums
+ $sql = "SELECT user_id FROM " . USER_GROUP_TABLE . "
+ WHERE group_id = " . $group_id;
+ if ( !($result = $db->sql_query($sql)) )
+ {
+ message_die(GENERAL_ERROR, 'Could not select user_group', '', __LINE__, __FILE__, $sql);
+ }
+
+ $rows = $db->sql_fetchrowset($result);
+ for ($i = 0; $i < count($rows); $i++)
+ {
+ $sql = "SELECT g.group_id FROM " . AUTH_ACCESS_TABLE . " a, " . GROUPS_TABLE . " g, " . USER_GROUP_TABLE . " ug
+ WHERE (a.auth_mod = 1) AND (g.group_id = a.group_id) AND (a.group_id = ug.group_id) AND (g.group_id = ug.group_id)
+ AND (ug.user_id = " . intval($rows[$i]['user_id']) . ") AND (ug.group_id <> " . $group_id . ")";
+ if ( !($result = $db->sql_query($sql)) )
+ {
+ message_die(GENERAL_ERROR, 'Could not obtain moderator permissions', '', __LINE__, __FILE__, $sql);
+ }
+
+ if ($db->sql_numrows($result) == 0)
+ {
+ $sql = "UPDATE " . USERS_TABLE . " SET user_level = " . USER . "
+ WHERE user_level = " . MOD . " AND user_id = " . intval($rows[$i]['user_id']);
+
+ if ( !$db->sql_query($sql) )
+ {
+ message_die(GENERAL_ERROR, 'Could not update moderator permissions', '', __LINE__, __FILE__, $sql);
+ }
+ }
+ }
+ }
+
+ //
+ // Delete Group
+ //
$sql = "DELETE FROM " . GROUPS_TABLE . "
WHERE group_id = " . $group_id;
- if ( !$result = $db->sql_query($sql) )
+ if ( !$db->sql_query($sql) )
{
- message_die(GENERAL_ERROR, "Couldn't update group", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Could not update group', '', __LINE__, __FILE__, $sql);
}
$sql = "DELETE FROM " . USER_GROUP_TABLE . "
WHERE group_id = " . $group_id;
- if ( !$result = $db->sql_query($sql) )
+ if ( !$db->sql_query($sql) )
{
- message_die(GENERAL_ERROR, "Couldn't update user_group", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Could not update user_group', '', __LINE__, __FILE__, $sql);
}
$sql = "DELETE FROM " . AUTH_ACCESS_TABLE . "
WHERE group_id = " . $group_id;
- if ( !$result = $db->sql_query($sql) )
+ if ( !$db->sql_query($sql) )
{
- message_die(GENERAL_ERROR, "Couldn't update auth_access", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Could not update auth_access', '', __LINE__, __FILE__, $sql);
}
- $message = $lang['Deleted_group'] . "
" . sprintf($lang['Click_return_groupsadmin'], "", "") . "
" . sprintf($lang['Click_return_admin_index'], "", "");;
+ $message = $lang['Deleted_group'] . '
' . sprintf($lang['Click_return_groupsadmin'], '', '') . '
' . sprintf($lang['Click_return_admin_index'], '', '');
message_die(GENERAL_MESSAGE, $message);
}
else
{
$group_type = isset($HTTP_POST_VARS['group_type']) ? intval($HTTP_POST_VARS['group_type']) : GROUP_OPEN;
- $group_name = isset($HTTP_POST_VARS['group_name']) ? trim($HTTP_POST_VARS['group_name']) : "";
- $group_description = isset($HTTP_POST_VARS['group_description']) ? trim($HTTP_POST_VARS['group_description']) : "";
- $group_moderator = isset($HTTP_POST_VARS['username']) ? $HTTP_POST_VARS['username'] : "";
- $delete_old_moderator = isset($HTTP_POST_VARS['delete_old_moderator']) ? intval($HTTP_POST_VARS['delete_old_moderator']) : "";
+ $group_name = isset($HTTP_POST_VARS['group_name']) ? trim($HTTP_POST_VARS['group_name']) : '';
+ $group_description = isset($HTTP_POST_VARS['group_description']) ? trim($HTTP_POST_VARS['group_description']) : '';
+ $group_moderator = isset($HTTP_POST_VARS['username']) ? $HTTP_POST_VARS['username'] : '';
+ $delete_old_moderator = isset($HTTP_POST_VARS['delete_old_moderator']) ? true : false;
- if( $group_name == "" )
+ if ( $group_name == '' )
{
message_die(GENERAL_MESSAGE, $lang['No_group_name']);
}
- else if( $group_moderator == "" )
+ else if ( $group_moderator == '' )
{
message_die(GENERAL_MESSAGE, $lang['No_group_moderator']);
}
- $this_userdata = get_userdata($group_moderator);
+ $this_userdata = get_userdata($group_moderator, true);
$group_moderator = $this_userdata['user_id'];
- if( !$group_moderator )
+ if ( !$group_moderator )
{
message_die(GENERAL_MESSAGE, $lang['No_group_moderator']);
}
@@ -234,81 +278,86 @@ else if( isset($HTTP_POST_VARS['group_update']) )
FROM " . GROUPS_TABLE . "
WHERE group_single_user <> " . TRUE . "
AND group_id = " . $group_id;
- if(!$result = $db->sql_query($sql))
+ if ( !($result = $db->sql_query($sql)) )
{
- message_die(GENERAL_ERROR, "Error getting group information", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Error getting group information', '', __LINE__, __FILE__, $sql);
}
- if( !$db->sql_numrows($result) )
+
+ if( !($group_info = $db->sql_fetchrow($result)) )
{
message_die(GENERAL_MESSAGE, $lang['Group_not_exist']);
}
- $group_info = $db->sql_fetchrow($result);
if ( $group_info['group_moderator'] != $group_moderator )
{
- if ( $delete_old_moderator != "" )
+ if ( $delete_old_moderator )
{
$sql = "DELETE FROM " . USER_GROUP_TABLE . "
WHERE user_id = " . $group_info['group_moderator'] . "
AND group_id = " . $group_id;
- if ( !$result = $db->sql_query($sql) )
+ if ( !$db->sql_query($sql) )
{
- message_die(GENERAL_ERROR, "Couldn't update group moderator", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Could not update group moderator', '', __LINE__, __FILE__, $sql);
}
}
- $sql = "INSERT INTO " . USER_GROUP_TABLE . " (group_id, user_id, user_pending)
- VALUES (" . $group_id . ", " . $group_moderator . ", 0)";
- if ( !$result = $db->sql_query($sql) )
+
+ $sql = "SELECT user_id
+ FROM " . USER_GROUP_TABLE . "
+ WHERE user_id = $group_moderator
+ AND group_id = $group_id";
+ if ( !($result = $db->sql_query($sql)) )
{
- message_die(GENERAL_ERROR, "Couldn't update group moderator", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Failed to obtain current group moderator info', '', __LINE__, __FILE__, $sql);
+ }
+
+ if ( !($row = $db->sql_fetchrow($result)) )
+ {
+ $sql = "INSERT INTO " . USER_GROUP_TABLE . " (group_id, user_id, user_pending)
+ VALUES (" . $group_id . ", " . $group_moderator . ", 0)";
+ if ( !$db->sql_query($sql) )
+ {
+ message_die(GENERAL_ERROR, 'Could not update group moderator', '', __LINE__, __FILE__, $sql);
+ }
}
}
+
$sql = "UPDATE " . GROUPS_TABLE . "
SET group_type = $group_type, group_name = '" . str_replace("\'", "''", $group_name) . "', group_description = '" . str_replace("\'", "''", $group_description) . "', group_moderator = $group_moderator
WHERE group_id = $group_id";
- if ( !$result = $db->sql_query($sql) )
+ if ( !$db->sql_query($sql) )
{
- message_die(GENERAL_ERROR, "Couldn't update group", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Could not update group', '', __LINE__, __FILE__, $sql);
}
- $message = $lang['Updated_group'] . "
" . sprintf($lang['Click_return_groupsadmin'], "", "") . "
" . sprintf($lang['Click_return_admin_index'], "", "");;
+ $message = $lang['Updated_group'] . '
' . sprintf($lang['Click_return_groupsadmin'], '', '') . '
' . sprintf($lang['Click_return_admin_index'], '', '');;
message_die(GENERAL_MESSAGE, $message);
}
- else if( $mode == "newgroup" )
+ else if( $mode == 'newgroup' )
{
- $sql = "SELECT MAX(group_id) AS new_group_id
- FROM " . GROUPS_TABLE;
- if ( !$result = $db->sql_query($sql) )
+ $sql = "INSERT INTO " . GROUPS_TABLE . " (group_type, group_name, group_description, group_moderator, group_single_user)
+ VALUES ($group_type, '" . str_replace("\'", "''", $group_name) . "', '" . str_replace("\'", "''", $group_description) . "', $group_moderator, '0')";
+ if ( !$db->sql_query($sql) )
{
- message_die(GENERAL_ERROR, "Couldn't insert new group", "", __LINE__, __FILE__, $sql);
- }
- $row = $db->sql_fetchrow($result);
-
- $new_group_id = $row['new_group_id'] + 1;
-
- $sql = "INSERT INTO " . GROUPS_TABLE . " (group_id, group_type, group_name, group_description, group_moderator, group_single_user)
- VALUES ($new_group_id, $group_type, '" . str_replace("\'", "''", $group_name) . "', '" . str_replace("\'", "''", $group_description) . "', $group_moderator, '0')";
- if ( !$result = $db->sql_query($sql) )
- {
- message_die(GENERAL_ERROR, "Couldn't insert new group", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Could not insert new group', '', __LINE__, __FILE__, $sql);
}
+ $new_group_id = $db->sql_nextid();
$sql = "INSERT INTO " . USER_GROUP_TABLE . " (group_id, user_id, user_pending)
VALUES ($new_group_id, $group_moderator, 0)";
- if ( !$result = $db->sql_query($sql) )
+ if ( !$db->sql_query($sql) )
{
- message_die(GENERAL_ERROR, "Couldn't insert new user-group info", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Could not insert new user-group info', '', __LINE__, __FILE__, $sql);
}
- $message = $lang['Added_new_group'] . "
" . sprintf($lang['Click_return_groupsadmin'], "", "") . "
" . sprintf($lang['Click_return_admin_index'], "", "");;
+ $message = $lang['Added_new_group'] . '
' . sprintf($lang['Click_return_groupsadmin'], '', '') . '
' . sprintf($lang['Click_return_admin_index'], '', '');;
message_die(GENERAL_MESSAGE, $message);
}
else
{
- message_die(GENERAL_MESSAGE, $lang['Group_mode_not_selected']);
+ message_die(GENERAL_MESSAGE, $lang['No_group_action']);
}
}
}
@@ -318,42 +367,46 @@ else
FROM " . GROUPS_TABLE . "
WHERE group_single_user <> " . TRUE . "
ORDER BY group_name";
- $g_result = $db->sql_query($sql);
- $group_list = $db->sql_fetchrowset($g_result);
-
- $select_list = "";
- for($i = 0; $i < count($group_list); $i++)
+ if ( !($result = $db->sql_query($sql)) )
{
- $select_list .= "";
+ message_die(GENERAL_ERROR, 'Could not obtain group list', '', __LINE__, __FILE__, $sql);
+ }
+
+ $select_list = '';
+ if ( $row = $db->sql_fetchrow($result) )
+ {
+ $select_list .= '';
+ do
+ {
+ $select_list .= '';
+ }
+ while ( $row = $db->sql_fetchrow($result) );
+ $select_list .= '';
}
- $select_list .= "";
$template->set_filenames(array(
- "body" => "admin/group_select_body.tpl")
+ 'body' => 'admin/group_select_body.tpl')
);
$template->assign_vars(array(
- "L_GROUP_TITLE" => $lang['Group_administration'],
- "L_GROUP_EXPLAIN" => $lang['Group_admin_explain'],
- "L_GROUP_SELECT" => $lang['Select_group'],
- "L_LOOK_UP" => $lang['Look_up_group'],
- "L_CREATE_NEW_GROUP" => $lang['New_group'],
+ 'L_GROUP_TITLE' => $lang['Group_administration'],
+ 'L_GROUP_EXPLAIN' => $lang['Group_admin_explain'],
+ 'L_GROUP_SELECT' => $lang['Select_group'],
+ 'L_LOOK_UP' => $lang['Look_up_group'],
+ 'L_CREATE_NEW_GROUP' => $lang['New_group'],
- "S_GROUP_ACTION" => append_sid("admin_groups.$phpEx"),
- "S_GROUP_SELECT" => $select_list)
+ 'S_GROUP_ACTION' => append_sid("admin_groups.$phpEx"),
+ 'S_GROUP_SELECT' => $select_list)
);
- //
- // Faking the IF... ELSE statements again...
- //
- if( count($group_list) > 0 )
+ if ( $select_list != '' )
{
- $template->assign_block_vars("select_box", array());
+ $template->assign_block_vars('select_box', array());
}
$template->pparse('body');
}
-include('page_footer_admin.'.$phpEx);
+include('./page_footer_admin.'.$phpEx);
?>
diff --git a/phpBB/admin/admin_mass_email.php b/phpBB/admin/admin_mass_email.php
index d90f432da3..265b637921 100644
--- a/phpBB/admin/admin_mass_email.php
+++ b/phpBB/admin/admin_mass_email.php
@@ -33,9 +33,9 @@ if( !empty($setmodules) )
// Load default header
//
$no_page_header = TRUE;
-$phpbb_root_path = "../";
+$phpbb_root_path = './../';
require($phpbb_root_path . 'extension.inc');
-require('pagestart.' . $phpEx);
+require('./pagestart.' . $phpEx);
//
// Increase maximum execution time in case of a lot of users, but don't complain about it if it isn't
@@ -43,108 +43,120 @@ require('pagestart.' . $phpEx);
//
@set_time_limit(1200);
-$message = "";
-$subject = "";
+$message = '';
+$subject = '';
//
// Do the job ...
//
-if( isset($HTTP_POST_VARS['submit']) )
+if ( isset($HTTP_POST_VARS['submit']) )
{
+ $subject = stripslashes(trim($HTTP_POST_VARS['subject']));
+ $message = stripslashes(trim($HTTP_POST_VARS['message']));
+
+ $error = FALSE;
+ $error_msg = '';
+
+ if ( empty($subject) )
+ {
+ $error = true;
+ $error_msg .= ( !empty($error_msg) ) ? '
' . $lang['Empty_subject'] : $lang['Empty_subject'];
+ }
+
+ if ( empty($message) )
+ {
+ $error = true;
+ $error_msg .= ( !empty($error_msg) ) ? '
' . $lang['Empty_message'] : $lang['Empty_message'];
+ }
+
$group_id = intval($HTTP_POST_VARS[POST_GROUPS_URL]);
- if( $group_id != -1 )
+ $sql = ( $group_id != -1 ) ? "SELECT u.user_email FROM " . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug WHERE ug.group_id = $group_id AND ug.user_pending <> " . TRUE . " AND u.user_id = ug.user_id" : "SELECT user_email FROM " . USERS_TABLE;
+ if ( !($result = $db->sql_query($sql)) )
{
- $sql = "SELECT u.user_email
- FROM " . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug
- WHERE ug.group_id = $group_id
- AND ug.user_pending <> " . TRUE . "
- AND u.user_id = ug.user_id";
+ message_die(GENERAL_ERROR, 'Could not select group members', '', __LINE__, __FILE__, $sql);
+ }
+
+ if ( $row = $db->sql_fetchrow($result) )
+ {
+ $bcc_list = array();
+ do
+ {
+ $bcc_list[] = $row['user_email'];
+ }
+ while ( $row = $db->sql_fetchrow($result) );
+
+ $db->sql_freeresult($result);
}
else
{
- $sql = "SELECT user_email
- FROM " . USERS_TABLE;
+ $message = ( $group_id != -1 ) ? $lang['Group_not_exist'] : $lang['No_such_user'];
+
+ $error = true;
+ $error_msg .= ( !empty($error_msg) ) ? '
' . $message : $message;
}
- if( !$result = $db->sql_query($sql) )
- {
- message_die(GENERAL_ERROR, "Coult not select group members!", __LINE__, __FILE__, $sql);
- }
-
- if( !$db->sql_numrows($result) )
- {
- //
- // Output a relevant GENERAL_MESSAGE about users/group
- // not existing
- //
- }
-
- $email_list = $db->sql_fetchrowset($g_result);
-
- $subject = stripslashes($HTTP_POST_VARS["subject"]);
- $message = stripslashes($HTTP_POST_VARS["message"]);
-
- //
- // Error checking needs to go here ... if no subject and/or
- // no message then skip over the send and return to the form
- //
- $error = FALSE;
-
- if( !$error )
+ if ( !$error )
{
include($phpbb_root_path . 'includes/emailer.'.$phpEx);
+
//
// Let's do some checking to make sure that mass mail functions
// are working in win32 versions of php.
//
- if( preg_match('/[c-z]:\\\.*/i', getenv('PATH')) && !$board_config['smtp_delivery'])
+ if ( preg_match('/[c-z]:\\\.*/i', getenv('PATH')) && !$board_config['smtp_delivery'])
{
- // We are running on windows, force delivery to use
- // our smtp functions since php's are broken by default
+ $ini_val = ( @phpversion() >= '4.0.0' ) ? 'ini_get' : 'get_cfg_var';
+
+ // We are running on windows, force delivery to use our smtp functions
+ // since php's are broken by default
$board_config['smtp_delivery'] = 1;
- $board_config['smtp_host'] = get_cfg_var('SMTP');
+ $board_config['smtp_host'] = @$ini_val('SMTP');
}
+
$emailer = new emailer($board_config['smtp_delivery']);
- $email_headers = "From: " . $board_config['board_email'] . "\n";
+ $emailer->from($board_config['board_email']);
+ $emailer->replyto($board_config['board_email']);
- $bcc_list = "";
- for($i = 0; $i < count($email_list); $i++)
+ for ($i = 0; $i < count($bcc_list); $i++)
{
- if( $bcc_list != "" )
- {
- $bcc_list .= ", ";
- }
- $bcc_list .= $email_list[$i]['user_email'];
+ $emailer->bcc($bcc_list[$i]);
}
- $email_headers .= "Bcc: $bcc_list\n";
-
- $email_headers .= "Return-Path: " . $userdata['board_email'] . "\n";
- $email_headers .= "X-AntiAbuse: Board servername - " . $server_name . "\n";
- $email_headers .= "X-AntiAbuse: User_id - " . $userdata['user_id'] . "\n";
- $email_headers .= "X-AntiAbuse: Username - " . $userdata['username'] . "\n";
- $email_headers .= "X-AntiAbuse: User IP - " . decode_ip($user_ip) . "\r\n";
- $emailer->use_template("admin_send_email");
+ $email_headers = 'X-AntiAbuse: Board servername - ' . $board_config['server_name'] . "\n";
+ $email_headers .= 'X-AntiAbuse: User_id - ' . $userdata['user_id'] . "\n";
+ $email_headers .= 'X-AntiAbuse: Username - ' . $userdata['username'] . "\n";
+ $email_headers .= 'X-AntiAbuse: User IP - ' . decode_ip($user_ip) . "\n";
+
+ $emailer->use_template('admin_send_email');
$emailer->email_address($board_config['board_email']);
$emailer->set_subject($subject);
$emailer->extra_headers($email_headers);
$emailer->assign_vars(array(
- "SITENAME" => $board_config['sitename'],
- "BOARD_EMAIL" => $board_config['board_email'],
- "MESSAGE" => $message)
+ 'SITENAME' => $board_config['sitename'],
+ 'BOARD_EMAIL' => $board_config['board_email'],
+ 'MESSAGE' => $message)
);
$emailer->send();
$emailer->reset();
- $message = $lang['Email_sent'] . "
" . sprintf($lang['Click_return_admin_index'], "", "");
-
- message_die(GENERAL_MESSAGE, $message);
+ message_die(GENERAL_MESSAGE, $lang['Email_sent'] . '
' . sprintf($lang['Click_return_admin_index'], '', ''));
}
}
+if ( $error )
+{
+ $template->set_filenames(array(
+ 'reg_header' => 'error_body.tpl')
+ );
+ $template->assign_vars(array(
+ 'ERROR_MESSAGE' => $error_msg)
+ );
+ $template->assign_var_from_handle('ERROR_BOX', 'reg_header');
+}
+
//
// Initial selection
//
@@ -152,47 +164,50 @@ if( isset($HTTP_POST_VARS['submit']) )
$sql = "SELECT group_id, group_name
FROM ".GROUPS_TABLE . "
WHERE group_single_user <> 1";
-$g_result = $db->sql_query($sql);
-$group_list = $db->sql_fetchrowset($g_result);
-
-$select_list = '';
-$select_list .= '';
-
-for($i = 0;$i < count($group_list); $i++)
+if ( !($result = $db->sql_query($sql)) )
{
- $select_list .= "";
+ message_die(GENERAL_ERROR, 'Could not obtain list of groups', '', __LINE__, __FILE__, $sql);
}
-$select_list .= "";
+
+$select_list = '';
+if ( $row = $db->sql_fetchrow($result) )
+{
+ do
+ {
+ $select_list .= '';
+ }
+ while ( $row = $db->sql_fetchrow($result) );
+}
+$select_list .= '';
//
// Generate page
//
-include('page_header_admin.'.$phpEx);
+include('./page_header_admin.'.$phpEx);
$template->set_filenames(array(
- "body" => "admin/user_email_body.tpl")
+ 'body' => 'admin/user_email_body.tpl')
);
$template->assign_vars(array(
- "MESSAGE" => $message,
- "SUBJECT" => $subject,
+ 'MESSAGE' => $message,
+ 'SUBJECT' => $subject,
- "L_EMAIL_TITLE" => $lang['Email'],
- "L_EMAIL_EXPLAIN" => $lang['Mass_email_explain'],
- "L_COMPOSE" => $lang['Compose'],
- "L_RECIPIENTS" => $lang['Recipients'],
- "L_EMAIL_SUBJECT" => $lang['Subject'],
- "L_EMAIL_MSG" => $lang['Message'],
- "L_EMAIL" => $lang['Email'],
- "L_NOTICE" => $notice,
+ 'L_EMAIL_TITLE' => $lang['Email'],
+ 'L_EMAIL_EXPLAIN' => $lang['Mass_email_explain'],
+ 'L_COMPOSE' => $lang['Compose'],
+ 'L_RECIPIENTS' => $lang['Recipients'],
+ 'L_EMAIL_SUBJECT' => $lang['Subject'],
+ 'L_EMAIL_MSG' => $lang['Message'],
+ 'L_EMAIL' => $lang['Email'],
+ 'L_NOTICE' => $notice,
- "S_USER_ACTION" => append_sid('admin_mass_email.'.$phpEx),
- "S_GROUP_SELECT" => $select_list)
+ 'S_USER_ACTION' => append_sid('admin_mass_email.'.$phpEx),
+ 'S_GROUP_SELECT' => $select_list)
);
$template->pparse('body');
-include('page_footer_admin.'.$phpEx);
+include('./page_footer_admin.'.$phpEx);
-?>
+?>
\ No newline at end of file
diff --git a/phpBB/admin/admin_ranks.php b/phpBB/admin/admin_ranks.php
index 33546a91d3..197cf207d4 100644
--- a/phpBB/admin/admin_ranks.php
+++ b/phpBB/admin/admin_ranks.php
@@ -8,7 +8,6 @@
*
* $Id$
*
- *
***************************************************************************/
/***************************************************************************
@@ -32,13 +31,14 @@ if( !empty($setmodules) )
//
// Let's set the root dir for phpBB
//
-$phpbb_root_path = "../";
+$phpbb_root_path = "./../";
require($phpbb_root_path . 'extension.inc');
-require('pagestart.' . $phpEx);
+require('./pagestart.' . $phpEx);
if( isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']) )
{
$mode = ($HTTP_GET_VARS['mode']) ? $HTTP_GET_VARS['mode'] : $HTTP_POST_VARS['mode'];
+ $mode = htmlspecialchars($mode);
}
else
{
@@ -162,8 +162,19 @@ if( $mode != "" )
}
}
- if( $rank_id )
+ if ($rank_id)
{
+ if (!$special_rank)
+ {
+ $sql = "UPDATE " . USERS_TABLE . "
+ SET user_rank = 0
+ WHERE user_rank = $rank_id";
+
+ if( !$result = $db->sql_query($sql) )
+ {
+ message_die(GENERAL_ERROR, $lang['No_update_ranks'], "", __LINE__, __FILE__, $sql);
+ }
+ }
$sql = "UPDATE " . RANKS_TABLE . "
SET rank_title = '" . str_replace("\'", "''", $rank_title) . "', rank_special = $special_rank, rank_min = $min_posts, rank_image = '" . str_replace("\'", "''", $rank_image) . "'
WHERE rank_id = $rank_id";
@@ -255,7 +266,7 @@ if( $mode != "" )
$template->assign_vars(array(
"L_RANKS_TITLE" => $lang['Ranks_title'],
"L_RANKS_TEXT" => $lang['Ranks_explain'],
- "L_RANK" => $lang['Rank'],
+ "L_RANK" => $lang['Rank_title'],
"L_RANK_MINIMUM" => $lang['Rank_minimum'],
"L_SPECIAL_RANK" => $lang['Special_rank'],
"L_EDIT" => $lang['Edit'],
@@ -360,6 +371,6 @@ else
$template->pparse("body");
-include('page_footer_admin.'.$phpEx);
+include('./page_footer_admin.'.$phpEx);
?>
diff --git a/phpBB/admin/admin_smilies.php b/phpBB/admin/admin_smilies.php
index 4b0d66a500..19511c22bb 100644
--- a/phpBB/admin/admin_smilies.php
+++ b/phpBB/admin/admin_smilies.php
@@ -47,9 +47,9 @@ if( isset($HTTP_GET_VARS['export_pack']) )
}
}
-$phpbb_root_path = "../";
+$phpbb_root_path = "./../";
require($phpbb_root_path . 'extension.inc');
-require('pagestart.' . $phpEx);
+require('./pagestart.' . $phpEx);
//
// Check to see what mode we should operate in.
@@ -57,6 +57,7 @@ require('pagestart.' . $phpEx);
if( isset($HTTP_POST_VARS['mode']) || isset($HTTP_GET_VARS['mode']) )
{
$mode = ( isset($HTTP_POST_VARS['mode']) ) ? $HTTP_POST_VARS['mode'] : $HTTP_GET_VARS['mode'];
+ $mode = htmlspecialchars($mode);
}
else
{
@@ -72,7 +73,7 @@ $dir = @opendir($phpbb_root_path . $board_config['smilies_path']);
while($file = @readdir($dir))
{
- if( !@is_dir($phpbb_root_path . $board_config['smilies_path'] . '/' . $file) )
+ if( !@is_dir(phpbb_realpath($phpbb_root_path . $board_config['smilies_path'] . '/' . $file)) )
{
$img_size = @getimagesize($phpbb_root_path . $board_config['smilies_path'] . '/' . $file);
@@ -239,7 +240,7 @@ else if( isset($HTTP_POST_VARS['export_pack']) || isset($HTTP_GET_VARS['export_p
FROM " . SMILIES_TABLE;
if( !$result = $db->sql_query($sql) )
{
- message_die(GENERAL_ERROR, "Couldn't delete smiley", "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, "Could not get smiley list", "", __LINE__, __FILE__, $sql);
}
$resultset = $db->sql_fetchrowset($result);
@@ -265,7 +266,7 @@ else if( isset($HTTP_POST_VARS['export_pack']) || isset($HTTP_GET_VARS['export_p
message_die(GENERAL_MESSAGE, $message);
}
-else if( isset($HTTP_POST_VARS['add']) )
+else if( isset($HTTP_POST_VARS['add']) || isset($HTTP_GET_VARS['add']) )
{
//
// Admin has selected to add a smiley.
@@ -286,7 +287,7 @@ else if( isset($HTTP_POST_VARS['add']) )
$template->assign_vars(array(
"L_SMILEY_TITLE" => $lang['smiley_title'],
"L_SMILEY_CONFIG" => $lang['smiley_config'],
- "L_SMILEY_EXPLAIN" => $lang['smiley_instr'],
+ "L_SMILEY_EXPLAIN" => $lang['smile_desc'],
"L_SMILEY_CODE" => $lang['smiley_code'],
"L_SMILEY_URL" => $lang['smiley_url'],
"L_SMILEY_EMOTION" => $lang['smiley_emot'],
@@ -313,6 +314,7 @@ else if ( $mode != "" )
//
$smiley_id = ( !empty($HTTP_POST_VARS['id']) ) ? $HTTP_POST_VARS['id'] : $HTTP_GET_VARS['id'];
+ $smiley_id = intval($smiley_id);
$sql = "DELETE FROM " . SMILIES_TABLE . "
WHERE smilies_id = " . $smiley_id;
@@ -333,6 +335,7 @@ else if ( $mode != "" )
//
$smiley_id = ( !empty($HTTP_POST_VARS['id']) ) ? $HTTP_POST_VARS['id'] : $HTTP_GET_VARS['id'];
+ $smiley_id = intval($smiley_id);
$sql = "SELECT *
FROM " . SMILIES_TABLE . "
@@ -340,7 +343,7 @@ else if ( $mode != "" )
$result = $db->sql_query($sql);
if( !$result )
{
- message_die(GENERAL_ERROR, $lang['smile_edit_err'], "", __LINE__, __FILE__, $sql);
+ message_die(GENERAL_ERROR, 'Could not obtain emoticon information', "", __LINE__, __FILE__, $sql);
}
$smile_data = $db->sql_fetchrow($result);
@@ -399,10 +402,17 @@ else if ( $mode != "" )
// Get the submitted data, being careful to ensure that we only
// accept the data we are looking for.
//
- $smile_code = ( isset($HTTP_POST_VARS['smile_code']) ) ? $HTTP_POST_VARS['smile_code'] : $HTTP_GET_VARS['smile_code'];
- $smile_url = ( isset($HTTP_POST_VARS['smile_url']) ) ? $HTTP_POST_VARS['smile_url'] : $HTTP_GET_VARS['smile_url'];
- $smile_emotion = ( isset($HTTP_POST_VARS['smile_emotion']) ) ? $HTTP_POST_VARS['smile_emotion'] : $HTTP_GET_VARS['smile_emotion'];
+ $smile_code = ( isset($HTTP_POST_VARS['smile_code']) ) ? trim($HTTP_POST_VARS['smile_code']) : trim($HTTP_GET_VARS['smile_code']);
+ $smile_url = ( isset($HTTP_POST_VARS['smile_url']) ) ? trim($HTTP_POST_VARS['smile_url']) : trim($HTTP_GET_VARS['smile_url']);
+ $smile_emotion = ( isset($HTTP_POST_VARS['smile_emotion']) ) ? trim($HTTP_POST_VARS['smile_emotion']) : trim($HTTP_GET_VARS['smile_emotion']);
$smile_id = ( isset($HTTP_POST_VARS['smile_id']) ) ? intval($HTTP_POST_VARS['smile_id']) : intval($HTTP_GET_VARS['smile_id']);
+
+ // If no code was entered complain ...
+ if ($smile_code == '' || $smile_url == '')
+ {
+ message_die(MESSAGE, $lang['Fields_empty']);
+ }
+
//
// Convert < and > to proper htmlentities for parsing.
//
@@ -415,8 +425,7 @@ else if ( $mode != "" )
$sql = "UPDATE " . SMILIES_TABLE . "
SET code = '" . str_replace("\'", "''", $smile_code) . "', smile_url = '" . str_replace("\'", "''", $smile_url) . "', emoticon = '" . str_replace("\'", "''", $smile_emotion) . "'
WHERE smilies_id = $smile_id";
- $result = $db->sql_query($sql);
- if( !$result )
+ if( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, "Couldn't update smilies info", "", __LINE__, __FILE__, $sql);
}
@@ -438,6 +447,15 @@ else if ( $mode != "" )
$smile_code = ( isset($HTTP_POST_VARS['smile_code']) ) ? $HTTP_POST_VARS['smile_code'] : $HTTP_GET_VARS['smile_code'];
$smile_url = ( isset($HTTP_POST_VARS['smile_url']) ) ? $HTTP_POST_VARS['smile_url'] : $HTTP_GET_VARS['smile_url'];
$smile_emotion = ( isset($HTTP_POST_VARS['smile_emotion']) ) ? $HTTP_POST_VARS['smile_emotion'] : $HTTP_GET_VARS['smile_emotion'];
+ $smile_code = trim($smile_code);
+ $smile_url = trim($smile_url);
+ $smile_emotion = trim($smile_emotion);
+
+ // If no code was entered complain ...
+ if ($smile_code == '' || $smile_url == '')
+ {
+ message_die(MESSAGE, $lang['Fields_empty']);
+ }
//
// Convert < and > to proper htmlentities for parsing.
@@ -536,6 +554,6 @@ else
//
// Page Footer
//
-include('page_footer_admin.'.$phpEx);
+include('./page_footer_admin.'.$phpEx);
-?>
+?>
\ No newline at end of file
diff --git a/phpBB/admin/admin_styles.php b/phpBB/admin/admin_styles.php
index 718726a5a5..5a135768e4 100644
--- a/phpBB/admin/admin_styles.php
+++ b/phpBB/admin/admin_styles.php
@@ -38,26 +38,28 @@ if( !empty($setmodules) )
//
// Check if the user has cancled a confirmation message.
//
-$phpbb_root_path = "../";
+$phpbb_root_path = "./../";
+require($phpbb_root_path . 'extension.inc');
$confirm = ( isset($HTTP_POST_VARS['confirm']) ) ? TRUE : FALSE;
$cancel = ( isset($HTTP_POST_VARS['cancel']) ) ? TRUE : FALSE;
-if( empty($HTTP_POST_VARS['send_file']) )
-{
- $no_page_header = ( $cancel ) ? TRUE : FALSE;
- require($phpbb_root_path . 'extension.inc');
- require('pagestart.' . $phpEx);
-}
+$no_page_header = (!empty($HTTP_POST_VARS['send_file']) || $cancel) ? TRUE : FALSE;
-if( $cancel )
+require('./pagestart.' . $phpEx);
+
+$confirm = ( isset($HTTP_POST_VARS['confirm']) ) ? TRUE : FALSE;
+$cancel = ( isset($HTTP_POST_VARS['cancel']) ) ? TRUE : FALSE;
+
+if ($cancel)
{
- header("Location: " . append_sid("admin_styles.$phpEx"));
+ redirect('admin/' . append_sid("admin_styles.$phpEx", true));
}
if( isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']) )
{
$mode = ( isset($HTTP_GET_VARS['mode']) ) ? $HTTP_GET_VARS['mode'] : $HTTP_POST_VARS['mode'];
+ $mode = htmlspecialchars($mode);
}
else
{
@@ -73,7 +75,7 @@ switch( $mode )
if( isset($install_to) )
{
- include($phpbb_root_path. "templates/" . $install_to . "/theme_info.cfg");
+ include($phpbb_root_path. "templates/" . basename($install_to) . "/theme_info.cfg");
$template_name = $$install_to;
$found = FALSE;
@@ -132,9 +134,9 @@ switch( $mode )
{
while( $sub_dir = @readdir($dir) )
{
- if( !is_file($phpbb_root_path . 'templates/' .$sub_dir) && !is_link($phpbb_root_path . 'templates/' .$sub_dir) && $sub_dir != "." && $sub_dir != ".." && $sub_dir != "CVS" )
+ if( !is_file(phpbb_realpath($phpbb_root_path . 'templates/' .$sub_dir)) && !is_link(phpbb_realpath($phpbb_root_path . 'templates/' .$sub_dir)) && $sub_dir != "." && $sub_dir != ".." && $sub_dir != "CVS" )
{
- if( @file_exists($phpbb_root_path. "templates/" . $sub_dir . "/theme_info.cfg") )
+ if( @file_exists(@phpbb_realpath($phpbb_root_path. "templates/" . $sub_dir . "/theme_info.cfg")) )
{
include($phpbb_root_path. "templates/" . $sub_dir . "/theme_info.cfg");
@@ -490,7 +492,7 @@ switch( $mode )
$themes_title = $lang['Edit_theme'];
$themes_explain = $lang['Edit_theme_explain'];
- $style_id = $HTTP_GET_VARS['style_id'];
+ $style_id = intval($HTTP_GET_VARS['style_id']);
$selected_names = array();
$selected_values = array();
@@ -549,7 +551,7 @@ switch( $mode )
$s_template_select = '';
while( $file = @readdir($dir) )
{
- if( !is_file($phpbb_root_path . 'templates/' . $file) && !is_link($phpbb_root_path . 'templates/' . $file) && $file != "." && $file != ".." && $file != "CVS" )
+ if( !is_file(phpbb_realpath($phpbb_root_path . 'templates/' . $file)) && !is_link(phpbb_realpath($phpbb_root_path . 'templates/' . $file)) && $file != "." && $file != ".." && $file != "CVS" )
{
if($file == $selected['template_name'])
{
@@ -561,6 +563,7 @@ switch( $mode )
}
}
}
+ $s_template_select .= '';
}
else
{
@@ -704,7 +707,7 @@ switch( $mode )
$sql = "SELECT *
FROM " . THEMES_TABLE . "
- WHERE template_name = '$template_name'";
+ WHERE template_name = '" . str_replace("\'", "''", $template_name) . "'";
if(!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, "Could not get theme data for selected template", "", __LINE__, __FILE__, $sql);
@@ -736,7 +739,7 @@ switch( $mode )
@umask(0111);
- $fp = @fopen($phpbb_root_path . 'templates/' . $template_name . '/theme_info.cfg', 'w');
+ $fp = @fopen($phpbb_root_path . 'templates/' . basename($template_name) . '/theme_info.cfg', 'w');
if( !$fp )
{
@@ -747,7 +750,7 @@ switch( $mode )
$s_hidden_fields = '';
$s_hidden_fields .= '';
- $download_form = '
diff --git a/phpBB/templates/subSilver/admin/group_edit_body.tpl b/phpBB/templates/subSilver/admin/group_edit_body.tpl
index cc7ca5c795..ed96b17c30 100644
--- a/phpBB/templates/subSilver/admin/group_edit_body.tpl
+++ b/phpBB/templates/subSilver/admin/group_edit_body.tpl
@@ -11,18 +11,18 @@
{L_GROUP_NAME}: |
-
+
|
{L_GROUP_DESCRIPTION}: |
-
+
|
{L_GROUP_MODERATOR}: |
- |
+ |
diff --git a/phpBB/templates/subSilver/admin/index_body.tpl b/phpBB/templates/subSilver/admin/index_body.tpl
index ec1eab7ce0..f8fe7c3c88 100644
--- a/phpBB/templates/subSilver/admin/index_body.tpl
+++ b/phpBB/templates/subSilver/admin/index_body.tpl
@@ -77,3 +77,9 @@
+
+{L_VERSION_INFORMATION}
+
+{VERSION_INFO}
+
+
diff --git a/phpBB/templates/subSilver/admin/index_frameset.tpl b/phpBB/templates/subSilver/admin/index_frameset.tpl
index e8b8b79e57..fef79afd1e 100644
--- a/phpBB/templates/subSilver/admin/index_frameset.tpl
+++ b/phpBB/templates/subSilver/admin/index_frameset.tpl
@@ -1,12 +1,12 @@
phpBB Administration
-
+
-
{L_RANK_TITLE}: |
- |
+ |
{L_RANK_SPECIAL} |
@@ -17,12 +17,12 @@
{L_RANK_MINIMUM}: |
- |
+ |
{L_RANK_IMAGE}:
{L_RANK_IMAGE_EXPLAIN} |
- {IMAGE_DISPLAY} |
+ {IMAGE_DISPLAY} |
|
diff --git a/phpBB/templates/subSilver/admin/ranks_list_body.tpl b/phpBB/templates/subSilver/admin/ranks_list_body.tpl
index 9060e5841b..368326fa17 100644
--- a/phpBB/templates/subSilver/admin/ranks_list_body.tpl
+++ b/phpBB/templates/subSilver/admin/ranks_list_body.tpl
@@ -16,8 +16,8 @@
{ranks.RANK} |
{ranks.RANK_MIN} |
{ranks.SPECIAL_RANK} |
- {L_EDIT} |
- {L_DELETE} |
+ {L_EDIT} |
+ {L_DELETE} |
diff --git a/phpBB/templates/subSilver/admin/smile_edit_body.tpl b/phpBB/templates/subSilver/admin/smile_edit_body.tpl
index 087f623862..b453afc60d 100644
--- a/phpBB/templates/subSilver/admin/smile_edit_body.tpl
+++ b/phpBB/templates/subSilver/admin/smile_edit_body.tpl
@@ -18,7 +18,7 @@ function update_smiley(newimage)
{L_SMILEY_CODE} |
- |
+ |
{L_SMILEY_URL} |
@@ -26,7 +26,7 @@ function update_smiley(newimage)
{L_SMILEY_EMOTION} |
- |
+ |
{S_HIDDEN_FIELDS} |
diff --git a/phpBB/templates/subSilver/admin/styles_edit_body.tpl b/phpBB/templates/subSilver/admin/styles_edit_body.tpl
index 170543216c..08cf7217f9 100755
--- a/phpBB/templates/subSilver/admin/styles_edit_body.tpl
+++ b/phpBB/templates/subSilver/admin/styles_edit_body.tpl
@@ -9,7 +9,7 @@
{L_THEME_NAME}: |
- |
+ |
{L_TEMPLATE}: |
@@ -22,218 +22,218 @@
{L_STYLESHEET}: Filename for CSS stylesheet to use for this theme. |
- |
+ |
|
{L_BACKGROUND_IMAGE}: |
- |
+ |
|
{L_BACKGROUND_COLOR}: |
- |
+ |
|
{L_BODY_TEXT_COLOR}: |
- |
+ |
|
{L_BODY_LINK_COLOR}: |
- |
+ |
|
{L_BODY_VLINK_COLOR}: |
- |
+ |
|
{L_BODY_ALINK_COLOR}: |
- |
+ |
|
{L_BODY_HLINK_COLOR}: |
- |
+ |
|
{L_TR_COLOR1}: |
- |
-
+ | |
+
|
{L_TR_COLOR2}: |
- |
-
+ | |
+
|
{L_TR_COLOR3}: |
- |
-
+ | |
+
|
{L_TR_CLASS1}: |
- |
-
+ | |
+
|
{L_TR_CLASS2}: |
- |
-
+ | |
+
|
{L_TR_CLASS3}: |
- |
-
+ | |
+
|
{L_TH_COLOR1}: |
- |
-
+ | |
+
|
{L_TH_COLOR2}: |
- |
-
+ | |
+
|
{L_TH_COLOR3}: |
- |
-
+ | |
+
|
{L_TH_CLASS1}: |
- |
-
+ | |
+
|
{L_TH_CLASS2}: |
- |
-
+ | |
+
|
{L_TH_CLASS3}: |
- |
-
+ | |
+
|
{L_TD_COLOR1}: |
- |
-
+ | |
+
|
{L_TD_COLOR2}: |
- |
-
+ | |
+
|
{L_TD_COLOR3}: |
- |
-
+ | |
+
|
{L_TD_CLASS1}: |
- |
-
+ | |
+
|
{L_TD_CLASS2}: |
- |
-
+ | |
+
|
{L_TD_CLASS3}: |
- |
-
+ | |
+
|
{L_FONTFACE_1}: |
- |
-
+ | |
+
|
{L_FONTFACE_2}: |
- |
-
+ | |
+
|
{L_FONTFACE_3}: |
- |
-
+ | |
+
|
{L_FONTSIZE_1}: |
- |
-
+ | |
+
|
{L_FONTSIZE_2}: |
- |
-
+ | |
+
|
{L_FONTSIZE_3}: |
- |
-
+ | |
+
|
{L_FONTCOLOR_1}: |
- |
-
+ | |
+
|
{L_FONTCOLOR_2}: |
- |
-
+ | |
+
|
{L_FONTCOLOR_3}: |
- |
-
+ | |
+
|
{L_SPAN_CLASS_1}: |
- |
-
+ | |
+
|
{L_SPAN_CLASS_2}: |
- |
-
+ | |
+
|
{L_SPAN_CLASS_3}: |
- |
-
+ | |
+
|
diff --git a/phpBB/templates/subSilver/admin/user_ban_body.tpl b/phpBB/templates/subSilver/admin/user_ban_body.tpl
index f5f1b90836..c805f7be69 100644
--- a/phpBB/templates/subSilver/admin/user_ban_body.tpl
+++ b/phpBB/templates/subSilver/admin/user_ban_body.tpl
@@ -3,13 +3,13 @@
{L_BAN_EXPLAIN}
-