Module: Doing::WWIDFilter

Included in:
WWID
Defined in:
lib/doing/wwid/filter.rb

Overview

Filter methods for WWID class

Instance Method Summary collapse

Instance Method Details

#filter_items(items = Items.new, opt: {}) ⇒ Object

Filter items based on search criteria

Parameters:

  • items (Array) (defaults to: Items.new)

    The items to filter (if empty, filters all items)

  • opt (Hash) (defaults to: {})

    The filter parameters

Options Hash (opt:):

  • :section (String) — default: 'all'
  • :unfinished (Boolean) — default: false
  • :tag (Array or String) — default: []

    Array or comma-separated string

  • :tag_bool (Symbol) — default: :and

    :and, :or, :not

  • :search (String) — default: ''

    string, optional regex with /string/

  • :date_filter (Array) — default: nil

    [[Time]start, [Time]end]

  • :only_timed (Boolean) — default: false
  • :before (String) — default: nil

    Date/Time string, unparsed

  • :after (String) — default: nil

    Date/Time string, unparsed

  • :today (Boolean) — default: false

    limit to entries from today

  • :yesterday (Boolean) — default: false

    limit to entries from yesterday

  • :count (Number) — default: 0

    max entries to return

  • :age (String) — default: new

    'old' or 'new'

  • :val (Array) — default: nil

    Array of tag value queries

#fuzzy_filter_items(items, opt: {}) ⇒ Object