def send_notification_email(options = {})
      if target.notification_email_allowed?(notifiable, key) &&
         notifiable.notification_email_allowed?(target, key) &&
         email_subscribed?
        send_later = options.has_key?(:send_later) ? options[:send_later] : true
        send_later ?
          @@notification_mailer.send_notification_email(self, options).deliver_later :
          @@notification_mailer.send_notification_email(self, options).deliver_now
      end
    end
def send_notification_email(options = {})
      if target.notification_email_allowed?(notifiable, key) &&
         notifiable.notification_email_allowed?(target, key) &&
         email_subscribed?
        send_later = options.has_key?(:send_later) ? options[:send_later] : true
        send_later ?
          @@notification_mailer.send_notification_email(self, options).deliver_later :
          @@notification_mailer.send_notification_email(self, options).deliver_now
      end
    end
Sends notification email to the target.

 @param [Hash] options Options for notification email
 @option options [Boolean]        :send_later            If it sends notification email asynchronously
 @option options [String, Symbol] :fallback   (:default) Fallback template to use when MissingTemplate is raised
 @return [Mail::Message, ActionMailer::DeliveryJob] Email message or its delivery job