class Makit::Email
def configure_gmail_defaults
def configure_gmail_defaults Mail.defaults do delivery_method :smtp, { address: 'smtp.gmail.com', port: 587, domain: 'gmail.com', user_name: ENV['SMTP_USERNAME'], password: ENV['SMTP_PASSWORD'], authentication: 'plain', enable_starttls_auto: true } end end
def send(subject:, body:)
def send(subject:, body:) send_to(to: ENV['MAKIT_EMAIL_RECIPIENT'], subject: subject, body: body) end
def send_test_email(to: ENV['MAKIT_EMAIL_RECIPIENT'], subject:, body:)
def send_test_email(to: ENV['MAKIT_EMAIL_RECIPIENT'], subject:, body:) raise ArgumentError, "Recipient email not set. Please set MAKIT_EMAIL_RECIPIENT environment variable" unless to mail = Mail.new do from ENV['SMTP_USERNAME'] to to subject subject body body end begin mail.deliver! true rescue => e puts "Failed to send email: #{e.message}" false end end
def send_to(to:, subject:, body:)
def send_to(to:, subject:, body:) raise ArgumentError, "Recipient email not set" unless to mail = Mail.new do from ENV['SMTP_USERNAME'] to to subject subject body body end begin mail.deliver! true rescue => e puts "Failed to send email: #{e.message}" false end end