Module: MediaWiktory::Wikipedia::Modules::Protectedtitles

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

Overview

List all titles protected from creation.

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)


101
102
103
# File 'lib/mediawiktory/wikipedia/modules/protectedtitles.rb', line 101

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

#dir(value) ⇒ self

In which direction to enumerate:

Parameters:

  • value (String)

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

Returns:

  • (self)


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

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

#end(value) ⇒ self

Stop listing at this protection timestamp.

Parameters:

  • value (Time)

Returns:

  • (self)


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

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

#level(*values) ⇒ self

Only list titles with these protection levels.

Parameters:

  • values (Array<String>)

    Allowed values: "autoconfirmed", "extendedconfirmed", "templateeditor", "sysop".

Returns:

  • (self)


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

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

#limit(value) ⇒ self

How many total pages to return.

Parameters:

  • value (Integer, "max")

Returns:

  • (self)


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

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

#namespace(*values) ⇒ self

Only list titles in these namespaces.

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/protectedtitles.rb', line 25

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

#prop(*values) ⇒ self

Which properties to get:

Parameters:

  • values (Array<String>)

    Allowed values: "timestamp" (Adds the timestamp of when protection was added), "user" (Adds the user that added the protection), "userid" (Adds the user ID that added the protection), "comment" (Adds the comment for the protection), "parsedcomment" (Adds the parsed comment for the protection), "expiry" (Adds the timestamp of when the protection will be lifted), "level" (Adds the protection level).

Returns:

  • (self)


88
89
90
# File 'lib/mediawiktory/wikipedia/modules/protectedtitles.rb', line 88

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

#start(value) ⇒ self

Start listing at this protection timestamp.

Parameters:

  • value (Time)

Returns:

  • (self)


72
73
74
# File 'lib/mediawiktory/wikipedia/modules/protectedtitles.rb', line 72

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