app/models/mail_manager/subscription.rb in mail_manager-3.2.5 vs app/models/mail_manager/subscription.rb in mail_manager-3.2.6
- old
+ new
@@ -48,10 +48,21 @@
before_create :set_default_status
attr_protected :id
#acts_as_audited rescue Rails.logger.warn "Audit Table not defined!"
+ #
+
+ def self.unsubscribed_emails_hash
+ results = self.connection.execute(%Q|select distinct c.email_address
+ from #{MailManager.table_prefix}contacts c
+ inner join #{MailManager.table_prefix}subscriptions s on c.id=s.contact_id
+ where s.status in ('unsubscribed')|
+ )
+ results = results.map(&:values) if results.first.is_a?(Hash)
+ results.inject(Hash.new){|h,r|h.merge!(r[0].to_s.strip.downcase => true)}
+ end
def contact_full_name
contact.full_name
end
@@ -61,9 +72,10 @@
return subscription.change_status(status) if subscription
subscription = Subscription.new
subscription.contact = contact
subscription.mailing_list = mailing_list
subscription.change_status(status)
+ subscription
end
# subscribes the contact to the list
def self.subscribe(contact, mailing_list, status='active')
change_subscription_status(contact, mailing_list, status)