Sha256: 178490982a44bec4b8baa3d56b78a4e762336e85731ca59e95acbb69c38e937e

Contents?: true

Size: 826 Bytes

Versions: 18

Compression:

Stored size: 826 Bytes

Contents

# frozen_string_literal: true

module Decidim
  module Meetings
    module Admin
      # This class holds a Form to validate registration codes from Decidim's admin panel.
      class ValidateRegistrationCodeForm < Decidim::Form
        attribute :code, String

        validates :code, presence: true
        validate :registration_exists

        def registration
          @registration ||= meeting.registrations.find_by(code:, validated_at: nil)
        end

        private

        def meeting
          @meeting ||= context[:meeting]
        end

        def registration_exists
          return unless registration.nil?

          errors.add(
            :code,
            I18n.t("registrations.validate_registration_code.invalid", scope: "decidim.meetings.admin")
          )
        end
      end
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
decidim-meetings-0.30.0.rc3 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.30.0.rc2 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.30.0.rc1 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.29.2 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.28.5 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.29.1 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.28.4 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.29.0 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.28.3 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.29.0.rc4 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.29.0.rc3 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.29.0.rc2 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.29.0.rc1 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.28.2 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.28.1 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.28.0 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.28.0.rc5 app/forms/decidim/meetings/admin/validate_registration_code_form.rb
decidim-meetings-0.28.0.rc4 app/forms/decidim/meetings/admin/validate_registration_code_form.rb