Class: MailJack::Interceptor
- Inherits:
-
Object
- Object
- MailJack::Interceptor
- Defined in:
- lib/mail_jack/interceptor.rb
Class Method Summary collapse
- .append_links(text, querystr) ⇒ Object
- .delivering_email(message) ⇒ Object
- .generate_query_string(message) ⇒ Object
Class Method Details
.append_links(text, querystr) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/mail_jack/interceptor.rb', line 25 def self.append_links(text, querystr) str = text.to_s hrefs = str.scan(/href=\"(.*?)\"/).flatten hrefs = hrefs.grep(MailJack.config.href_filter) hrefs = hrefs.uniq hrefs.each do |h| q = h.include?("?") ? "&#{querystr}" : "?#{querystr}" str.gsub!(h, "#{h}#{q}") end return str end |
.delivering_email(message) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 |
# File 'lib/mail_jack/interceptor.rb', line 3 def self.delivering_email() querystr = generate_query_string() if .multipart? .parts.each do |part| unless part. part.body = append_links(part.body, querystr) end end else .body = append_links(.body, querystr) end end |
.generate_query_string(message) ⇒ Object
17 18 19 20 21 22 23 |
# File 'lib/mail_jack/interceptor.rb', line 17 def self.generate_query_string() querystr = MailJack.trackables.keys.inject({}) {|hash, a| hash[a] = .send(a); hash}.to_query if MailJack.config.enable_encoding? querystr = "#{MailJack.config.encode_to}=#{Base64.encode64(querystr)}" end return querystr end |