* Add database table for status-specific filters * Add REST endpoints, entities and attributes * Show status filters in /filters interface * Perform server-side filtering for individual posts filters * Fix filtering on context mismatch * Refactor `toServerSideType` by moving it to its own module * Move loupe and delete icons to their own module * Add ability to filter individual posts from WebUI * Replace keyword list by warnings (expired, context mismatch) * Refactor server-side filtering code * Add tests
15 lines
431 B
Ruby
15 lines
431 B
Ruby
# frozen_string_literal: true
|
|
|
|
class REST::FilterSerializer < ActiveModel::Serializer
|
|
attributes :id, :title, :context, :expires_at, :filter_action
|
|
has_many :keywords, serializer: REST::FilterKeywordSerializer, if: :rules_requested?
|
|
has_many :statuses, serializer: REST::FilterStatusSerializer, if: :rules_requested?
|
|
|
|
def id
|
|
object.id.to_s
|
|
end
|
|
|
|
def rules_requested?
|
|
instance_options[:rules_requested]
|
|
end
|
|
end
|