class MailAllowed
Filter mails with a specific allowed e-mail addresses and only leaves those in the 'to'.
Constants
- VERSION
Attributes
allowed_addresses[R]
fallback[R]
Public Class Methods
new(allowed_addresses, fallback = nil)
click to toggle source
@param [Array<String>, include?] allowed_addresses
@param [String] fallback
# File lib/mail_allowed.rb, line 10 def initialize(allowed_addresses, fallback = nil) @allowed_addresses = allowed_addresses @fallback = fallback end
Public Instance Methods
delivering_email(mail)
click to toggle source
# File lib/mail_allowed.rb, line 15 def delivering_email(mail) mail.to = mail.to.select { |recipient| allowed?(recipient) } mail.to = [fallback] unless mail.to.any? end
Private Instance Methods
allowed?(recipient)
click to toggle source
# File lib/mail_allowed.rb, line 22 def allowed?(recipient) allowed_addresses.any? do |address| if address.start_with?('@') recipient.end_with?(address) else address == recipient end end end