aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/mcp/mcp_warn.php
diff options
context:
space:
mode:
authorlavigor <lavigor@users.noreply.github.com>2015-08-31 22:32:25 +0300
committerlavigor <lavigor@users.noreply.github.com>2015-09-02 19:37:41 +0300
commit9a5de3fc1e3cccff612ea40e900a5825552279a1 (patch)
tree7b6d2fda3d672c83b1edba0dfc63cd77c5e1b583 /phpBB/includes/mcp/mcp_warn.php
parentbfbce5a1b0b2e22ea2027d82d87c8bc32917a5b2 (diff)
downloadforums-9a5de3fc1e3cccff612ea40e900a5825552279a1.tar
forums-9a5de3fc1e3cccff612ea40e900a5825552279a1.tar.gz
forums-9a5de3fc1e3cccff612ea40e900a5825552279a1.tar.bz2
forums-9a5de3fc1e3cccff612ea40e900a5825552279a1.tar.xz
forums-9a5de3fc1e3cccff612ea40e900a5825552279a1.zip
[ticket/14134] Send warning notification PM in user's language.
PHPBB3-14134
Diffstat (limited to 'phpBB/includes/mcp/mcp_warn.php')
-rw-r--r--phpBB/includes/mcp/mcp_warn.php26
1 files changed, 22 insertions, 4 deletions
diff --git a/phpBB/includes/mcp/mcp_warn.php b/phpBB/includes/mcp/mcp_warn.php
index d724b8703b..7d5e241eee 100644
--- a/phpBB/includes/mcp/mcp_warn.php
+++ b/phpBB/includes/mcp/mcp_warn.php
@@ -530,12 +530,30 @@ function add_warning($user_row, $warning, $send_pm = true, $post_id = 0)
include_once($phpbb_root_path . 'includes/functions_privmsgs.' . $phpEx);
include_once($phpbb_root_path . 'includes/message_parser.' . $phpEx);
- $user_row['user_lang'] = (file_exists($phpbb_root_path . 'language/' . $user_row['user_lang'] . "/mcp.$phpEx")) ? $user_row['user_lang'] : $config['default_lang'];
- include($phpbb_root_path . 'language/' . basename($user_row['user_lang']) . "/mcp.$phpEx");
+ // Okay we need to get the reason from the warned users language
+ // Only load up the language pack if the language is different to the current one
+ if ($user_row['user_lang'] != $user->lang_name)
+ {
+ // Load up the language pack
+ $lang = array();
+
+ $user_row['user_lang'] = (file_exists($phpbb_root_path . 'language/' . basename($user_row['user_lang']) . "/mcp." . $phpEx)) ? $user_row['user_lang'] : $config['default_lang'];
+ include($phpbb_root_path . 'language/' . basename($user_row['user_lang']) . "/mcp." . $phpEx);
+
+ $warn_pm_subject = $lang['WARNING_PM_SUBJECT'];
+ $warn_pm_body = sprintf($lang['WARNING_PM_BODY'], $warning);
+
+ unset($lang); // Free memory
+ }
+ else
+ {
+ $warn_pm_subject = $user->lang('WARNING_PM_SUBJECT');
+ $warn_pm_body = $user->lang('WARNING_PM_BODY', $warning);
+ }
$message_parser = new parse_message();
- $message_parser->message = $user->lang('WARNING_PM_BODY', $warning);
+ $message_parser->message = $warn_pm_body;
$message_parser->parse(true, true, true, false, false, true, true);
$pm_data = array(
@@ -553,7 +571,7 @@ function add_warning($user_row, $warning, $send_pm = true, $post_id = 0)
'address_list' => array('u' => array($user_row['user_id'] => 'to')),
);
- submit_pm('post', $user->lang('WARNING_PM_SUBJECT'), $pm_data, false);
+ submit_pm('post', $warn_pm_subject, $pm_data, false);
}
add_log('admin', 'LOG_USER_WARNING', $user_row['username']);