Sha256: 158e88f9559f25ca4e8bde7ff9dad7235bec349204ba9f4537567923820e1e23

Contents?: true

Size: 632 Bytes

Versions: 7

Compression:

Stored size: 632 Bytes

Contents

# frozen_string_literal: true

module RailsWorkflow
  module OperationTemplates
    module Assignments
      extend ActiveSupport::Concern

      included do
        belongs_to :assignment, polymorphic: true, required: false
        scope :for_user, ->(user) {
          keys = RailsWorkflow.config.assignment_by.select { |k| user.respond_to? k }

          assignment_condition = keys.map do |key|
            "rails_workflow_operation_templates.#{key} = ?"
          end.join(' or ')

          where(
            assignment_condition,
            *keys.map { |k| user.send(k) }
          )
        }
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
rails_workflow-0.7.3 app/concerns/rails_workflow/operation_templates/assignments.rb
rails_workflow-0.7.2 app/concerns/rails_workflow/operation_templates/assignments.rb
rails_workflow-0.7.1 app/concerns/rails_workflow/operation_templates/assignments.rb
rails_workflow-0.7.0 app/concerns/rails_workflow/operation_templates/assignments.rb
rails_workflow-0.4.4 app/concerns/rails_workflow/operation_templates/assignments.rb
rails_workflow-0.4.3 app/concerns/rails_workflow/operation_templates/assignments.rb
rails_workflow-0.4.2 app/concerns/rails_workflow/operation_templates/assignments.rb