Module: MediaWiktory::Wikipedia::Modules::GRecentchanges

Defined in:
lib/mediawiktory/wikipedia/modules/g-recentchanges.rb

Overview

Enumerate recent changes. Generator module: for fetching pages corresponding to request.

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)


145
146
147
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 145

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

#dir(value) ⇒ self

In which direction to enumerate:

Parameters:

  • value (String)

    One of "newer" (List oldest first. Note: rcstart has to be before rcend), "older" (List newest first (default). Note: rcstart has to be later than rcend).

Returns:

  • (self)


41
42
43
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 41

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

#end(value) ⇒ self

The timestamp to end enumerating.

Parameters:

  • value (Time)

Returns:

  • (self)


33
34
35
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 33

def end(value)
  merge(grcend: value.iso8601)
end

#excludeuser(value) ⇒ self

Don't list changes by this user.

Parameters:

  • value (String)

Returns:

  • (self)


75
76
77
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 75

def excludeuser(value)
  merge(grcexcludeuser: value.to_s)
end

#generaterevisionsself

When being used as a generator, generate revision IDs rather than titles. Recent change entries without associated revision IDs (e.g. most log entries) will generate nothing.

Returns:

  • (self)


152
153
154
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 152

def generaterevisions()
  merge(grcgeneraterevisions: 'true')
end

#limit(value) ⇒ self

How many total changes to return.

Parameters:

  • value (Integer, "max")

Returns:

  • (self)


117
118
119
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 117

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

#namespace(*values) ⇒ self

Filter changes to only these namespaces.

Parameters:

  • values (Array<String>)

    Allowed values: "-2", "-1", "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)


54
55
56
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 54

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

#show(*values) ⇒ self

Show only items that meet these criteria. For example, to see only minor edits done by logged-in users, set rcshow=minor|!anon.

Parameters:

  • values (Array<String>)

    Allowed values: "minor", "!minor", "bot", "!bot", "anon", "!anon", "redirect", "!redirect", "patrolled", "!patrolled", "unpatrolled".

Returns:

  • (self)


104
105
106
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 104

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

#start(value) ⇒ self

The timestamp to start enumerating from.

Parameters:

  • value (Time)

Returns:

  • (self)


25
26
27
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 25

def start(value)
  merge(grcstart: value.iso8601)
end

#tag(value) ⇒ self

Only list changes tagged with this tag.

Parameters:

  • value (String)

Returns:

  • (self)


83
84
85
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 83

def tag(value)
  merge(grctag: value.to_s)
end

#token(*values) ⇒ self

Use action=query&meta=tokens instead.

Parameters:

  • values (Array<String>)

    Allowed values: "patrol".

Returns:

  • (self)


91
92
93
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 91

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

#toponlyself

Only list changes which are the latest revision.

Returns:

  • (self)


137
138
139
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 137

def toponly()
  merge(grctoponly: 'true')
end

#type(*values) ⇒ self

Which types of changes to show.

Parameters:

  • values (Array<String>)

    Allowed values: "edit", "new", "log", "external", "categorize".

Returns:

  • (self)


125
126
127
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 125

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

#user(value) ⇒ self

Only list changes by this user.

Parameters:

  • value (String)

Returns:

  • (self)


67
68
69
# File 'lib/mediawiktory/wikipedia/modules/g-recentchanges.rb', line 67

def user(value)
  merge(grcuser: value.to_s)
end