Sha256: 2d99a10f6e9f390b5c96c24e6e53918761a7c321f790a0dcc67b63a88c3933b2
Contents?: true
Size: 994 Bytes
Versions: 87
Compression:
Stored size: 994 Bytes
Contents
# frozen_string_literal: true module ActionMailbox # The base class for all Action Mailbox ingress controllers. class BaseController < ActionController::Base skip_forgery_protection if default_protect_from_forgery before_action :ensure_configured private def ensure_configured unless ActionMailbox.ingress == ingress_name head :not_found end end def ingress_name self.class.name.remove(/\AActionMailbox::Ingresses::/, /::InboundEmailsController\z/).underscore.to_sym end def authenticate_by_password if password.present? http_basic_authenticate_or_request_with name: "actionmailbox", password: password, realm: "Action Mailbox" else raise ArgumentError, "Missing required ingress credentials" end end def password Rails.application.credentials.dig(:action_mailbox, :ingress_password) || ENV["RAILS_INBOUND_EMAIL_PASSWORD"] end end end
Version data entries
87 entries across 85 versions & 7 rubygems