diff --git a/config/environment.rb b/config/environment.rb index 7473bd0..1a55c7a 100644 --- a/config/environment.rb +++ b/config/environment.rb @@ -65,6 +65,4 @@ # Activate observers that should always be running # config.active_record.observers = :cacher, :garbage_collector -end - -require 'lib/mailq.rb' +end \ No newline at end of file diff --git a/vendor/plugins/active_mailer_queue/lib/action_mailer/queue.rb b/vendor/plugins/active_mailer_queue/lib/action_mailer/queue.rb new file mode 100644 index 0000000..8ad84a4 --- /dev/null +++ b/vendor/plugins/active_mailer_queue/lib/action_mailer/queue.rb @@ -0,0 +1,23 @@ +module ActionMailer + class Queue < ActionMailer::Base + + @@delivery_method = :activemailer_queue + cattr_accessor :delivery_method + + def self.queue + return new.queue + end + + def queue + return Store.create_by_table_name(self.class.to_s.downcase.pluralize) + end + + def perform_delivery_activemailer_queue(mail) + store = self.queue.new(:tmail => mail) + store.save + mail.queue_id = store.id + return true + end + + end +end \ No newline at end of file diff --git a/vendor/plugins/active_mailer_queue/lib/action_mailer/queue_mailer.rb b/vendor/plugins/active_mailer_queue/lib/action_mailer/queue_mailer.rb new file mode 100644 index 0000000..33507fe --- /dev/null +++ b/vendor/plugins/active_mailer_queue/lib/action_mailer/queue_mailer.rb @@ -0,0 +1,5 @@ +module ActionMailer + class Queue < ActionMailer::Base + class Mailer < ActionMailer::Base; end + end +end \ No newline at end of file diff --git a/lib/mailq.rb b/vendor/plugins/active_mailer_queue/lib/action_mailer/queue_store.rb similarity index 55% rename from lib/mailq.rb rename to vendor/plugins/active_mailer_queue/lib/action_mailer/queue_store.rb index 523eac6..b59d8cf 100644 --- a/lib/mailq.rb +++ b/vendor/plugins/active_mailer_queue/lib/action_mailer/queue_store.rb @@ -1,35 +1,5 @@ -module TMail - class Mail - attr_accessor :queue_id - end -end - module ActionMailer - - # V modelech musi vznikat Mailer s ActionMailer::Queue - class Queue < ActionMailer::Base - - @@delivery_method = :activemailer_queue - cattr_accessor :delivery_method - - class Mailer < ActionMailer::Base; end - - def self.queue - return new.queue - end - - def queue - return Store.create_by_table_name(self.class.to_s.downcase.pluralize) - end - - def perform_delivery_activemailer_queue(mail) - store = self.queue.new(:tmail => mail) - store.save - mail.queue = store.id - return true - end - class Store < ActiveRecord::Base def self.create_by_table_name(table_name) @@ -54,10 +24,10 @@ def to_tmail def deliver! Mailer.deliver(self.to_tmail) + rescue + false end end - - end - + end end \ No newline at end of file diff --git a/vendor/plugins/active_mailer_queue/lib/tmail/mail.rb b/vendor/plugins/active_mailer_queue/lib/tmail/mail.rb new file mode 100644 index 0000000..737b86d --- /dev/null +++ b/vendor/plugins/active_mailer_queue/lib/tmail/mail.rb @@ -0,0 +1,5 @@ +module TMail + class Mail + attr_accessor :queue_id + end +end \ No newline at end of file