diff options
| author | Andreas Fischer <bantu@phpbb.com> | 2012-03-22 18:15:10 +0100 |
|---|---|---|
| committer | Andreas Fischer <bantu@phpbb.com> | 2012-03-22 18:15:10 +0100 |
| commit | cc13bac412442a1d72affcc3222b6bfca094e92a (patch) | |
| tree | 52bb477441ad8eea535681910ed15cebcc9cfca9 /phpBB/includes/functions_privmsgs.php | |
| parent | 81310f93517d50d27196b6aa1051ad3b87b5e689 (diff) | |
| parent | 57eb50812f138296085b51b74079037c2efe1c43 (diff) | |
| download | forums-cc13bac412442a1d72affcc3222b6bfca094e92a.tar forums-cc13bac412442a1d72affcc3222b6bfca094e92a.tar.gz forums-cc13bac412442a1d72affcc3222b6bfca094e92a.tar.bz2 forums-cc13bac412442a1d72affcc3222b6bfca094e92a.tar.xz forums-cc13bac412442a1d72affcc3222b6bfca094e92a.zip | |
Merge branch 'develop-olympus' into develop
* develop-olympus:
[ticket/10684] Adjust function and parameter name, minor changes.
[ticket/10684] Rename function phpbb_get_banned_users_ids() parameter
[ticket/10684] Remove intval mapping for array keys
[ticket/10684] Adjust pm_notifications() to handle stale bans
[ticket/10684] Cast user_id to integer
[ticket/10684] Refactor $sql_ignore_users array update
[ticket/10684] Remove isset() for $sql_ignore_users update
[ticket/10684] Fix 2 typos in comment lines.
[ticket/10684] Send notifications for users with stale bans
Conflicts:
phpBB/includes/functions_user.php
Diffstat (limited to 'phpBB/includes/functions_privmsgs.php')
| -rw-r--r-- | phpBB/includes/functions_privmsgs.php | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/phpBB/includes/functions_privmsgs.php b/phpBB/includes/functions_privmsgs.php index 91e453b8e0..a6fb87536a 100644 --- a/phpBB/includes/functions_privmsgs.php +++ b/phpBB/includes/functions_privmsgs.php @@ -1666,6 +1666,7 @@ function pm_notification($mode, $author, $recipients, $subject, $message, $msg_i $subject = censor_text($subject); + // Exclude guests, current user and banned users from notifications unset($recipients[ANONYMOUS], $recipients[$user->data['user_id']]); if (!sizeof($recipients)) @@ -1673,18 +1674,12 @@ function pm_notification($mode, $author, $recipients, $subject, $message, $msg_i return; } - // Get banned User ID's - $sql = 'SELECT ban_userid - FROM ' . BANLIST_TABLE . ' - WHERE ' . $db->sql_in_set('ban_userid', array_map('intval', array_keys($recipients))) . ' - AND ban_exclude = 0'; - $result = $db->sql_query($sql); - - while ($row = $db->sql_fetchrow($result)) + if (!function_exists('phpbb_get_banned_user_ids')) { - unset($recipients[$row['ban_userid']]); + include($phpbb_root_path . 'includes/functions_user.' . $phpEx); } - $db->sql_freeresult($result); + $banned_users = phpbb_get_banned_user_ids(array_keys($recipients)); + $recipients = array_diff(array_keys($recipients), $banned_users); if (!sizeof($recipients)) { @@ -1693,7 +1688,7 @@ function pm_notification($mode, $author, $recipients, $subject, $message, $msg_i $sql = 'SELECT user_id, username, user_email, user_lang, user_notify_pm, user_notify_type, user_jabber FROM ' . USERS_TABLE . ' - WHERE ' . $db->sql_in_set('user_id', array_map('intval', array_keys($recipients))); + WHERE ' . $db->sql_in_set('user_id', $recipients); $result = $db->sql_query($sql); $msg_list_ary = array(); |
