mediawiki-butt 0.11.1 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -5
  3. data/lib/mediawiki/administration.rb +18 -17
  4. data/lib/mediawiki/auth.rb +52 -193
  5. data/lib/mediawiki/butt.rb +51 -32
  6. data/lib/mediawiki/constants.rb +127 -130
  7. data/lib/mediawiki/edit.rb +58 -71
  8. data/lib/mediawiki/exceptions.rb +2 -123
  9. data/lib/mediawiki/query/lists/all.rb +35 -45
  10. data/lib/mediawiki/query/lists/backlinks.rb +23 -34
  11. data/lib/mediawiki/query/lists/categories.rb +17 -28
  12. data/lib/mediawiki/query/lists/log/block.rb +17 -33
  13. data/lib/mediawiki/query/lists/log/delete.rb +8 -24
  14. data/lib/mediawiki/query/lists/log/import.rb +9 -24
  15. data/lib/mediawiki/query/lists/log/log.rb +36 -63
  16. data/lib/mediawiki/query/lists/log/merge.rb +5 -12
  17. data/lib/mediawiki/query/lists/log/move.rb +6 -20
  18. data/lib/mediawiki/query/lists/log/newusers.rb +13 -36
  19. data/lib/mediawiki/query/lists/log/patrol.rb +5 -13
  20. data/lib/mediawiki/query/lists/log/protect.rb +20 -50
  21. data/lib/mediawiki/query/lists/log/rights.rb +10 -24
  22. data/lib/mediawiki/query/lists/log/upload.rb +10 -24
  23. data/lib/mediawiki/query/lists/miscellaneous.rb +10 -19
  24. data/lib/mediawiki/query/lists/querypage.rb +60 -62
  25. data/lib/mediawiki/query/lists/recent_changes.rb +18 -30
  26. data/lib/mediawiki/query/lists/search.rb +14 -29
  27. data/lib/mediawiki/query/lists/users.rb +43 -61
  28. data/lib/mediawiki/query/meta/filerepoinfo.rb +18 -20
  29. data/lib/mediawiki/query/meta/siteinfo.rb +30 -33
  30. data/lib/mediawiki/query/meta/userinfo.rb +48 -66
  31. data/lib/mediawiki/query/properties/contributors.rb +18 -22
  32. data/lib/mediawiki/query/properties/files.rb +18 -20
  33. data/lib/mediawiki/query/properties/pages.rb +129 -211
  34. data/lib/mediawiki/query/properties/properties.rb +20 -25
  35. data/lib/mediawiki/query/query.rb +0 -25
  36. data/lib/mediawiki/utils.rb +9 -8
  37. data/lib/mediawiki/watch.rb +52 -0
  38. metadata +6 -4
@@ -4,19 +4,12 @@ module MediaWiki
4
4
  module Log
5
5
  module Merge
6
6
  # Gets merge/merge logs.
7
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
8
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
9
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
10
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
11
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
12
- # @see {MediaWiki::Query::Lists::Log#get_log}
13
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
14
- # Logevents API Docs
7
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
8
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
15
9
  # @since 0.10.0
16
- # @return [Array<Hash>] The events, containing the following keys: id,
17
- # title, user, comment, destination_title, mergepoint, timestamp.
18
- def get_merge_log(user = nil, title = nil, start = nil, stop = nil,
19
- limit = 500)
10
+ # @return [Array<Hash>] The events, containing the following keys: id, title, user, comment,
11
+ # destination_title, mergepoint, timestamp.
12
+ def get_merge_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
20
13
  response = get_log('merge/merge', user, title, start, stop, limit)
21
14
 
22
15
  ret = []
@@ -4,19 +4,12 @@ module MediaWiki
4
4
  module Log
5
5
  module Move
6
6
  # Gets move/move logs.
7
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
8
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
9
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
10
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
11
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
12
- # @see {MediaWiki::Query::Lists::Log#get_log}
13
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
14
- # Logevents API Docs
7
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
8
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
15
9
  # @since 0.10.0
16
10
  # @return [Array<Hash>] The events, containing the following keys: id,
17
11
  # title, user, comment, timestamp.
18
- def get_move_log(user = nil, title = nil, start = nil, stop = nil,
19
- limit = 500)
12
+ def get_move_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
20
13
  response = get_log('move/move', user, title, start, stop, limit)
21
14
 
22
15
  ret = []
@@ -28,19 +21,12 @@ module MediaWiki
28
21
  end
29
22
 
30
23
  # Gets move/move_redir logs for redirects.
31
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
32
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
33
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
34
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
35
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
36
- # @see {MediaWiki::Query::Lists::Log#get_log}
37
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
38
- # Logevents API Docs
24
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
25
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
39
26
  # @since 0.10.0
40
27
  # @return [Array<Hash>] The events, containing the following keys: id,
41
28
  # title, user, comment, timestamp.
42
- def get_move_redirect_log(user = nil, title = nil, start = nil,
43
- stop = nil, limit = 500)
29
+ def get_move_redirect_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
44
30
  resp = get_log('move/move_redir', user, title, start, stop, limit)
45
31
 
46
32
  ret = []
@@ -4,19 +4,11 @@ module MediaWiki
4
4
  module Log
5
5
  module NewUsers
6
6
  # Gets newusers/autocreate logs.
7
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
8
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
9
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
10
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
11
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
12
- # @see {MediaWiki::Query::Lists::Log#get_log}
13
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
14
- # Logevents API Docs
7
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
8
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
15
9
  # @since 0.10.0
16
- # @return [Array<Hash>] The events, containing the following keys: id,
17
- # new_user, user, comment, timestamp.
18
- def get_autocreate_users_log(user = nil, title = nil, start = nil,
19
- stop = nil, limit = 500)
10
+ # @return [Array<Hash>] The events, containing the following keys: id, new_user, user, comment, timestamp.
11
+ def get_autocreate_users_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
20
12
  response = get_log('newusers/autocreate', user, title, start, stop,
21
13
  limit)
22
14
 
@@ -29,19 +21,12 @@ module MediaWiki
29
21
  end
30
22
 
31
23
  # Gets newusers/create2, when one user creates another user, logs.
32
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
33
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
34
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
35
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
36
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
37
- # @see {MediaWiki::Query::Lists::Log#get_log}
38
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
39
- # Logevents API Docs
24
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
25
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
40
26
  # @since 0.10.0
41
- # @return [Array<Hash>] The events, containing the following keys: id,
42
- # title, new_user, user, comment, timestamp.
43
- def get_user_create2_log(user = nil, title = nil, start = nil,
44
- stop = nil, limit = 500)
27
+ # @return [Array<Hash>] The events, containing the following keys: id, title, new_user, user, comment,
28
+ # timestamp.
29
+ def get_user_create2_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
45
30
  resp = get_log('newusers/create2', user, title, start, stop, limit)
46
31
 
47
32
  ret = []
@@ -53,19 +38,11 @@ module MediaWiki
53
38
  end
54
39
 
55
40
  # Gets newusers/create, when one user creates their own account, logs.
56
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
57
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
58
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
59
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
60
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
61
- # @see {MediaWiki::Query::Lists::Log#get_log}
62
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
63
- # Logevents API Docs
41
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
42
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
64
43
  # @since 0.10.0
65
- # @return [Array<Hash>] The events, containing the following keys: id,
66
- # title, user, comment, timestamp.
67
- def get_user_create_log(user = nil, title = nil, start = nil,
68
- stop = nil, limit = 500)
44
+ # @return [Array<Hash>] The events, containing the following keys: id, title, user, comment, timestamp.
45
+ def get_user_create_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
69
46
  resp = get_log('newusers/create', user, title, start, stop, limit)
70
47
 
71
48
  ret = []
@@ -4,20 +4,12 @@ module MediaWiki
4
4
  module Log
5
5
  module Patrol
6
6
  # Gets patrol/patrol logs.
7
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
8
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
9
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
10
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
11
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
12
- # @see {MediaWiki::Query::Lists::Log#get_log}
13
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
14
- # Logevents API Docs
7
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
8
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
15
9
  # @since 0.10.0
16
- # @return [Array<Hash>] The events, containing the following keys: id,
17
- # title, user, comment, current_revision, previous_revision,
18
- # timestamp.
19
- def get_patrol_log(user = nil, title = nil, start = nil, stop = nil,
20
- limit = 500)
10
+ # @return [Array<Hash>] The events, containing the following keys: id, title, user, comment,
11
+ # current_revision, previous_revision, timestamp.
12
+ def get_patrol_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
21
13
  response = get_log('patrol/patrol', user, title, start, stop, limit)
22
14
 
23
15
  ret = []
@@ -4,19 +4,12 @@ module MediaWiki
4
4
  module Log
5
5
  module Protect
6
6
  # Gets protect/modify logs.
7
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
8
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
9
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
10
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
11
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
12
- # @see {MediaWiki::Query::Lists::Log#get_log}
13
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
14
- # Logevents API Docs
7
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
8
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
15
9
  # @since 0.10.0
16
- # @return [Array<Hash>] The events, containing the following keys: id,
17
- # title, description, user, comment, timestamp, details.
18
- def get_modify_protection_log(user = nil, title = nil, start = nil,
19
- stop = nil, limit = 500)
10
+ # @return [Array<Hash>] The events, containing the following keys: id, title, description, user, comment,
11
+ # timestamp, details.
12
+ def get_modify_protection_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
20
13
  response = get_log('protect/modify', user, title, start, stop,
21
14
  limit)
22
15
 
@@ -29,19 +22,12 @@ module MediaWiki
29
22
  end
30
23
 
31
24
  # Gets protect/move_prot logs.
32
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
33
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
34
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
35
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
36
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
37
- # @see {MediaWiki::Query::Lists::Log#get_log}
38
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
39
- # Logevents API Docs
25
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
26
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
40
27
  # @since 0.10.0
41
- # @return [Array<Hash>] The events, containing the following keys: id,
42
- # title, old_title, user, comment, timestamp.
43
- def get_move_protected_log(user = nil, title = nil, start = nil,
44
- stop = nil, limit = 500)
28
+ # @return [Array<Hash>] The events, containing the following keys: id, title, old_title, user, comment,
29
+ # timestamp.
30
+ def get_move_protected_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
45
31
  resp = get_log('protect/move_prot', user, title, start, stop, limit)
46
32
 
47
33
  ret = []
@@ -53,21 +39,13 @@ module MediaWiki
53
39
  end
54
40
 
55
41
  # Gets protect/protect logs.
56
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
57
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
58
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
59
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
60
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
61
- # @see {MediaWiki::Query::Lists::Log#get_log}
62
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
63
- # Logevents API Docs
42
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
43
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
64
44
  # @since 0.10.0
65
- # @return [Array<Hash>] The events, containing the following keys: id,
66
- # title, description, user, comment, timestamp, details.
67
- def get_protect_log(user = nil, title = nil, start = nil, stop = nil,
68
- limit = 500)
69
- response = get_log('protect/protect', user, title, start, stop,
70
- limit)
45
+ # @return [Array<Hash>] The events, containing the following keys: id, title, description, user, comment,
46
+ # timestamp, details.
47
+ def get_protect_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
48
+ response = get_log('protect/protect', user, title, start, stop, limit)
71
49
 
72
50
  ret = []
73
51
  response['query']['logevents'].each do |log|
@@ -78,19 +56,11 @@ module MediaWiki
78
56
  end
79
57
 
80
58
  # Gets protect/unprotect logs.
81
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
82
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
83
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
84
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
85
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
86
- # @see {MediaWiki::Query::Lists::Log#get_log}
87
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
88
- # Logevents API Docs
59
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
60
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
89
61
  # @since 0.10.0
90
- # @return [Array<Hash>] The events, containing the following keys: id,
91
- # title, user, comment, timestamp.
92
- def get_unprotect_log(user = nil, title = nil, start = nil,
93
- stop = nil, limit = 500)
62
+ # @return [Array<Hash>] The events, containing the following keys: id, title, user, comment, timestamp.
63
+ def get_unprotect_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
94
64
  resp = get_log('protect/unprotect', user, title, start, stop, limit)
95
65
 
96
66
  ret = []
@@ -5,19 +5,12 @@ module MediaWiki
5
5
  # @todo rights/erevoke
6
6
  module Rights
7
7
  # Gets rights/autopromote logs.
8
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
9
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
10
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
11
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
12
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
13
- # @see {MediaWiki::Query::Lists::Log#get_log}
14
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
15
- # Logevents API Docs
8
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
9
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
16
10
  # @since 0.10.0
17
- # @return [Array<Hash>] The events, containing the following keys: id,
18
- # title, user, new_rights, old_rights, comment, timestamp.
19
- def get_autopromotion_log(user = nil, title = nil, start = nil,
20
- stop = nil, limit = 500)
11
+ # @return [Array<Hash<Symbol, Any>>] The events, containing the following keys: id, title, user,
12
+ # new_rights, old_rights, comment, timestamp.
13
+ def get_autopromotion_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
21
14
  resp = get_log('rights/autopromote', user, title, start, stop,
22
15
  limit)
23
16
 
@@ -30,19 +23,12 @@ module MediaWiki
30
23
  end
31
24
 
32
25
  # Gets rights/rights logs.
33
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
34
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
35
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
36
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
37
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
38
- # @see {MediaWiki::Query::Lists::Log#get_log}
39
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
40
- # Logevents API Docs
26
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
27
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
41
28
  # @since 0.10.0
42
- # @return [Array<Hash>] The events, containing the following keys: id,
43
- # title, to, from, new_rights, old_rights, comment, timestamp.
44
- def get_rights_log(user = nil, title = nil, start = nil, stop = nil,
45
- limit = 500)
29
+ # @return [Array<Hash<Symbol, Any>>] The events, containing the following keys: id, title, to, from,
30
+ # new_rights, old_rights, comment, timestamp.
31
+ def get_rights_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
46
32
  resp = get_log('rights/rights', user, title, start, stop, limit)
47
33
 
48
34
  ret = []
@@ -5,19 +5,12 @@ module MediaWiki
5
5
  # @todo upload/revert
6
6
  module Upload
7
7
  # Gets upload/overwrite logs.
8
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
9
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
10
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
11
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
12
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
13
- # @see {MediaWiki::Query::Lists::Log#get_log}
14
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
15
- # Logevents API Docs
8
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
9
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
16
10
  # @since 0.10.0
17
- # @return [Array<Hash>] The events, containing the following keys: id,
18
- # title, user, sha, comment, timestamp.
19
- def get_upload_overwrite_log(user = nil, title = nil, start = nil,
20
- stop = nil, limit = 500)
11
+ # @return [Array<Hash<Symbol, Any>>] The events, containing the following keys: id, title, user, sha,
12
+ # comment, timestamp.
13
+ def get_upload_overwrite_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
21
14
  resp = get_log('upload/overwrite', user, title, start, stop, limit)
22
15
 
23
16
  ret = []
@@ -29,19 +22,12 @@ module MediaWiki
29
22
  end
30
23
 
31
24
  # Gets upload/upload logs.
32
- # @param user [String] See {MediaWiki::Query::Lists::Log#get_log}
33
- # @param title [String] See {MediaWiki::Query::Lists::Log#get_log}
34
- # @param start [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
35
- # @param stop [DateTime] See {MediaWiki::Query::Lists::Log#get_log}
36
- # @param limit [Int] See {MediaWiki::Query::Lists::Log#get_log}
37
- # @see {MediaWiki::Query::Lists::Log#get_log}
38
- # @see https://www.mediawiki.org/wiki/API:Logevents MediaWiki
39
- # Logevents API Docs
25
+ # @param (see MediaWiki::Query::Lists::Log::Block#get_block_log)
26
+ # @see (see MediaWiki::Query::Lists::Log::Block#get_block_log)
40
27
  # @since 0.10.0
41
- # @return [Array<Hash>] The events, containing the following keys: id,
42
- # title, user, sha, comment, timestamp.
43
- def get_upload_log(user = nil, title = nil, start = nil, stop = nil,
44
- limit = 500)
28
+ # @return [Array<Hash<Symbol, Any>>] The events, containing the following keys: id, title, user, sha,
29
+ # comment, timestamp.
30
+ def get_upload_log(user = nil, title = nil, start = nil, stop = nil, limit = @query_limit_default)
45
31
  resp = get_log('upload/upload', user, title, start, stop, limit)
46
32
 
47
33
  ret = []
@@ -3,28 +3,20 @@ module MediaWiki
3
3
  module Lists
4
4
  module Miscellaneous
5
5
  # Returns an array of random pages titles.
6
- # @param number_of_pages [Int] The number of articles to get.
7
- # Defaults to 1. Cannot be greater than 10 for normal users,
8
- # or 20 for bots.
9
- # @param namespace [Int] The namespace ID. Defaults to
10
- # 0 (the main namespace).
11
- # @see https://www.mediawiki.org/wiki/API:Random MediaWiki Random API
12
- # Docs
6
+ # @param limit [Fixnum] The number of articles to get. Defaults to 1. Cannot be greater than 10 for normal
7
+ # users, or 20 for bots. This method does *not* use the query_limit_default attribute.
8
+ # @param namespace [Fixnum] The namespace ID. Defaults to 0 (the main namespace).
9
+ # @see https://www.mediawiki.org/wiki/API:Random MediaWiki Random API Docs
13
10
  # @since 0.2.0
14
- # @return [Array] All members
15
- def get_random_pages(number_of_pages = 1, namespace = 0)
11
+ # @return [Array<String>] All members
12
+ def get_random_pages(limit = 1, namespace = 0)
16
13
  params = {
17
14
  action: 'query',
18
15
  list: 'random',
19
- rnlimit: get_limited(number_of_pages, 10, 20)
16
+ rnlimit: get_limited(limit, 10, 20),
17
+ rnnamespace: validate_namespace(namespace)
20
18
  }
21
19
 
22
- if MediaWiki::Constants::NAMESPACES.value?(namespace)
23
- params[:rnnamespace] = namespace
24
- else
25
- params[:rnnamespace] = 0
26
- end
27
-
28
20
  ret = []
29
21
  responce = post(params)
30
22
  responce['query']['random'].each { |a| ret << a['title'] }
@@ -33,12 +25,11 @@ module MediaWiki
33
25
  end
34
26
 
35
27
  # Gets the valid change tags on the wiki.
36
- # @param limit [Int] The maximum number of results to get. Maximum 5000
37
- # for bots and 500 for users.
28
+ # @param limit [Fixnum] The maximum number of results to get. Maximum 5000 for bots and 500 for users.
38
29
  # @see https://www.mediawiki.org/wiki/API:Tags MediaWiki Tags API Docs
39
30
  # @since 0.10.0
40
31
  # @return [Array<String>] All tag names.
41
- def get_tags(limit = 500)
32
+ def get_tags(limit = @query_limit_default)
42
33
  params = {
43
34
  action: 'query',
44
35
  list: 'tags',
@@ -7,87 +7,87 @@ module MediaWiki
7
7
  include MediaWiki::Query::Lists::Users
8
8
 
9
9
  # @since 0.10.0
10
- # @see #get_querypage
11
- def get_mostrevisions_page(limit = 500)
10
+ # @see {#get_querypage}
11
+ def get_mostrevisions_page(limit = @query_limit_default)
12
12
  get_querypage('Mostrevisions', limit)
13
13
  end
14
14
 
15
15
  # @since 0.10.0
16
- # @see #get_querypage
17
- def get_mostlinked_page(limit = 500)
16
+ # @see {#get_querypage}
17
+ def get_mostlinked_page(limit = @query_limit_default)
18
18
  get_querypage('Mostlinked', limit)
19
19
  end
20
20
 
21
21
  # @since 0.10.0
22
- # @see #get_querypage
23
- def get_mostlinkedtemplates_page(limit = 500)
22
+ # @see {#get_querypage}
23
+ def get_mostlinkedtemplates_page(limit = @query_limit_default)
24
24
  get_querypage('Mostlinkedtemplates', limit)
25
25
  end
26
26
 
27
27
  # @since 0.10.0
28
- # @see #get_querypage
29
- def get_mostlinkedcategories_page(limit = 500)
28
+ # @see {#get_querypage}
29
+ def get_mostlinkedcategories_page(limit = @query_limit_default)
30
30
  get_querypage('Mostlinkedcategories', limit)
31
31
  end
32
32
 
33
33
  # @since 0.10.0
34
- # @see #get_querypage
35
- def get_mostinterwikis_page(limit = 500)
34
+ # @see {#get_querypage}
35
+ def get_mostinterwikis_page(limit = @query_limit_default)
36
36
  get_querypage('Mostinterwikis', limit)
37
37
  end
38
38
 
39
39
  # @since 0.10.0
40
- # @see #get_querypage
41
- def get_mostimages_page(limit = 500)
40
+ # @see {#get_querypage}
41
+ def get_mostimages_page(limit = @query_limit_default)
42
42
  get_querypage('Mostimages', limit)
43
43
  end
44
44
 
45
45
  # @since 0.10.0
46
- # @see #get_querypage
47
- def get_mostcategories_page(limit = 500)
46
+ # @see {#get_querypage}
47
+ def get_mostcategories_page(limit = @query_limit_default)
48
48
  get_querypage('Mostcategories', limit)
49
49
  end
50
50
 
51
51
  # @since 0.10.0
52
- # @see #get_querypage
53
- def get_listduplicatedfiles_page(limit = 500)
52
+ # @see {#get_querypage}
53
+ def get_listduplicatedfiles_page(limit = @query_limit_default)
54
54
  get_querypage('ListDuplicatedFiles', limit)
55
55
  end
56
56
 
57
57
  # @since 0.10.0
58
- # @see #get_querypage
59
- def get_listredirects_page(limit = 500)
58
+ # @see {#get_querypage}
59
+ def get_listredirects_page(limit = @query_limit_default)
60
60
  get_querypage('Listredirects', limit)
61
61
  end
62
62
 
63
63
  # @since 0.10.0
64
- # @see #get_querypage
65
- def get_wantedtemplates_page(limit = 500)
64
+ # @see {#get_querypage}
65
+ def get_wantedtemplates_page(limit = @query_limit_default)
66
66
  get_querypage('Wantedtemplates', limit)
67
67
  end
68
68
 
69
69
  # @since 0.10.0
70
- # @see #get_querypage
71
- def get_wantedpages_page(limit = 500)
70
+ # @see {#get_querypage}
71
+ def get_wantedpages_page(limit = @query_limit_default)
72
72
  get_querypage('Wantedpages', limit)
73
73
  end
74
74
 
75
75
  # @since 0.10.0
76
- # @see #get_querypage
77
- def get_wantedfiles_page(limit = 500)
76
+ # @see {#get_querypage}
77
+ def get_wantedfiles_page(limit = @query_limit_default)
78
78
  get_querypage('Wantedfiles', limit)
79
79
  end
80
80
 
81
81
  # @since 0.10.0
82
- # @see #get_querypage
83
- def get_wantedcategories_page(limit = 500)
82
+ # @see {#get_querypage}
83
+ def get_wantedcategories_page(limit = @query_limit_default)
84
84
  get_querypage('Wantedcategories', limit)
85
85
  end
86
86
 
87
87
  # @since 0.10.0
88
- # @see #get_querypage
88
+ # @see {#get_querypage}
89
89
  # @return [Nil] If the user does not have the necessary rights.
90
- def get_unwatchedpages_page(limit = 500)
90
+ def get_unwatchedpages_page(limit = @query_limit_default)
91
91
  rights = get_userrights
92
92
  if rights != false && rights.include?('unwatchedpages')
93
93
  get_querypage('Unwatchedpages', limit)
@@ -97,92 +97,90 @@ module MediaWiki
97
97
  end
98
98
 
99
99
  # @since 0.10.0
100
- # @see #get_querypage
101
- def get_unusedtemplates_page(limit = 500)
100
+ # @see {#get_querypage}
101
+ def get_unusedtemplates_page(limit = @query_limit_default)
102
102
  get_querypage('Unusedtemplates', limit)
103
103
  end
104
104
 
105
105
  # @since 0.10.0
106
- # @see #get_querypage
107
- def get_unusedcategories_page(limit = 500)
106
+ # @see {#get_querypage}
107
+ def get_unusedcategories_page(limit = @query_limit_default)
108
108
  get_querypage('Unusedcategories', limit)
109
109
  end
110
110
 
111
111
  # @since 0.10.0
112
- # @see #get_querypage
113
- def get_uncategorizedtemplates_page(limit = 500)
112
+ # @see {#get_querypage}
113
+ def get_uncategorizedtemplates_page(limit = @query_limit_default)
114
114
  get_querypage('Uncategorizedtemplates', limit)
115
115
  end
116
116
 
117
117
  # @since 0.10.0
118
- # @see #get_querypage
119
- def get_uncategorizedpages_page(limit = 500)
118
+ # @see {#get_querypage}
119
+ def get_uncategorizedpages_page(limit = @query_limit_default)
120
120
  get_querypage('Uncategorizedpages', limit)
121
121
  end
122
122
 
123
123
  # @since 0.10.0
124
- # @see #get_querypage
125
- def get_uncategorizedcategories_page(limit = 500)
124
+ # @see {#get_querypage}
125
+ def get_uncategorizedcategories_page(limit = @query_limit_default)
126
126
  get_querypage('Uncategorizedcategories', limit)
127
127
  end
128
128
 
129
129
  # @since 0.10.0
130
- # @see #get_querypage
131
- def get_shortpages_page(limit = 500)
130
+ # @see {#get_querypage}
131
+ def get_shortpages_page(limit = @query_limit_default)
132
132
  get_querypage('Shortpages', limit)
133
133
  end
134
134
 
135
135
  # @since 0.10.0
136
- # @see #get_querypage
137
- def get_withoutinterwiki_page(limit = 500)
136
+ # @see {#get_querypage}
137
+ def get_withoutinterwiki_page(limit = @query_limit_default)
138
138
  get_querypage('Withoutinterwiki', limit)
139
139
  end
140
140
 
141
141
  # @since 0.10.0
142
- # @see #get_querypage
143
- def get_fewestrevisions_page(limit = 500)
142
+ # @see {#get_querypage}
143
+ def get_fewestrevisions_page(limit = @query_limit_default)
144
144
  get_querypage('Fewestrevisions', limit)
145
145
  end
146
146
 
147
147
  # @since 0.10.0
148
- # @see #get_querypage
149
- def get_lonelypages_page(limit = 500)
148
+ # @see {#get_querypage}
149
+ def get_lonelypages_page(limit = @query_limit_default)
150
150
  get_querypage('Lonelypages', limit)
151
151
  end
152
152
 
153
153
  # @since 0.10.0
154
- # @see #get_querypage
155
- def get_ancientpages_page(limit = 500)
154
+ # @see {#get_querypage}
155
+ def get_ancientpages_page(limit = @query_limit_default)
156
156
  get_querypage('Ancientpages', limit)
157
157
  end
158
158
 
159
159
  # @since 0.10.0
160
- # @see #get_querypage
161
- def get_longpages_page(limit = 500)
160
+ # @see {#get_querypage}
161
+ def get_longpages_page(limit = @query_limit_default)
162
162
  get_querypage('Longpages', limit)
163
163
  end
164
164
 
165
165
  # @since 0.10.0
166
- # @see #get_querypage
167
- def get_doubleredirects_page(limit = 500)
166
+ # @see {#get_querypage}
167
+ def get_doubleredirects_page(limit = @query_limit_default)
168
168
  get_querypage('DoubleRedirects', limit)
169
169
  end
170
170
 
171
171
  # @since 0.10.0
172
- # @see #get_querypage
173
- def get_brokenredirects_page(limit = 500)
172
+ # @see {#get_querypage}
173
+ def get_brokenredirects_page(limit = @query_limit_default)
174
174
  get_querypage('BrokenRedirects', limit)
175
175
  end
176
176
 
177
177
  # Performs a QueryPage request.
178
- # @param page [String] The special page (not including Special:) to
179
- # query.
180
- # @param limit [Int] The limit.
181
- # @see https://www.mediawiki.org/wiki/API:Querypage MediaWiki QueryPage
182
- # API Docs
183
- # @since 0.10.0
184
- # @return [Hash] The response.
185
- def get_querypage(page, limit = 500)
178
+ # @param page [String] The special page (not including Special:) to query.
179
+ # @param limit [Fixnum] The limit.
180
+ # @see https://www.mediawiki.org/wiki/API:Querypage MediaWiki QueryPage API Docs
181
+ # @since 0.10.0
182
+ # @return [Array<String>] All of the page titles in the querypage.
183
+ def get_querypage(page, limit = @query_limit_default)
186
184
  params = {
187
185
  action: 'query',
188
186
  list: 'querypage',