Sha256: 8b7ec8776220bad97b49b98e671fd22b50c580600726572c8e9ae89f89dcb17b

Contents?: true

Size: 755 Bytes

Versions: 9

Compression:

Stored size: 755 Bytes

Contents

# frozen_string_literal: true

module RailsWorkflow
  module StatusDecorator
    extend ActiveSupport::Concern

    included do
      def status
        if object.status
          {
            class: get_label_class(object),
            text: object.get_status_values.assoc(object.status)[1]
          }
        else
          {
            class: nil,
            text: nil
          }
        end
      end

      def get_label_class(object)
        case object.status
        when object.class::DONE
          'label-success'
        when object.class::IN_PROGRESS..object.class::WAITING
          'label-primary'
        when object.class::ERROR
          'label-danger'
        else
          'label-default'
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
rails_workflow-0.7.3 app/decorators/rails_workflow/status_decorator.rb
rails_workflow-0.7.2 app/decorators/rails_workflow/status_decorator.rb
rails_workflow-0.7.1 app/decorators/rails_workflow/status_decorator.rb
rails_workflow-0.7.0 app/decorators/rails_workflow/status_decorator.rb
rails_workflow-0.4.4 app/decorators/rails_workflow/status_decorator.rb
rails_workflow-0.4.3 app/decorators/rails_workflow/status_decorator.rb
rails_workflow-0.4.2 app/decorators/rails_workflow/status_decorator.rb
rails_workflow-0.4.1 app/decorators/rails_workflow/status_decorator.rb
rails_workflow-0.4.0 app/decorators/rails_workflow/status_decorator.rb