Module: Mailkick

Defined in:
lib/mailkick/service/aws_ses.rb,
lib/mailkick.rb,
lib/mailkick/model.rb,
lib/mailkick/engine.rb,
lib/mailkick/legacy.rb,
lib/mailkick/service.rb,
lib/mailkick/version.rb,
lib/mailkick/url_helper.rb,
app/models/mailkick/opt_out.rb,
lib/mailkick/service/mailgun.rb,
lib/mailkick/service/mandrill.rb,
lib/mailkick/service/postmark.rb,
lib/mailkick/service/sendgrid.rb,
lib/mailkick/service/mailchimp.rb,
app/models/mailkick/subscription.rb,
lib/mailkick/service/sendgrid_v2.rb,
lib/generators/mailkick/views_generator.rb,
lib/generators/mailkick/install_generator.rb,
app/controllers/mailkick/subscriptions_controller.rb

Overview

Defined Under Namespace

Modules: Generators, Legacy, Model, UrlHelper Classes: Engine, OptOut, Service, Subscription, SubscriptionsController

Constant Summary collapse

VERSION =
"1.0.1"

Class Method Summary collapse

Class Method Details

.discover_servicesObject



34
35
36
37
38
# File 'lib/mailkick.rb', line 34

def self.discover_services
  Service.subclasses.each do |service|
    services << service.new if service.discoverable?
  end
end

.fetch_opt_outsObject



30
31
32
# File 'lib/mailkick.rb', line 30

def self.fetch_opt_outs
  services.each(&:fetch_opt_outs)
end

.generate_token(subscriber, list) ⇒ Object

Raises:

  • (ArgumentError)


44
45
46
47
48
49
# File 'lib/mailkick.rb', line 44

def self.generate_token(subscriber, list)
  raise ArgumentError, "Missing subscriber" unless subscriber
  raise ArgumentError, "Missing list" unless list.present?

  message_verifier.generate([nil, subscriber.id, subscriber.class.name, list])
end

.message_verifierObject



40
41
42
# File 'lib/mailkick.rb', line 40

def self.message_verifier
  @message_verifier ||= ActiveSupport::MessageVerifier.new(Mailkick.secret_token)
end