getVariable('email_protocol')->value; $body = html_entity_decode($body); if ($gateway === 'smtp') { try { $email = Services::email(); $emailConfig = [ 'protocol' => $gateway, 'SMTPHost' => $settings_model->getVariable('email_host')->value, 'SMTPUser' => $settings_model->getVariable('email_from_address')->value, 'SMTPPass' => $settings_model->getVariable('email_pass')->value, 'SMTPPort' => (int) $settings_model->getVariable('email_port')->value, 'SMTPCrypto' => $settings_model->getVariable('email_cert')->value === 'none' ? '' : $settings_model->getVariable('email_cert')->value, 'SMTPTimeout' => 15, 'mailType' => 'html', 'wordWrap' => true, ]; $email->initialize($emailConfig); $email->setFrom($settings_model->getVariable('email_from_address')->value, $settings_model->getVariable('email_from_name')->value); $email->setTo($recipient); $email->setSubject($subject); $email->setMessage($body); if (!$email->send()) { log_message('error', 'Error enviando email: ' . $email->printDebugger(['headers', 'subject', 'body'])); return false; } return true; } catch (\Throwable $e) { log_message('error', 'EmailService failed: ' . $e->getMessage()); return false; } } return false; } }