@@ -31,7 +31,7 @@ discard block |
||
31 | 31 | $end = $request->query->get('end'); |
32 | 32 | |
33 | 33 | if ($start != '' && $end != '') { |
34 | - return $this->redirectToRoute('MetaResult', [ 'start' => $start, 'end' => $end ]); |
|
34 | + return $this->redirectToRoute('MetaResult', ['start' => $start, 'end' => $end]); |
|
35 | 35 | } |
36 | 36 | |
37 | 37 | return $this->render('meta/index.html.twig', [ |
@@ -73,7 +73,7 @@ discard block |
||
73 | 73 | $timeline = []; |
74 | 74 | $startObj = new DateTime($start); |
75 | 75 | $endObj = new DateTime($end); |
76 | - $numDays = (int) $endObj->diff($startObj)->format("%a"); |
|
76 | + $numDays = (int)$endObj->diff($startObj)->format("%a"); |
|
77 | 77 | $grandSum = 0; |
78 | 78 | |
79 | 79 | // Generate array of date labels |
@@ -85,17 +85,17 @@ discard block |
||
85 | 85 | |
86 | 86 | foreach ($data as $entry) { |
87 | 87 | if (!isset($totals[$entry['tool']])) { |
88 | - $totals[$entry['tool']] = (int) $entry['count']; |
|
88 | + $totals[$entry['tool']] = (int)$entry['count']; |
|
89 | 89 | |
90 | 90 | // Create arrays for each tool, filled with zeros for each date in the timeline |
91 | 91 | $timeline[$entry['tool']] = array_fill(0, $numDays, 0); |
92 | 92 | } else { |
93 | - $totals[$entry['tool']] += (int) $entry['count']; |
|
93 | + $totals[$entry['tool']] += (int)$entry['count']; |
|
94 | 94 | } |
95 | 95 | |
96 | 96 | $date = new DateTime($entry['date']); |
97 | - $dateIndex = (int) $date->diff($startObj)->format("%a"); |
|
98 | - $timeline[$entry['tool']][$dateIndex] = (int) $entry['count']; |
|
97 | + $dateIndex = (int)$date->diff($startObj)->format("%a"); |
|
98 | + $timeline[$entry['tool']][$dateIndex] = (int)$entry['count']; |
|
99 | 99 | |
100 | 100 | $grandSum += $entry['count']; |
101 | 101 | } |
@@ -11,11 +11,8 @@ |
||
11 | 11 | use Symfony\Component\HttpFoundation\RedirectResponse; |
12 | 12 | use Symfony\Component\HttpFoundation\Request; |
13 | 13 | use Symfony\Component\HttpFoundation\Response; |
14 | -use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; |
|
15 | 14 | use Xtools\ProjectRepository; |
16 | 15 | use Xtools\UserRepository; |
17 | -use Xtools\Page; |
|
18 | -use Xtools\Edit; |
|
19 | 16 | |
20 | 17 | /** |
21 | 18 | * This controller serves the Pages tool. |
@@ -78,7 +78,7 @@ discard block |
||
78 | 78 | 'username' => $username, |
79 | 79 | ]); |
80 | 80 | } elseif ($projectQuery != "") { |
81 | - return $this->redirectToRoute("PagesProject", [ 'project'=>$projectQuery ]); |
|
81 | + return $this->redirectToRoute("PagesProject", ['project'=>$projectQuery]); |
|
82 | 82 | } |
83 | 83 | |
84 | 84 | // set default wiki so we can populate the namespace selector |
@@ -196,7 +196,7 @@ discard block |
||
196 | 196 | JOIN $revisionTable ON page_id = rev_page |
197 | 197 | $paJoin |
198 | 198 | WHERE $whereRev AND rev_parent_id = '0' $namespaceConditionRev $redirectCondition |
199 | - " . ($hasPageAssessments ? 'GROUP BY rev_page' : '') . " |
|
199 | + ".($hasPageAssessments ? 'GROUP BY rev_page' : '')." |
|
200 | 200 | ) |
201 | 201 | |
202 | 202 | UNION |
@@ -280,8 +280,8 @@ discard block |
||
280 | 280 | } |
281 | 281 | |
282 | 282 | if ($total < 1) { |
283 | - $this->addFlash('notice', [ 'no-result', $username ]); |
|
284 | - return $this->redirectToRoute('PagesProject', [ 'project' => $project ]); |
|
283 | + $this->addFlash('notice', ['no-result', $username]); |
|
284 | + return $this->redirectToRoute('PagesProject', ['project' => $project]); |
|
285 | 285 | } |
286 | 286 | |
287 | 287 | ksort($pagesByNamespaceByDate); |
@@ -7,7 +7,6 @@ |
||
7 | 7 | |
8 | 8 | use DateTime; |
9 | 9 | use Symfony\Component\DependencyInjection\ContainerInterface; |
10 | -use Xtools\ProjectRepository; |
|
11 | 10 | |
12 | 11 | /** |
13 | 12 | * Helper class for getting information about semi-automated edits. |
@@ -126,7 +126,7 @@ discard block |
||
126 | 126 | $revTable = $project->getRepository()->getTableName($project->getDatabaseName(), 'revision'); |
127 | 127 | $pageTable = $project->getRepository()->getTableName($project->getDatabaseName(), 'page'); |
128 | 128 | |
129 | - $AEBTypes = array_map(function ($AEBType) { |
|
129 | + $AEBTypes = array_map(function($AEBType) { |
|
130 | 130 | return $AEBType['regex']; |
131 | 131 | }, $this->container->getParameter('automated_tools')); |
132 | 132 | |
@@ -151,12 +151,12 @@ discard block |
||
151 | 151 | } |
152 | 152 | |
153 | 153 | // Get diff sizes, based on length of each parent revision |
154 | - $parentRevIds = array_map(function ($edit) { |
|
154 | + $parentRevIds = array_map(function($edit) { |
|
155 | 155 | return $edit['rev_parent_id']; |
156 | 156 | }, $editData); |
157 | 157 | $query = "SELECT rev_len, rev_id |
158 | 158 | FROM revision |
159 | - WHERE rev_id IN (" . implode(',', $parentRevIds) . ")"; |
|
159 | + WHERE rev_id IN (" . implode(',', $parentRevIds).")"; |
|
160 | 160 | $diffSizeData = $conn->executeQuery($query)->fetchAll(); |
161 | 161 | |
162 | 162 | // reformat with rev_id as the key, rev_len as the value |
@@ -166,24 +166,24 @@ discard block |
||
166 | 166 | } |
167 | 167 | |
168 | 168 | // Build our array of nonautomated edits |
169 | - $editData = array_map(function ($edit) use ($namespaces, $diffSizes) { |
|
169 | + $editData = array_map(function($edit) use ($namespaces, $diffSizes) { |
|
170 | 170 | $pageTitle = $edit['page_title']; |
171 | 171 | |
172 | 172 | if ($edit['page_namespace'] !== '0') { |
173 | - $pageTitle = $namespaces[$edit['page_namespace']] . ":$pageTitle"; |
|
173 | + $pageTitle = $namespaces[$edit['page_namespace']].":$pageTitle"; |
|
174 | 174 | } |
175 | 175 | |
176 | 176 | $diffSize = $edit['rev_len']; |
177 | 177 | if ($edit['rev_parent_id'] > 0) { |
178 | - $diffSize = $edit['rev_len'] - $diffSizes[$edit['rev_parent_id']]; |
|
178 | + $diffSize = $edit['rev_len']-$diffSizes[$edit['rev_parent_id']]; |
|
179 | 179 | } |
180 | 180 | |
181 | 181 | return [ |
182 | 182 | 'page_title' => $pageTitle, |
183 | - 'namespace' => (int) $edit['page_namespace'], |
|
184 | - 'rev_id' => (int) $edit['rev_id'], |
|
183 | + 'namespace' => (int)$edit['page_namespace'], |
|
184 | + 'rev_id' => (int)$edit['rev_id'], |
|
185 | 185 | 'timestamp' => DateTime::createFromFormat('YmdHis', $edit['rev_timestamp']), |
186 | - 'minor_edit' => (bool) $edit['rev_minor_edit'], |
|
186 | + 'minor_edit' => (bool)$edit['rev_minor_edit'], |
|
187 | 187 | 'summary' => $edit['rev_comment'], |
188 | 188 | 'size' => $diffSize |
189 | 189 | ]; |
@@ -54,7 +54,7 @@ discard block |
||
54 | 54 | */ |
55 | 55 | protected function getRevisionCounts() |
56 | 56 | { |
57 | - if (! is_array($this->revisionCounts)) { |
|
57 | + if (!is_array($this->revisionCounts)) { |
|
58 | 58 | $this->revisionCounts = $this->getRepository() |
59 | 59 | ->getRevisionCounts($this->project, $this->user); |
60 | 60 | } |
@@ -67,7 +67,7 @@ discard block |
||
67 | 67 | */ |
68 | 68 | protected function getRevisionDates() |
69 | 69 | { |
70 | - if (! is_array($this->revisionDates)) { |
|
70 | + if (!is_array($this->revisionDates)) { |
|
71 | 71 | $this->revisionDates = $this->getRepository() |
72 | 72 | ->getRevisionDates($this->project, $this->user); |
73 | 73 | } |
@@ -80,7 +80,7 @@ discard block |
||
80 | 80 | */ |
81 | 81 | protected function getPageCounts() |
82 | 82 | { |
83 | - if (! is_array($this->pageCounts)) { |
|
83 | + if (!is_array($this->pageCounts)) { |
|
84 | 84 | $this->pageCounts = $this->getRepository() |
85 | 85 | ->getPageCounts($this->project, $this->user); |
86 | 86 | } |
@@ -93,7 +93,7 @@ discard block |
||
93 | 93 | */ |
94 | 94 | protected function getLogCounts() |
95 | 95 | { |
96 | - if (! is_array($this->logCounts)) { |
|
96 | + if (!is_array($this->logCounts)) { |
|
97 | 97 | $this->logCounts = $this->getRepository() |
98 | 98 | ->getLogCounts($this->project, $this->user); |
99 | 99 | } |
@@ -142,7 +142,7 @@ discard block |
||
142 | 142 | */ |
143 | 143 | public function countAllRevisions() |
144 | 144 | { |
145 | - return $this->countLiveRevisions() + $this->countDeletedRevisions(); |
|
145 | + return $this->countLiveRevisions()+$this->countDeletedRevisions(); |
|
146 | 146 | } |
147 | 147 | |
148 | 148 | /** |
@@ -161,7 +161,7 @@ discard block |
||
161 | 161 | */ |
162 | 162 | public function countRevisionsWithoutComments() |
163 | 163 | { |
164 | - return $this->countAllRevisions() - $this->countRevisionsWithComments(); |
|
164 | + return $this->countAllRevisions()-$this->countRevisionsWithComments(); |
|
165 | 165 | } |
166 | 166 | |
167 | 167 | /** |
@@ -228,7 +228,7 @@ discard block |
||
228 | 228 | */ |
229 | 229 | public function countAllPagesEdited() |
230 | 230 | { |
231 | - return $this->countLivePagesEdited() + $this->countDeletedPagesEdited(); |
|
231 | + return $this->countLivePagesEdited()+$this->countDeletedPagesEdited(); |
|
232 | 232 | } |
233 | 233 | |
234 | 234 | /** |
@@ -238,7 +238,7 @@ discard block |
||
238 | 238 | */ |
239 | 239 | public function countPagesCreated() |
240 | 240 | { |
241 | - return $this->countCreatedPagesLive() + $this->countPagesCreatedDeleted(); |
|
241 | + return $this->countCreatedPagesLive()+$this->countPagesCreatedDeleted(); |
|
242 | 242 | } |
243 | 243 | |
244 | 244 | /** |
@@ -290,7 +290,7 @@ discard block |
||
290 | 290 | $logCounts = $this->getLogCounts(); |
291 | 291 | $block = isset($logCounts['block-block']) ? (int)$logCounts['block-block'] : 0; |
292 | 292 | $reBlock = isset($logCounts['block-reblock']) ? (int)$logCounts['block-reblock'] : 0; |
293 | - return $block + $reBlock; |
|
293 | + return $block+$reBlock; |
|
294 | 294 | } |
295 | 295 | |
296 | 296 | /** |
@@ -388,7 +388,7 @@ discard block |
||
388 | 388 | $import = isset($logCounts['import-import']) ? (int)$logCounts['import-import'] : 0; |
389 | 389 | $interwiki = isset($logCounts['import-interwiki']) ? (int)$logCounts['import-interwiki'] : 0; |
390 | 390 | $upload = isset($logCounts['import-upload']) ? (int)$logCounts['import-upload'] : 0; |
391 | - return $import + $interwiki + $upload; |
|
391 | + return $import+$interwiki+$upload; |
|
392 | 392 | } |
393 | 393 | |
394 | 394 | /** |
@@ -521,9 +521,9 @@ discard block |
||
521 | 521 | public function approvals() |
522 | 522 | { |
523 | 523 | $logCounts = $this->getLogCounts(); |
524 | - $total = $logCounts['review-approve'] + |
|
525 | - (!empty($logCounts['review-approve-a']) ? $logCounts['review-approve-a'] : 0) + |
|
526 | - (!empty($logCounts['review-approve-i']) ? $logCounts['review-approve-i'] : 0) + |
|
524 | + $total = $logCounts['review-approve']+ |
|
525 | + (!empty($logCounts['review-approve-a']) ? $logCounts['review-approve-a'] : 0)+ |
|
526 | + (!empty($logCounts['review-approve-i']) ? $logCounts['review-approve-i'] : 0)+ |
|
527 | 527 | (!empty($logCounts['review-approve-ia']) ? $logCounts['review-approve-ia'] : 0); |
528 | 528 | return $total; |
529 | 529 | } |
@@ -605,14 +605,14 @@ discard block |
||
605 | 605 | if (!isset($out['totals'][$ns])) { |
606 | 606 | $out['totals'][$ns] = []; |
607 | 607 | } |
608 | - $out['totals'][$ns][$total['year'] . $total['month']] = $total['count']; |
|
608 | + $out['totals'][$ns][$total['year'].$total['month']] = $total['count']; |
|
609 | 609 | } |
610 | 610 | // Fill in the blanks (where no edits were made in a given month for a namespace). |
611 | 611 | for ($y = $out['min_year']; $y <= $out['max_year']; $y++) { |
612 | 612 | for ($m = 1; $m <= 12; $m++) { |
613 | 613 | foreach ($out['totals'] as $nsId => &$total) { |
614 | - if (!isset($total[$y . $m])) { |
|
615 | - $total[$y . $m] = 0; |
|
614 | + if (!isset($total[$y.$m])) { |
|
615 | + $total[$y.$m] = 0; |
|
616 | 616 | } |
617 | 617 | } |
618 | 618 | } |
@@ -630,8 +630,8 @@ discard block |
||
630 | 630 | // Get counts. |
631 | 631 | $editCounts = $this->globalEditCounts(); |
632 | 632 | // Sort. |
633 | - uasort($editCounts, function ($a, $b) { |
|
634 | - return $b['total'] - $a['total']; |
|
633 | + uasort($editCounts, function($a, $b) { |
|
634 | + return $b['total']-$a['total']; |
|
635 | 635 | }); |
636 | 636 | // Truncate, and return. |
637 | 637 | return array_slice($editCounts, 0, $numProjects); |
@@ -687,7 +687,7 @@ discard block |
||
687 | 687 | foreach ($revisions as &$revision) { |
688 | 688 | $nsName = $otherProject->getNamespaces()[$revision['page_namespace']]; |
689 | 689 | $page = $otherProject->getRepository() |
690 | - ->getPage($otherProject, $nsName . ':' . $revision['page_title']); |
|
690 | + ->getPage($otherProject, $nsName.':'.$revision['page_title']); |
|
691 | 691 | $edit = new Edit($page, $revision); |
692 | 692 | |
693 | 693 | // If we've already got enough, only check for those newer than the current oldest. |
@@ -49,7 +49,7 @@ |
||
49 | 49 | |
50 | 50 | /** |
51 | 51 | * Get all functions provided by this extension. |
52 | - * @return array |
|
52 | + * @return \Twig_SimpleFilter[] |
|
53 | 53 | */ |
54 | 54 | public function getFilters() |
55 | 55 | { |
@@ -5,8 +5,6 @@ |
||
5 | 5 | |
6 | 6 | namespace AppBundle\Twig; |
7 | 7 | |
8 | -use Twig_SimpleFunction; |
|
9 | - |
|
10 | 8 | /** |
11 | 9 | * Twig extension filters and functions for MediaWiki project links. |
12 | 10 | */ |
@@ -30,7 +30,7 @@ discard block |
||
30 | 30 | */ |
31 | 31 | public function intuitionMessage($message = "", $vars = []) |
32 | 32 | { |
33 | - return $this->getIntuition()->msg($message, [ "domain" => "xtools", "variables" => $vars ]); |
|
33 | + return $this->getIntuition()->msg($message, ["domain" => "xtools", "variables" => $vars]); |
|
34 | 34 | } |
35 | 35 | |
36 | 36 | /*********************************** FUNCTIONS ***********************************/ |
@@ -41,7 +41,7 @@ discard block |
||
41 | 41 | */ |
42 | 42 | public function getFunctions() |
43 | 43 | { |
44 | - $options = [ 'is_safe' => [ 'html']]; |
|
44 | + $options = ['is_safe' => ['html']]; |
|
45 | 45 | return []; |
46 | 46 | } |
47 | 47 | |
@@ -54,8 +54,8 @@ discard block |
||
54 | 54 | public function getFilters() |
55 | 55 | { |
56 | 56 | return [ |
57 | - new \Twig_SimpleFilter('diff_format', [ $this, 'diffFormat' ], [ 'is_safe' => [ 'html' ] ]), |
|
58 | - new \Twig_SimpleFilter('wikify_comment', [ $this, 'wikifyComment' ], [ 'is_safe' => [ 'html' ] ]), |
|
57 | + new \Twig_SimpleFilter('diff_format', [$this, 'diffFormat'], ['is_safe' => ['html']]), |
|
58 | + new \Twig_SimpleFilter('wikify_comment', [$this, 'wikifyComment'], ['is_safe' => ['html']]), |
|
59 | 59 | ]; |
60 | 60 | } |
61 | 61 | |
@@ -94,7 +94,7 @@ discard block |
||
94 | 94 | if ($isSection) { |
95 | 95 | $sectionTitle = $sectionMatch[1][0]; |
96 | 96 | $sectionTitleLink = str_replace(' ', '_', $sectionTitle); |
97 | - $sectionWikitext = "<a target='_blank' href='$projectUrl/wiki/$title#$sectionTitleLink'>→</a>" . |
|
97 | + $sectionWikitext = "<a target='_blank' href='$projectUrl/wiki/$title#$sectionTitleLink'>→</a>". |
|
98 | 98 | "<em class='text-muted'>$sectionTitle:</em> "; |
99 | 99 | $wikitext = str_replace($sectionMatch[0][0], $sectionWikitext, $wikitext); |
100 | 100 | } |
@@ -255,7 +255,7 @@ |
||
255 | 255 | * Adapted from https://github.com/MusikAnimal/pageviews |
256 | 256 | * @param array $params Associative array of params to pass to API |
257 | 257 | * @param string $project Project to query, e.g. en.wikipedia.org |
258 | - * @param string|func $dataKey The key for the main chunk of data, in the query hash |
|
258 | + * @param string $dataKey The key for the main chunk of data, in the query hash |
|
259 | 259 | * (e.g. 'categorymembers' for API:Categorymembers). |
260 | 260 | * If this is a function it is given the response data, |
261 | 261 | * and expected to return the data we want to concatentate. |
@@ -65,7 +65,7 @@ discard block |
||
65 | 65 | public function groups($project, $username) |
66 | 66 | { |
67 | 67 | $this->setUp($project); |
68 | - $params = [ "list"=>"users", "ususers"=>$username, "usprop"=>"groups" ]; |
|
68 | + $params = ["list"=>"users", "ususers"=>$username, "usprop"=>"groups"]; |
|
69 | 69 | $query = new SimpleRequest('query', $params); |
70 | 70 | $result = []; |
71 | 71 | |
@@ -91,7 +91,7 @@ discard block |
||
91 | 91 | public function globalGroups($project, $username) |
92 | 92 | { |
93 | 93 | $this->setUp($project); |
94 | - $params = [ "meta"=>"globaluserinfo", "guiuser"=>$username, "guiprop"=>"groups" ]; |
|
94 | + $params = ["meta"=>"globaluserinfo", "guiuser"=>$username, "guiprop"=>"groups"]; |
|
95 | 95 | $query = new SimpleRequest('query', $params); |
96 | 96 | $result = []; |
97 | 97 | |
@@ -141,7 +141,7 @@ discard block |
||
141 | 141 | $groups[] = "B"; |
142 | 142 | } |
143 | 143 | if (in_array("steward", $admin["groups"])) { |
144 | - $groups[] = "S" ; |
|
144 | + $groups[] = "S"; |
|
145 | 145 | } |
146 | 146 | if (in_array("checkuser", $admin["groups"])) { |
147 | 147 | $groups[] = "CU"; |
@@ -152,7 +152,7 @@ discard block |
||
152 | 152 | if (in_array("bot", $admin["groups"])) { |
153 | 153 | $groups[] = "Bot"; |
154 | 154 | } |
155 | - $result[ $admin["name"] ] = [ |
|
155 | + $result[$admin["name"]] = [ |
|
156 | 156 | "groups" => implode('/', $groups) |
157 | 157 | ]; |
158 | 158 | } |
@@ -227,7 +227,7 @@ discard block |
||
227 | 227 | $normalized = []; |
228 | 228 | if (isset($result['query']['normalized'])) { |
229 | 229 | array_map( |
230 | - function ($e) use (&$normalized) { |
|
230 | + function($e) use (&$normalized) { |
|
231 | 231 | $normalized[$e['to']] = $e['from']; |
232 | 232 | }, |
233 | 233 | $result['query']['normalized'] |
@@ -312,7 +312,7 @@ discard block |
||
312 | 312 | $query = FluentRequest::factory()->setAction('query')->setParams($requestData); |
313 | 313 | $innerPromise = $this->api->getRequestAsync($query); |
314 | 314 | |
315 | - $innerPromise->then(function ($result) use (&$data) { |
|
315 | + $innerPromise->then(function($result) use (&$data) { |
|
316 | 316 | // some failures come back as 200s, so we still resolve and let the outer function handle it |
317 | 317 | if (isset($result['error']) || !isset($result['query'])) { |
318 | 318 | return $data['promise']->resolve($data); |
@@ -17,7 +17,7 @@ |
||
17 | 17 | * Get metadata about a single page from the API. |
18 | 18 | * @param Project $project The project to which the page belongs. |
19 | 19 | * @param string $pageTitle Page title. |
20 | - * @return string[] Array with some of the following keys: pageid, title, missing, displaytitle, |
|
20 | + * @return string|null Array with some of the following keys: pageid, title, missing, displaytitle, |
|
21 | 21 | * url. |
22 | 22 | */ |
23 | 23 | public function getPageInfo(Project $project, $pageTitle) |
@@ -10,7 +10,6 @@ |
||
10 | 10 | use Xtools\Page; |
11 | 11 | use Xtools\PagesRepository; |
12 | 12 | use Xtools\Project; |
13 | -use Xtools\ProjectRepository; |
|
14 | 13 | use Xtools\User; |
15 | 14 | |
16 | 15 | /** |
@@ -168,7 +168,7 @@ discard block |
||
168 | 168 | $archiveTable = $projectData->getRepository()->getTableName($dbName, 'archive'); |
169 | 169 | |
170 | 170 | $condBegin = $start ? " AND rev_timestamp > :start " : null; |
171 | - $condEnd = $end ? " AND rev_timestamp < :end ": null; |
|
171 | + $condEnd = $end ? " AND rev_timestamp < :end " : null; |
|
172 | 172 | |
173 | 173 | $regexes = []; |
174 | 174 | |
@@ -262,8 +262,8 @@ discard block |
||
262 | 262 | } |
263 | 263 | |
264 | 264 | // Sort the array and do some simple math. |
265 | - uasort($results, function ($a, $b) { |
|
266 | - return $b['count'] - $a['count']; |
|
265 | + uasort($results, function($a, $b) { |
|
266 | + return $b['count']-$a['count']; |
|
267 | 267 | }); |
268 | 268 | |
269 | 269 | if ($total != 0) { |