Sha256: 6071b9e8bfb0d20b54be03a37f2c85129f5cd645dbf37fd2e73371d7ab80bd5d
Contents?: true
Size: 1.85 KB
Versions: 1
Compression:
Stored size: 1.85 KB
Contents
require_dependency 'time_entry_query' module AdditionalTags module Patches module TimeEntryQueryPatch extend ActiveSupport::Concern included do include InstanceMethods alias_method :initialize_available_filters_without_tags, :initialize_available_filters alias_method :initialize_available_filters, :initialize_available_filters_with_tags alias_method :available_columns_without_tags, :available_columns alias_method :available_columns, :available_columns_with_tags end module InstanceMethods def initialize_available_filters_with_tags initialize_available_filters_without_tags return unless AdditionalTags.setting?(:active_issue_tags) && User.current.allowed_to?(:view_issue_tags, project, global: true) add_available_filter 'issue.tags', type: :list_optional, name: l('label_attribute_of_issue', name: l(:field_tags)), values: -> { available_issue_tags_values } end def available_columns_with_tags if @available_columns.nil? @available_columns = available_columns_without_tags if AdditionalTags.setting?(:active_issue_tags) && User.current.allowed_to?(:view_issue_tags, project, global: true) @available_columns << QueryColumn.new(:issue_tags) end else available_columns_without_tags end @available_columns end def sql_for_issue_tags_field(_field, operator, value) AdditionalTags.sql_for_tags_field Issue, operator, value end def available_issue_tags_values Issue.available_tags(project: project) .pluck(:name) .map { |name| [name, name] } end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
additional_tags-1.0.1 | lib/additional_tags/patches/time_entry_query_patch.rb |