line |
true |
false |
branch |
38
|
43 |
0 |
if (ref $_[0] eq 'HASH') { } |
50
|
0 |
0 |
if @_ |
63
|
1 |
42 |
if $assert |
64
|
4 |
39 |
if $operator |
66
|
0 |
43 |
if (not $agent || $operator) { } |
|
3 |
80 |
elsif (not $agent and $operator) { } |
73
|
3 |
0 |
defined 'MediaWiki::Bot'->VERSION ? : |
83
|
1 |
42 |
if $assert |
86
|
0 |
43 |
defined $maxlag ? : |
94
|
43 |
0 |
if defined $agent |
104
|
0 |
43 |
if ($login_data) |
106
|
0 |
0 |
if ($success) { } |
110
|
0 |
0 |
if $self->{'debug'} |
125
|
43 |
0 |
if (ref $_[0] eq 'HASH') { } |
138
|
43 |
0 |
unless defined $protocol |
139
|
1 |
42 |
unless defined $host |
140
|
42 |
1 |
unless defined $path |
144
|
0 |
43 |
if ($host =~ m[^(http|https)(://)?] and not $protocol) |
152
|
0 |
43 |
if (defined $self->{'host'} and $self->{'host'} ne $host or defined $self->{'path'} and $self->{'path'} ne $path or defined $self->{'protocol'} and $self->{'protocol'} ne $protocol) |
156
|
0 |
0 |
if $self->{'ns_data'} |
157
|
0 |
0 |
if $self->{'ns_alias_data'} |
164
|
42 |
1 |
$path ? : |
167
|
0 |
43 |
if $self->{'debug'} > 1 |
181
|
1 |
0 |
if (ref $_[0] eq 'HASH') { } |
184
|
0 |
1 |
defined $_[0]{'autoconfig'} ? : |
205
|
0 |
1 |
unless $self->{'protocol'} eq 'https' |
208
|
0 |
1 |
if ($basic_auth) |
209
|
0 |
0 |
if $self->{'debug'} > 1 |
218
|
0 |
1 |
if ($self->{'host'} eq 'secure.wikimedia.org') |
224
|
0 |
1 |
if ($do_sul) |
226
|
0 |
0 |
if $self->{'debug'} > 1 and not $sul_success |
230
|
0 |
1 |
if (-r $cookies) |
235
|
0 |
0 |
if ($self->_is_loggedin) |
236
|
0 |
0 |
if $autoconfig |
237
|
0 |
0 |
if $self->{'debug'} > 1 |
242
|
0 |
1 |
unless ($password) |
243
|
0 |
0 |
if $self->{'debug'} |
251
|
0 |
2 |
unless $res = $self->{'api'}->api({'action', 'query', 'meta', 'tokens', 'type', 'login'}) |
261
|
0 |
2 |
unless $res = $self->{'api'}->api({'action', 'login', 'lgname', $self->{'login_username'}, 'lgpassword', $password, 'lgdomain', $lgdomain, 'lgtoken', $token}) |
266
|
0 |
2 |
if $res->{'login'}{'result'} eq 'Success' |
270
|
1 |
0 |
if -w $cookies or -w '.' |
272
|
0 |
1 |
if ($res->{'login'}{'result'} eq 'Success') |
273
|
0 |
0 |
if ($res->{'login'}{'lgusername'} eq $self->{'username'}) |
274
|
0 |
0 |
if $autoconfig |
275
|
0 |
0 |
if $self->{'debug'} > 1 |
311
|
0 |
0 |
if $debug > 1 |
321
|
0 |
0 |
$success ? : |
|
0 |
0 |
if $debug > 1 |
323
|
0 |
0 |
if $debug > 1 and not $success |
334
|
0 |
0 |
if $debug > 1 |
361
|
1 |
0 |
if (ref $_[0] eq 'HASH') { } |
385
|
1 |
0 |
unless $summary |
386
|
1 |
0 |
if ($assert) { } |
392
|
1 |
0 |
unless defined $is_minor |
393
|
1 |
0 |
unless defined $markasbot |
397
|
0 |
1 |
if defined $captcha_id and not defined $captcha_solution or defined $captcha_solution and not defined $captcha_id |
402
|
0 |
1 |
unless $edittoken |
411
|
0 |
1 |
$section ? : |
|
1 |
0 |
$assert ? : |
|
1 |
0 |
$is_minor ? : |
|
0 |
1 |
$captcha_id ? : |
|
0 |
1 |
$captcha_solution ? : |
430
|
1 |
0 |
unless $res |
432
|
0 |
0 |
if ($res->{'edit'}{'result'} and $res->{'edit'}{'result'} eq 'Failure') |
436
|
0 |
0 |
if (exists $res->{'edit'}{'captcha'}) |
463
|
0 |
0 |
if defined $opts->{'movetalk'} |
464
|
0 |
0 |
if defined $opts->{'noredirect'} |
465
|
0 |
0 |
if defined $opts->{'movesubpages'} |
468
|
0 |
0 |
unless $res |
488
|
0 |
2 |
if $rvstartid |
489
|
0 |
2 |
if $direction |
492
|
0 |
2 |
unless $res |
530
|
0 |
10 |
if $revid |
531
|
1 |
9 |
if $section |
534
|
0 |
10 |
unless $res |
537
|
2 |
8 |
if $id == -1 |
552
|
0 |
1 |
unless $res |
554
|
0 |
1 |
if $id == -1 |
561
|
1 |
1 |
ref $_[0] eq 'ARRAY' ? : |
575
|
0 |
2 |
unless $res |
579
|
6 |
2 |
if ($$diff{$page->{'title'}}) { } |
586
|
2 |
4 |
if (defined $page->{'missing'}) |
590
|
4 |
0 |
if (defined $page->{'revisions'}) |
592
|
0 |
4 |
if (not defined $revisions) { } |
|
0 |
4 |
elsif (length $revisions < 150 and $revisions =~ /\#REDIRECT\s\[\[([^\[\]]+)\]\]/) { } |
609
|
2 |
6 |
if ($diff->{$title} == 1) |
611
|
2 |
0 |
if (@pieces > 1) |
614
|
0 |
2 |
if $self->{'debug'} > 1 |
617
|
0 |
2 |
if (defined $v and $v =~ /\#REDIRECT\s\[\[([^\[\]]+)\]\]/) |
634
|
0 |
0 |
if $options->{'width'} |
635
|
0 |
0 |
if $options->{'height'} |
644
|
0 |
0 |
unless $ref |
646
|
0 |
0 |
unless defined $pageref->{'imageinfo'} |
649
|
0 |
0 |
unless $url =~ m[^https?://] |
652
|
0 |
0 |
unless $response->code == 200 |
680
|
0 |
0 |
if defined $after |
695
|
0 |
0 |
unless $res |
713
|
1 |
2 |
unless $res |
735
|
1 |
0 |
unless $options->{'max'} |
738
|
0 |
1 |
unless $res |
739
|
0 |
1 |
unless ref $res |
764
|
2 |
3 |
if (ref $_[0] eq 'HASH') { } |
770
|
0 |
2 |
if (ref $args{'show'} eq 'HASH') { } |
788
|
2 |
3 |
if ref $ns eq 'ARRAY' |
797
|
0 |
5 |
if defined $user |
798
|
0 |
5 |
if defined $show |
800
|
5 |
0 |
unless $options->{'max'} |
802
|
0 |
5 |
unless my $res = $self->{'api'}->list($hash, $options) |
804
|
2 |
3 |
unless ref $res |
816
|
0 |
2 |
if ref $ns eq 'ARRAY' |
817
|
2 |
0 |
if (defined $filter and $filter =~ /(all|redirects|nonredirects)/) |
828
|
1 |
1 |
if defined $ns |
829
|
2 |
0 |
if $filter |
830
|
0 |
2 |
unless $options->{'max'} |
833
|
0 |
2 |
unless $res |
834
|
1 |
1 |
unless ref $res |
853
|
0 |
2 |
if ref $ns eq 'ARRAY' |
854
|
2 |
0 |
if (defined $filter and $filter =~ /(all|redirects|nonredirects)/) |
865
|
2 |
0 |
if $filter |
866
|
0 |
2 |
if defined $ns |
867
|
0 |
2 |
unless $options->{'max'} |
870
|
0 |
2 |
unless $res |
871
|
1 |
1 |
unless ref $res |
888
|
14 |
0 |
if ($category =~ /:/) { } |
890
|
0 |
14 |
if ($cat ne 'Category') |
893
|
0 |
0 |
if ($cat ne $cat_ns_name) |
901
|
0 |
14 |
if $self->{'debug'} > 1 |
909
|
0 |
14 |
unless defined $options->{'max'} |
910
|
1 |
13 |
if $options->{'max'} == 0 |
913
|
1 |
13 |
unless ref $res |
914
|
0 |
13 |
unless $res |
927
|
1 |
13 |
unless defined $options->{'max'} |
930
|
3 |
11 |
unless $_[0] |
940
|
18 |
2114 |
if ($page =~ /^$cat_ns_name:/) { } |
941
|
11 |
7 |
if (not exists $data{$page}) { } |
970
|
1 |
1 |
if (defined $options and $options->{'max'} == '0') |
975
|
0 |
2 |
unless $res |
988
|
0 |
2 |
if ref $ns eq 'ARRAY' |
997
|
0 |
2 |
if defined $ns |
998
|
0 |
2 |
if $prot |
999
|
0 |
2 |
unless $options->{'max'} |
1002
|
0 |
2 |
unless $res |
1003
|
1 |
1 |
unless ref $res |
1018
|
0 |
0 |
if (ref $page eq 'ARRAY') { } |
1032
|
0 |
0 |
unless $res |
1035
|
0 |
0 |
if exists $hashref->{'purged'} |
1048
|
0 |
5 |
unless $res |
1061
|
0 |
3 |
unless ($image =~ /^File:|Image:/) |
1067
|
0 |
0 |
unless ($image =~ /^\Q$file_ns_name\E:/) |
1072
|
1 |
2 |
unless defined $options->{'max'} |
1073
|
0 |
3 |
if $options->{'max'} == 0 |
1075
|
0 |
3 |
if ref $ns eq 'ARRAY' |
1083
|
0 |
3 |
if defined $ns |
1084
|
1 |
2 |
if (defined $filter and $filter =~ /(all|redirects|nonredirects)/) |
1088
|
0 |
3 |
unless $res |
1089
|
1 |
2 |
unless ref $res |
1100
|
2 |
1 |
defined $limit ? : |
1102
|
1 |
2 |
unless ($image =~ /^File:|Image:/) |
1105
|
1 |
0 |
unless ($image =~ /^\Q$image_ns_name\E:/) |
1112
|
3 |
0 |
$limit ? : |
1120
|
1 |
2 |
if $filterlocal |
1121
|
0 |
3 |
if $cont |
1124
|
0 |
3 |
unless $res |
1127
|
0 |
3 |
if $cont and $self->{'debug'} > 1 |
1131
|
3 |
0 |
unless $cont |
1134
|
1 |
2 |
@data > $limit ? : |
1161
|
0 |
4 |
unless $res |
1164
|
2 |
2 |
if ($number == 1) { } |
|
2 |
0 |
elsif ($number == 0) { } |
1188
|
1 |
6 |
if (ref $image eq 'ARRAY') |
1199
|
0 |
7 |
unless $res |
1202
|
1 |
6 |
if ($multi) { } |
1215
|
3 |
6 |
if ($res->{'query'}{'pages'}{$id}{'imagerepository'} eq 'shared') { } |
|
3 |
3 |
elsif (exists $res->{'query'}{'pages'}{$id}{'missing'}) { } |
|
0 |
3 |
elsif ($res->{'query'}{'pages'}{$id}{'imagerepository'} eq '') { } |
|
3 |
0 |
elsif ($res->{'query'}{'pages'}{$id}{'imagerepository'} eq 'local') { } |
1216
|
1 |
2 |
if ($multi) { } |
1224
|
1 |
2 |
if ($multi) { } |
1232
|
0 |
0 |
if ($multi) { } |
1240
|
1 |
2 |
if ($multi) { } |
1265
|
3 |
1 |
unless defined $options->{'max'} |
1266
|
1 |
3 |
if exists $options->{'max'} and $options->{'max'} == 0 |
1269
|
1 |
3 |
unless $res |
1270
|
0 |
3 |
unless ref $res |
1287
|
0 |
2 |
unless $res |
1304
|
0 |
0 |
unless $res |
1312
|
1 |
1 |
unless $username =~ /User:/i |
1320
|
0 |
2 |
unless $res |
1335
|
0 |
1 |
unless $res |
1349
|
0 |
1 |
if ($limit > 50) |
1361
|
0 |
1 |
if $rvstartid |
1362
|
0 |
1 |
if $direction |
1365
|
0 |
1 |
unless $res |
1388
|
0 |
4 |
unless $res |
1391
|
2 |
2 |
if ($number == 1) { } |
|
2 |
0 |
elsif ($number == 0) { } |
1415
|
1 |
1 |
unless ($text) |
1416
|
0 |
1 |
unless $page |
1420
|
1 |
1 |
$page ? : |
1427
|
0 |
2 |
unless $res |
1431
|
0 |
2 |
exists $res->{'expandtemplates'}{'*'} ? : |
1446
|
1 |
1 |
if defined $group |
1447
|
2 |
0 |
unless exists $opts->{'max'} |
1448
|
0 |
2 |
if exists $opts->{'max'} and $opts->{'max'} == 0 |
1450
|
0 |
2 |
unless $res |
1451
|
0 |
2 |
unless ref $res |
1461
|
1 |
0 |
unless ($self->{'sitematrix'}) |
1465
|
1 |
0 |
if (ref $wiki eq 'ARRAY') { } |
1470
|
3 |
3 |
if defined $domain |
1478
|
0 |
0 |
if defined $domain |
1488
|
0 |
1 |
unless ($self->{'sitematrix'}) |
1492
|
1 |
0 |
if (ref $wiki eq 'ARRAY') { } |
1495
|
6 |
0 |
unless $w =~ m[^https\:/] |
1502
|
0 |
0 |
unless $wiki =~ m[^https\:/] |
1515
|
1 |
0 |
if (ref $_[0] eq 'HASH') { } |
1531
|
0 |
1 |
if ($title) { } |
|
1 |
0 |
elsif ($revid) { } |
1540
|
0 |
1 |
unless $res |
1555
|
0 |
1 |
if (defined $filter and $filter =~ /(all|redirects|nonredirects)/) |
1559
|
1 |
0 |
if (not defined $ns and $prefix =~ /:/) |
1560
|
0 |
1 |
if $self->{'debug'} > 1 |
1565
|
0 |
1 |
if $self->{'debug'} > 1 |
1574
|
1 |
0 |
if defined $ns |
1575
|
0 |
1 |
if $filter |
1576
|
1 |
0 |
unless $options->{'max'} |
1580
|
0 |
1 |
unless $res |
1581
|
0 |
1 |
unless ref $res |
1595
|
0 |
2 |
if (ref $ns eq 'ARRAY') |
1610
|
2 |
0 |
unless $options->{'max'} |
1613
|
0 |
2 |
unless $res |
1614
|
0 |
2 |
unless ref $res |
1629
|
1 |
0 |
if ($user) |
1640
|
1 |
0 |
if $log_type |
1641
|
1 |
0 |
if $user |
1642
|
1 |
0 |
if $target |
1643
|
1 |
0 |
unless $options->{'max'} |
1646
|
0 |
1 |
unless $res |
1647
|
0 |
1 |
unless ref $res |
1667
|
0 |
1 |
unless $res |
1668
|
1 |
0 |
unless $res->{'query'}{'globalblocks'}[0] |
1680
|
0 |
2 |
unless ($self->{'host'} eq 'meta.wikimedia.org') |
1681
|
0 |
0 |
if $self->{'debug'} |
1694
|
0 |
2 |
unless $res |
1697
|
1 |
1 |
if ($number == 1) { } |
|
1 |
0 |
elsif ($number == 0) { } |
1714
|
2 |
0 |
unless ($self->{'api'}{'config'}{'api_url'} =~ m[
http\:\/\/meta\.wikimedia\.org\/w\/api\.php
|
https\:\/\/secure\.wikimedia\.org\/wikipedia\/meta\/w\/api\.php
]x) |
1722
|
0 |
2 |
if $self->{'debug'} |
1735
|
0 |
2 |
unless $res |
1737
|
1 |
1 |
if ($number == 1) { } |
|
1 |
0 |
elsif ($number == 0) { } |
1752
|
1 |
2 |
if (ref $page eq 'ARRAY') |
1763
|
0 |
3 |
unless $res |
1771
|
3 |
1 |
if (@$protection == 0) |
1777
|
2 |
1 |
if (scalar keys %$out_data == 1) { } |
1798
|
0 |
0 |
if (ref $rcid eq 'ARRAY') { } |
1815
|
0 |
0 |
if not $res or $self->{'error'}{'details'} and $self->{'error'}{'details'} =~ /^(?:permissiondenied|badtoken)/ |
1828
|
0 |
0 |
if (ref $user eq 'ARRAY') |
1838
|
0 |
0 |
if ($user =~ /:/) |
1851
|
0 |
0 |
unless $res |
1863
|
0 |
0 |
unless defined $options->{'max'} |
1864
|
0 |
0 |
if $options->{'max'} == 0 |
1873
|
0 |
0 |
unless $res |
1874
|
0 |
0 |
unless ref $res |
1889
|
1 |
2 |
if (ref $user eq 'ARRAY') { } |
1895
|
0 |
3 |
if ref $ns eq 'ARRAY' |
1898
|
3 |
0 |
unless defined $opts->{'max'} |
1899
|
0 |
3 |
if $opts->{'max'} == 0 |
1901
|
1 |
2 |
defined $ns ? : |
1910
|
0 |
3 |
unless $res->[0] |
1911
|
0 |
3 |
unless ref $res |
1922
|
0 |
0 |
if (not defined $data and defined $args->{'file'}) |
1923
|
0 |
0 |
unless open my $in, '<:raw', $args->{'file'} |
1925
|
0 |
0 |
unless (defined $data) |
1930
|
0 |
0 |
unless (defined $args->{'file'} or defined $args->{'title'}) |
1952
|
0 |
0 |
unless (defined $url) |
1987
|
0 |
1 |
unless $res |
1990
|
0 |
1 |
unless $res_user->{'name'} eq $user |
2016
|
0 |
1 |
unless my $res = $self->{'api'}->api({'action', 'query', 'meta', 'siteinfo|tokens', 'titles', $page, 'prop', 'revisions', 'rvprop', 'timestamp', 'type', $type}) |
2041
|
0 |
3 |
if $self->{'debug'} |
2045
|
0 |
3 |
defined $error && ref $error eq 'HASH' && exists $error->{'code'} && exists $error->{'details'} ? : |
2055
|
0 |
0 |
if $self->{'debug'} > 1 |
2063
|
0 |
0 |
unless my $res = $self->{'api'}->api({'action', 'query', 'meta', 'userinfo'}) |
2080
|
0 |
0 |
unless $res |
2081
|
0 |
0 |
unless $res->{'query'} |
2082
|
0 |
0 |
unless $res->{'query'}{'userinfo'} |
2083
|
0 |
0 |
unless $res->{'query'}{'userinfo'}{'name'} |
2089
|
0 |
0 |
if $is ne $ought |
2091
|
0 |
0 |
unless $res->{'query'}{'userinfo'}{'rights'} |
2095
|
0 |
0 |
if ($right eq 'bot') |
2101
|
0 |
0 |
unless $res->{'query'}{'userinfo'}{'groups'} |
2104
|
0 |
0 |
if ($group eq 'sysop') |
2109
|
0 |
0 |
unless ($has_bot and not $is_sysop) |
2110
|
0 |
0 |
if $self->{'debug'} > 1 |
2112
|
0 |
0 |
unless $self->{'assert'} |
2121
|
0 |
1 |
unless $res |
2128
|
297 |
293 |
if (ref $hashref ne 'HASH') |
2129
|
1 |
296 |
if ($hashref eq 'specials') |
2133
|
36 |
55 |
if exists $special->{'private'} or exists $special->{'fishbowl'} |
2162
|
1 |
0 |
if ($response->is_success) |
2188
|
13 |
4 |
if exists $self->{'ns_data'} |
2202
|
1 |
2 |
if exists $self->{'ns_alias_data'} |