Module: MediaWiktory::Wikipedia::Modules::Random

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

Overview

Get a set of random pages.

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

#continue(value) ⇒ self

When more results are available, use this to continue.

Parameters:

  • value (String)

Returns:

  • (self)


66
67
68
# File 'lib/mediawiktory/wikipedia/modules/random.rb', line 66

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

#filterredir(value) ⇒ self

How to filter for redirects.

Parameters:

  • value (String)

    One of "all", "redirects", "nonredirects".

Returns:

  • (self)


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

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

#limit(value) ⇒ self

Limit how many random pages will be returned.

Parameters:

  • value (Integer, "max")

Returns:

  • (self)


58
59
60
# File 'lib/mediawiktory/wikipedia/modules/random.rb', line 58

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

#namespace(*values) ⇒ self

Return pages in these namespaces only.

Parameters:

  • values (Array<String>)

    Allowed values: "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "100", "101", "108", "109", "118", "119", "446", "447", "710", "711", "828", "829", "2300", "2301", "2302", "2303".

Returns:

  • (self)


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

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

#redirectself

Use rnfilterredir=redirects instead.

Returns:

  • (self)


50
51
52
# File 'lib/mediawiktory/wikipedia/modules/random.rb', line 50

def redirect()
  merge(rnredirect: 'true')
end