Files
nairobi/app/models/remote_translation.rb
taitus 4272b60339 Create Remote Translations Caller
This module is used in a callback model and in charge of
  - extracting resources associated from RemoteTranslation and preparing
    its fields to be sent to the MicrosoftTranslateClient thought DelayedJobs
  - receive the response from MicrosoftTranslateClient and update resource
    with his translates

Co-authored-by: javierm <elretirao@gmail.com>
2019-06-27 09:21:18 +02:00

22 lines
693 B
Ruby

class RemoteTranslation < ApplicationRecord
belongs_to :remote_translatable, polymorphic: true
validates :remote_translatable_id, presence: true
validates :remote_translatable_type, presence: true
validates :locale, presence: true
after_create :enqueue_remote_translation
def enqueue_remote_translation
RemoteTranslationsCaller.new(self).delay.call
end
def self.remote_translation_enqueued?(remote_translation)
where(remote_translatable_id: remote_translation["remote_translatable_id"],
remote_translatable_type: remote_translation["remote_translatable_type"],
locale: remote_translation["locale"],
error_message: nil).any?
end
end