prepare(" SELECT from_name FROM company_smtp WHERE company_id = :company_id LIMIT 1 "); $sth->execute([':company_id' => $company_id]); db_check($sth, $answer); $row = $sth->fetch(PDO::FETCH_ASSOC); if (!$row) { $answer['message'] = 'No SMTP configuration found. Please save your settings first.'; http_response_code(422); exit(json_encode($answer)); } $channel_name = $row['from_name'] ?: 'WMS System'; // Use existing mailer — it reads company_smtp via pdo1 automatically require_once $include_url . 'assets/utils/module/mailer.php'; $mailer = new mailer(['pdo1' => $pdo1]); $mailer->send_email([ 'company_id' => $company_id, 'smtp' => [], // empty = mailer reads from company_smtp 'to' => $to, 'subject' => 'SMTP Test — WMS', 'message' => "This is a test email from your WMS SMTP configuration.\n\nIf you received this, your SMTP settings are working correctly.", 'channel_name' => $channel_name, 'key' => $pinkey, ]); $answer['success'] = 1; $answer['message'] = 'Test email sent to ' . htmlspecialchars($to) . '.'; } catch (Exception $e) { $answer['message'] = 'Failed to send test email: ' . $e->getMessage(); http_response_code(500); } exit(json_encode($answer)); ?>