openSUSE/open-build-service

View on GitHub
src/api/app/models/bs_request/data_table/params_parser_with_state_and_type.rb

Summary

Maintainability
A
0 mins
Test Coverage
A
92%
class BsRequest
  module DataTable
    class ParamsParserWithStateAndType < ParamsParser
      def parsed_params
        super.merge(types: types, states: states)
      end

      private

      def types
        [@requested_params[:type]] if @requested_params[:type].present? && @requested_params[:type] != 'all'
      end

      def states
        if @requested_params[:state] == 'new or review'
          %w[new review]
        elsif @requested_params[:state].present?
          [@requested_params[:state]]
        end
      end
    end
  end
end