pino-8.x-1.2-no-core/modules/member_mailer/member_mailer.batch.inc
modules/member_mailer/member_mailer.batch.inc
<?php /** * @file * Handler for member_mailer batches. */ use Drupal\member\Entity\Member; /** * Main batch task. */ function member_mailer_batch_send($member_id, $subject, $message, $from, &$context) { $member = Member::load($member_id); $mailManager = \Drupal::service('plugin.manager.mail'); $params = [ 'subject' => $subject, 'message' => $message, 'from' => $from, ]; $mailManager->mail('member_mailer', 'member_mail', $member->get('field_email_address')->value, \Drupal::currentUser()->getPreferredLangcode(), $params, NULL, TRUE); $context['results'][] = $member_id; $context['message'] = t('Sending mail to @mail', ['@mail' => $member->get('field_email_address')->value]); } /** * Handler for batch finish. */ function member_mailer_batch_send_finished($success, $results, $operations) { // The 'success' parameter means no fatal PHP errors were detected. All // other error management should be handled using 'results'. if ($success) { \Drupal::messenger()->addMessage(t('%emails mails were sent successfully.', ['%emails' => count($results)]), 'status'); } else { \Drupal::messenger()->addMessage(t('An error occurred and mailing did not complete.'), 'error'); } }