1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-08-06 16:56:44 +02:00

Merge pull request #6794 from rxu/ticket/17489

[ticket/17489] Fix various messenger issues
This commit is contained in:
Marc Alexander
2025-04-03 21:02:40 +02:00
committed by GitHub
11 changed files with 95 additions and 31 deletions

View File

@@ -227,6 +227,10 @@ class acp_email
$used_lang = $email_list[$i][0]['lang'];
$used_method = $email_list[$i][0]['method'];
/**
* @var \phpbb\messenger\method\messenger_interface $messenger_method
* @psalm-suppress UndefinedMethod
*/
foreach ($messenger_collection_iterator as $messenger_method)
{
$notify_method = $messenger_method->get_id();
@@ -265,19 +269,12 @@ class acp_email
}
$errored = !$messenger_method->send() || $errored;
$messenger_method->save_queue();
}
}
}
unset($email_list);
if ($use_queue)
{
foreach ($messenger_collection_iterator as $messenger_method)
{
$messenger_method->save_queue();
}
}
if ($generate_log_entry)
{
if (!empty($usernames))

View File

@@ -205,6 +205,10 @@ class acp_inactive
do
{
/**
* @var \phpbb\messenger\method\messenger_interface $messenger_method
* @psalm-suppress UndefinedMethod
*/
foreach ($messenger_collection_iterator as $messenger_method)
{
if ($messenger_method->get_id() == $user_row['user_notify_type'] || $user_row['user_notify_type'] == $messenger_method::NOTIFY_BOTH)
@@ -219,6 +223,7 @@ class acp_inactive
]);
$messenger_method->send();
$messenger_method->save_queue();
}
}
@@ -227,11 +232,6 @@ class acp_inactive
}
while ($row = $db->sql_fetchrow($result));
foreach ($messenger_collection_iterator as $messenger_method)
{
$messenger_method->save_queue();
}
// Add the remind state to the database and increase activation expiration by one day
$sql = 'UPDATE ' . USERS_TABLE . '
SET user_reminded = user_reminded + 1,

View File

@@ -133,6 +133,11 @@ class ucp_activate
$messenger = $phpbb_container->get('messenger.method_collection');
$messenger_collection_iterator = $messenger->getIterator();
/**
* @var \phpbb\messenger\method\messenger_interface $messenger_method
* @psalm-suppress UndefinedMethod
*/
foreach ($messenger_collection_iterator as $messenger_method)
{
if ($messenger_method->get_id() == $user_row['user_notify_type'] || $user_row['user_notify_type'] == $messenger_method::NOTIFY_BOTH)

View File

@@ -138,6 +138,10 @@ class ucp_resend
$messenger_collection_iterator = $messenger->getIterator();
while ($row = $db->sql_fetchrow($result))
{
/**
* @var \phpbb\messenger\method\messenger_interface $messenger_method
* @psalm-suppress UndefinedMethod
*/
foreach ($messenger_collection_iterator as $messenger_method)
{
$messenger_method->set_use_queue(false);
@@ -157,12 +161,6 @@ class ucp_resend
}
}
$db->sql_freeresult($result);
// Save the queue in the messenger method class (has to be called or these messages could be lost)
foreach ($messenger_collection_iterator as $messenger_method)
{
$messenger_method->save_queue();
}
}
$this->update_activation_expiration();