Sha256: c7c906e289c2077355b1fb7f9f38942767c5004e4ae1404392e592bc98ed428f

Contents?: true

Size: 1.17 KB

Versions: 23

Compression:

Stored size: 1.17 KB

Contents

module Unidom::Action::Concerns::AsSearcherParty

  extend ActiveSupport::Concern

  included do |includer|

    has_many :searched_searchings, class_name: 'Unidom::Action::Searching', as: :searcher_party

    def search!(it, on: '', version: '1', per: {}, due_to: nil, via: nil, at: Time.now, displaying: 0, of_total: 0, on_current_page: 0, of_total_page: 0, per_page: 0)
      searched_searchings.create! resource_name: it, platform_name: on, platform_version: version, criteria: per,
        reason: due_to, searcher_visitor: via, opened_at: at,
        shown_count: displaying, found_count: of_total, current_page: on_current_page, total_pages: of_total_page, per_page: per_page
    end

    def search?(it, on: '', version: '1', due_to: nil, at: Time.now)
      query = searched_searchings
      query = query.resource_name_is    it      if it.present?
      query = query.platform_name_is    on      if on.present?
      query = query.platform_version_is version if version.present?
      query = query.caused_by           due_to  if due_to.present?
      query = query.valid_at            now: at if at.present?
      query.alive.exists?
    end

  end

  module ClassMethods
  end

end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
unidom-action-2.0 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.18 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.17 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.16 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.15 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.13 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.14 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.12 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.11 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.10 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.9 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.8 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.7 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.6 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.5 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.4 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.3 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.2 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17.1 app/models/unidom/action/concerns/as_searcher_party.rb
unidom-action-1.17 app/models/unidom/action/concerns/as_searcher_party.rb