Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 14 additions & 1 deletion lib/sendgrid.rb
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ class << self
:default_footer_text, :default_spamcheck_score, :default_sg_unique_args
end
attr_accessor :sg_category, :sg_options, :sg_disabled_options, :sg_recipients, :sg_substitutions,
:subscriptiontrack_text, :footer_text, :spamcheck_score, :sg_unique_args
:subscriptiontrack_text, :footer_text, :spamcheck_score, :sg_unique_args, :sg_pool
end

# NOTE: This commented-out approach may be a "safer" option for Rails 3, but it
Expand Down Expand Up @@ -103,6 +103,16 @@ def sendgrid_category(category)
@sg_category = category
end

# Call within mailer method to concatenate sendgrid categories.
# Will not remove duplicates.
def append_sendgrid_category(category)
@sg_category = (@sg_category || []) + category
end

def sendgrid_pool(pool_name)
@sg_pool = pool_name
end

# Call within mailer method to set unique args for this email.
# Merged with class-level unique args, if any exist.
def sendgrid_unique_args(unique_args = {})
Expand Down Expand Up @@ -210,6 +220,9 @@ def sendgrid_json_headers(mail)
header_opts[:unique_args] = unique_args unless unique_args.empty?
end

# Set pool
header_opts[:ip_pool] = @sg_pool if @sg_pool

# Set category
if @sg_category && @sg_category == :use_subject_lines
header_opts[:category] = mail.subject
Expand Down
3 changes: 0 additions & 3 deletions sendgrid.gemspec
Original file line number Diff line number Diff line change
Expand Up @@ -42,20 +42,17 @@ Gem::Specification.new do |s|
s.add_development_dependency(%q<shoulda>, [">= 0"])
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
s.add_development_dependency(%q<jeweler>, ["~> 1.5.1"])
s.add_runtime_dependency(%q<json>, [">= 0"])
else
s.add_dependency(%q<json>, [">= 0"])
s.add_dependency(%q<shoulda>, [">= 0"])
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
s.add_dependency(%q<json>, [">= 0"])
end
else
s.add_dependency(%q<json>, [">= 0"])
s.add_dependency(%q<shoulda>, [">= 0"])
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
s.add_dependency(%q<json>, [">= 0"])
end
end