Module: MediaWiktory::Wikipedia::Modules::Categories

Defined in:
lib/mediawiktory/wikipedia/modules/categories.rb

Overview

List all categories the pages belong to.

The "submodule" (MediaWiki API term) is included in action after setting some param, providing additional tweaking for this param. Example (for Actions::Query and its submodules):

api.query             # returns Actions::Query
   .prop(:revisions)  # adds prop=revisions to action URL, and includes Modules::Revisions into action
   .limit(10)         # method of Modules::Revisions, adds rvlimit=10 to URL

All submodule's parameters are documented as its public methods, see below.

Instance Method Summary collapse

Instance Method Details

#categories(*values) ⇒ self

Only list these categories. Useful for checking whether a certain page is in a certain category.

Parameters:

  • values (Array<String>)

Returns:

  • (self)


67
68
69
# File 'lib/mediawiktory/wikipedia/modules/categories.rb', line 67

def categories(*values)
  values.inject(self) { |res, val| res._categories(val) }
end

#continue(value) ⇒ self

When more results are available, use this to continue.

Parameters:

  • value (String)

Returns:

  • (self)


59
60
61
# File 'lib/mediawiktory/wikipedia/modules/categories.rb', line 59

def continue(value)
  merge(clcontinue: value.to_s)
end

#dir(value) ⇒ self

The direction in which to list.

Parameters:

  • value (String)

    One of "ascending", "descending".

Returns:

  • (self)


80
81
82
# File 'lib/mediawiktory/wikipedia/modules/categories.rb', line 80

def dir(value)
  _dir(value) or fail ArgumentError, "Unknown value for dir: #{value}"
end

#limit(value) ⇒ self

How many categories to return.

Parameters:

  • value (Integer, "max")

Returns:

  • (self)


51
52
53
# File 'lib/mediawiktory/wikipedia/modules/categories.rb', line 51

def limit(value)
  merge(cllimit: value.to_s)
end

#prop(*values) ⇒ self

Which additional properties to get for each category:

Parameters:

  • values (Array<String>)

    Allowed values: "sortkey" (Adds the sortkey (hexadecimal string) and sortkey prefix (human-readable part) for the category), "timestamp" (Adds timestamp of when the category was added), "hidden" (Tags categories that are hidden with HIDDENCAT).

Returns:

  • (self)


25
26
27
# File 'lib/mediawiktory/wikipedia/modules/categories.rb', line 25

def prop(*values)
  values.inject(self) { |res, val| res._prop(val) or fail ArgumentError, "Unknown value for prop: #{val}" }
end

#show(*values) ⇒ self

Which kind of categories to show.

Parameters:

  • values (Array<String>)

    Allowed values: "hidden", "!hidden".

Returns:

  • (self)


38
39
40
# File 'lib/mediawiktory/wikipedia/modules/categories.rb', line 38

def show(*values)
  values.inject(self) { |res, val| res._show(val) or fail ArgumentError, "Unknown value for show: #{val}" }
end