@@ -3,7 +3,7 @@ discard block |
||
| 3 | 3 | * This file contains only the AutomatedEditsHelper class. |
| 4 | 4 | */ |
| 5 | 5 | |
| 6 | -declare(strict_types = 1); |
|
| 6 | +declare(strict_types=1); |
|
| 7 | 7 | |
| 8 | 8 | namespace AppBundle\Helper; |
| 9 | 9 | |
@@ -85,8 +85,8 @@ discard block |
||
| 85 | 85 | } |
| 86 | 86 | |
| 87 | 87 | $session = $this->container->get('session'); |
| 88 | - $uri = 'https://meta.wikimedia.org/w/index.php?action=raw&ctype=application/json&title=' . |
|
| 89 | - 'MediaWiki:XTools-AutoEdits.json' . ($useSandbox ? '/sandbox' : ''); |
|
| 88 | + $uri = 'https://meta.wikimedia.org/w/index.php?action=raw&ctype=application/json&title='. |
|
| 89 | + 'MediaWiki:XTools-AutoEdits.json'.($useSandbox ? '/sandbox' : ''); |
|
| 90 | 90 | |
| 91 | 91 | if ($useSandbox && $session->get('logged_in_user')) { |
| 92 | 92 | // Request via OAuth to get around server-side caching. |
@@ -149,7 +149,7 @@ discard block |
||
| 149 | 149 | |
| 150 | 150 | // Once last walk through for some tidying up and validation. |
| 151 | 151 | $invalid = []; |
| 152 | - array_walk($this->tools[$projectDomain], function (&$data, $tool) use (&$invalid): void { |
|
| 152 | + array_walk($this->tools[$projectDomain], function(&$data, $tool) use (&$invalid): void { |
|
| 153 | 153 | // Populate the 'label' with the tool name, if a label doesn't already exist. |
| 154 | 154 | $data['label'] = $data['label'] ?? $tool; |
| 155 | 155 | |
@@ -233,14 +233,14 @@ discard block |
||
| 233 | 233 | |
| 234 | 234 | $revertEntries = array_filter( |
| 235 | 235 | $this->getTools($project), |
| 236 | - function ($tool) { |
|
| 236 | + function($tool) { |
|
| 237 | 237 | return isset($tool['revert']) && isset($tool['regex']); |
| 238 | 238 | } |
| 239 | 239 | ); |
| 240 | 240 | |
| 241 | 241 | // If 'revert' is set to `true`, then use 'regex' as the regular expression, |
| 242 | 242 | // otherwise 'revert' is assumed to be the regex string. |
| 243 | - $this->revertTools[$projectDomain] = array_map(function ($revertTool) { |
|
| 243 | + $this->revertTools[$projectDomain] = array_map(function($revertTool) { |
|
| 244 | 244 | return [ |
| 245 | 245 | 'link' => $revertTool['link'], |
| 246 | 246 | 'regex' => true === $revertTool['revert'] ? $revertTool['regex'] : $revertTool['revert'], |
@@ -1,5 +1,5 @@ discard block |
||
| 1 | 1 | <?php |
| 2 | -declare(strict_types = 1); |
|
| 2 | +declare(strict_types=1); |
|
| 3 | 3 | |
| 4 | 4 | use Symfony\Component\ErrorHandler\Debug; |
| 5 | 5 | use Symfony\Component\HttpFoundation\Request; |
@@ -13,7 +13,7 @@ discard block |
||
| 13 | 13 | // Feel free to remove this, extend it, or make something more sophisticated. |
| 14 | 14 | if (isset($_SERVER['HTTP_CLIENT_IP']) |
| 15 | 15 | || isset($_SERVER['HTTP_X_FORWARDED_FOR']) |
| 16 | - || !( in_array(@$_SERVER['REMOTE_ADDR'], [ '127.0.0.1', 'fe80::1', '::1' ]) || 'cli-server' === php_sapi_name() ) |
|
| 16 | + || !(in_array(@$_SERVER['REMOTE_ADDR'], ['127.0.0.1', 'fe80::1', '::1']) || 'cli-server' === php_sapi_name()) |
|
| 17 | 17 | ) { |
| 18 | 18 | header('HTTP/1.0 403 Forbidden'); |
| 19 | 19 | exit('You are not allowed to access this file. Check '.basename(__FILE__).' for more information.'); |
@@ -3,7 +3,7 @@ discard block |
||
| 3 | 3 | * This file contains only the AutoEditsRepository class. |
| 4 | 4 | */ |
| 5 | 5 | |
| 6 | -declare(strict_types = 1); |
|
| 6 | +declare(strict_types=1); |
|
| 7 | 7 | |
| 8 | 8 | namespace AppBundle\Repository; |
| 9 | 9 | |
@@ -53,7 +53,7 @@ discard block |
||
| 53 | 53 | |
| 54 | 54 | if ('all' !== $namespace) { |
| 55 | 55 | // Limit by namespace. |
| 56 | - return array_filter($this->aeTools, function (array $tool) use ($namespace) { |
|
| 56 | + return array_filter($this->aeTools, function(array $tool) use ($namespace) { |
|
| 57 | 57 | return empty($tool['namespaces']) || |
| 58 | 58 | in_array((int)$namespace, $tool['namespaces']) || |
| 59 | 59 | ( |
@@ -134,7 +134,7 @@ discard block |
||
| 134 | 134 | $tagJoin = "LEFT OUTER JOIN $tagTable ON ct_rev_id = rev_id"; |
| 135 | 135 | $condTools[] = "ct_tag_id IN ($tagIds)"; |
| 136 | 136 | } |
| 137 | - $condTool = 'AND (' . implode(' OR ', $condTools) . ')'; |
|
| 137 | + $condTool = 'AND ('.implode(' OR ', $condTools).')'; |
|
| 138 | 138 | |
| 139 | 139 | $sql = "SELECT COUNT(DISTINCT(rev_id)) |
| 140 | 140 | FROM $revisionTable |
@@ -349,8 +349,8 @@ discard block |
||
| 349 | 349 | } |
| 350 | 350 | |
| 351 | 351 | // Sort the array by count |
| 352 | - uasort($results, function ($a, $b) { |
|
| 353 | - return $b['count'] - $a['count']; |
|
| 352 | + uasort($results, function($a, $b) { |
|
| 353 | + return $b['count']-$a['count']; |
|
| 354 | 354 | }); |
| 355 | 355 | |
| 356 | 356 | // Cache and return. |
@@ -526,7 +526,7 @@ discard block |
||
| 526 | 526 | if (isset($values['tags'])) { |
| 527 | 527 | $tags = array_merge( |
| 528 | 528 | $tags, |
| 529 | - array_map(function ($tag) use ($conn) { |
|
| 529 | + array_map(function($tag) use ($conn) { |
|
| 530 | 530 | return $conn->quote($tag, PDO::PARAM_STR); |
| 531 | 531 | }, $values['tags']) |
| 532 | 532 | ); |
@@ -562,7 +562,7 @@ discard block |
||
| 562 | 562 | |
| 563 | 563 | if ($tagExcludes && 1 === count($tagIds)) { |
| 564 | 564 | // Get tag IDs, filtering out those for which no ID exists (meaning there is no local tag for that tool). |
| 565 | - $excludesList = implode(',', array_filter(array_map(function ($tagName) use ($project) { |
|
| 565 | + $excludesList = implode(',', array_filter(array_map(function($tagName) use ($project) { |
|
| 566 | 566 | return $this->getTags($project)[$tagName] ?? null; |
| 567 | 567 | }, $tagExcludes))); |
| 568 | 568 | |
@@ -3,7 +3,7 @@ discard block |
||
| 3 | 3 | * This file contains only the UserRightsRepository class. |
| 4 | 4 | */ |
| 5 | 5 | |
| 6 | -declare(strict_types = 1); |
|
| 6 | +declare(strict_types=1); |
|
| 7 | 7 | |
| 8 | 8 | namespace AppBundle\Repository; |
| 9 | 9 | |
@@ -117,7 +117,7 @@ discard block |
||
| 117 | 117 | return $this->cache->getItem($cacheKey)->get(); |
| 118 | 118 | } |
| 119 | 119 | |
| 120 | - $rightsPaths = array_map(function ($right) { |
|
| 120 | + $rightsPaths = array_map(function($right) { |
|
| 121 | 121 | return "Group-$right-member"; |
| 122 | 122 | }, $this->getRawRightsNames($project)); |
| 123 | 123 | |
@@ -260,7 +260,7 @@ discard block |
||
| 260 | 260 | FROM $revisionTable |
| 261 | 261 | WHERE rev_actor = :actorId |
| 262 | 262 | AND rev_timestamp >= $offset |
| 263 | - LIMIT 1 OFFSET ".($edits - 1); |
|
| 263 | + LIMIT 1 OFFSET ".($edits-1); |
|
| 264 | 264 | |
| 265 | 265 | $ret = $this->executeProjectsQuery($project, $sql, [ |
| 266 | 266 | 'actorId' => $user->getActorId($project), |
@@ -3,7 +3,7 @@ discard block |
||
| 3 | 3 | * This file contains only the Project class. |
| 4 | 4 | */ |
| 5 | 5 | |
| 6 | -declare(strict_types = 1); |
|
| 6 | +declare(strict_types=1); |
|
| 7 | 7 | |
| 8 | 8 | namespace AppBundle\Model; |
| 9 | 9 | |
@@ -145,7 +145,7 @@ discard block |
||
| 145 | 145 | */ |
| 146 | 146 | public function getUrl(bool $withTrailingSlash = true): string |
| 147 | 147 | { |
| 148 | - return rtrim($this->getBasicInfo()['url'], '/') . ($withTrailingSlash ? '/' : ''); |
|
| 148 | + return rtrim($this->getBasicInfo()['url'], '/').($withTrailingSlash ? '/' : ''); |
|
| 149 | 149 | } |
| 150 | 150 | |
| 151 | 151 | /** |
@@ -181,7 +181,7 @@ discard block |
||
| 181 | 181 | public function getScript(): string |
| 182 | 182 | { |
| 183 | 183 | $metadata = $this->getMetadata(); |
| 184 | - return $metadata['general']['script'] ?? $this->getScriptPath() . '/index.php'; |
|
| 184 | + return $metadata['general']['script'] ?? $this->getScriptPath().'/index.php'; |
|
| 185 | 185 | } |
| 186 | 186 | |
| 187 | 187 | /** |
@@ -190,7 +190,7 @@ discard block |
||
| 190 | 190 | */ |
| 191 | 191 | public function getApiUrl(): string |
| 192 | 192 | { |
| 193 | - return rtrim($this->getUrl(), '/') . $this->getRepository()->getApiPath(); |
|
| 193 | + return rtrim($this->getUrl(), '/').$this->getRepository()->getApiPath(); |
|
| 194 | 194 | } |
| 195 | 195 | |
| 196 | 196 | /** |
@@ -265,7 +265,7 @@ discard block |
||
| 265 | 265 | */ |
| 266 | 266 | public function userOptInPage(User $user): string |
| 267 | 267 | { |
| 268 | - return 'User:' . $user->getUsername() . '/EditCounterOptIn.js'; |
|
| 268 | + return 'User:'.$user->getUsername().'/EditCounterOptIn.js'; |
|
| 269 | 269 | } |
| 270 | 270 | |
| 271 | 271 | /** |
@@ -299,7 +299,7 @@ discard block |
||
| 299 | 299 | } |
| 300 | 300 | |
| 301 | 301 | // 4. Lastly, see if they've opted in globally on the default project or Meta. |
| 302 | - $globalPageName = $user->getUsername() . '/EditCounterGlobalOptIn.js'; |
|
| 302 | + $globalPageName = $user->getUsername().'/EditCounterGlobalOptIn.js'; |
|
| 303 | 303 | $globalProject = $this->getRepository()->getGlobalProject(); |
| 304 | 304 | if ($globalProject instanceof Project) { |
| 305 | 305 | $globalExists = $globalProject->getRepository() |
@@ -3,7 +3,7 @@ discard block |
||
| 3 | 3 | * This file contains only the CategoryEdits class. |
| 4 | 4 | */ |
| 5 | 5 | |
| 6 | -declare(strict_types = 1); |
|
| 6 | +declare(strict_types=1); |
|
| 7 | 7 | |
| 8 | 8 | namespace AppBundle\Model; |
| 9 | 9 | |
@@ -46,7 +46,7 @@ discard block |
||
| 46 | 46 | ) { |
| 47 | 47 | $this->project = $project; |
| 48 | 48 | $this->user = $user; |
| 49 | - $this->categories = array_map(function ($category) { |
|
| 49 | + $this->categories = array_map(function($category) { |
|
| 50 | 50 | return str_replace(' ', '_', $category); |
| 51 | 51 | }, $categories); |
| 52 | 52 | $this->start = $start; |
@@ -78,7 +78,7 @@ discard block |
||
| 78 | 78 | */ |
| 79 | 79 | public function getCategoriesNormalized(): array |
| 80 | 80 | { |
| 81 | - return array_map(function ($category) { |
|
| 81 | + return array_map(function($category) { |
|
| 82 | 82 | return str_replace('_', ' ', $category); |
| 83 | 83 | }, $this->categories); |
| 84 | 84 | } |
@@ -3,7 +3,7 @@ discard block |
||
| 3 | 3 | * This file contains only the Pages class. |
| 4 | 4 | */ |
| 5 | 5 | |
| 6 | -declare(strict_types = 1); |
|
| 6 | +declare(strict_types=1); |
|
| 7 | 7 | |
| 8 | 8 | namespace AppBundle\Model; |
| 9 | 9 | |
@@ -126,7 +126,7 @@ discard block |
||
| 126 | 126 | } |
| 127 | 127 | |
| 128 | 128 | $numResults = count($this->getResults()[$this->getNamespace()]); |
| 129 | - $timestamp = new DateTime($this->getResults()[$this->getNamespace()][$numResults - 1]['rev_timestamp']); |
|
| 129 | + $timestamp = new DateTime($this->getResults()[$this->getNamespace()][$numResults-1]['rev_timestamp']); |
|
| 130 | 130 | return $timestamp->format('Y-m-d\TH:i:s'); |
| 131 | 131 | } |
| 132 | 132 | |
@@ -3,7 +3,7 @@ discard block |
||
| 3 | 3 | * This file contains only the AdminStats class. |
| 4 | 4 | */ |
| 5 | 5 | |
| 6 | -declare(strict_types = 1); |
|
| 6 | +declare(strict_types=1); |
|
| 7 | 7 | |
| 8 | 8 | namespace AppBundle\Model; |
| 9 | 9 | |
@@ -96,7 +96,7 @@ discard block |
||
| 96 | 96 | $stats = $this->groupStatsByUsername($stats); |
| 97 | 97 | |
| 98 | 98 | // Resort, as for some reason the SQL doesn't do this properly. |
| 99 | - uasort($stats, function ($a, $b) { |
|
| 99 | + uasort($stats, function($a, $b) { |
|
| 100 | 100 | if ($a['total'] === $b['total']) { |
| 101 | 101 | return 0; |
| 102 | 102 | } |
@@ -127,7 +127,7 @@ discard block |
||
| 127 | 127 | $this->usersAndGroups = $this->project->getUsersInGroups($groupUserGroups['local'], $groupUserGroups['global']); |
| 128 | 128 | |
| 129 | 129 | // Populate $this->usersInGroup with users who are in the relevant user group for $this->group. |
| 130 | - $this->usersInGroup = array_keys(array_filter($this->usersAndGroups, function ($groups) { |
|
| 130 | + $this->usersInGroup = array_keys(array_filter($this->usersAndGroups, function($groups) { |
|
| 131 | 131 | return in_array($this->getRelevantUserGroup(), $groups); |
| 132 | 132 | })); |
| 133 | 133 | |
@@ -150,7 +150,7 @@ discard block |
||
| 150 | 150 | } |
| 151 | 151 | |
| 152 | 152 | if ($wikiPath) { |
| 153 | - $out = array_map(function ($url) { |
|
| 153 | + $out = array_map(function($url) { |
|
| 154 | 154 | return str_replace('.svg.png', '.svg', preg_replace('/.*\/18px-/', '', $url)); |
| 155 | 155 | }, $out); |
| 156 | 156 | } |
@@ -164,7 +164,7 @@ discard block |
||
| 164 | 164 | */ |
| 165 | 165 | public function numDays(): int |
| 166 | 166 | { |
| 167 | - return (int)(($this->end - $this->start) / 60 / 60 / 24) + 1; |
|
| 167 | + return (int)(($this->end-$this->start) / 60 / 60 / 24)+1; |
|
| 168 | 168 | } |
| 169 | 169 | |
| 170 | 170 | /** |
@@ -254,6 +254,6 @@ discard block |
||
| 254 | 254 | */ |
| 255 | 255 | public function getNumWithActionsNotInGroup(): int |
| 256 | 256 | { |
| 257 | - return count($this->adminStats) - $this->numWithActions; |
|
| 257 | + return count($this->adminStats)-$this->numWithActions; |
|
| 258 | 258 | } |
| 259 | 259 | } |
@@ -267,7 +267,7 @@ discard block |
||
| 267 | 267 | 'total_editcount' => $this->autoEdits->getEditCount(), |
| 268 | 268 | 'automated_editcount' => $this->autoEdits->getAutomatedCount(), |
| 269 | 269 | ]; |
| 270 | - $ret['nonautomated_editcount'] = $ret['total_editcount'] - $ret['automated_editcount']; |
|
| 270 | + $ret['nonautomated_editcount'] = $ret['total_editcount']-$ret['automated_editcount']; |
|
| 271 | 271 | |
| 272 | 272 | if (isset($this->params['tools'])) { |
| 273 | 273 | $tools = $this->autoEdits->getToolCounts(); |
@@ -355,7 +355,7 @@ discard block |
||
| 355 | 355 | private function addFullPageTitlesAndContinue(string $type, array $out, array $data): array |
| 356 | 356 | { |
| 357 | 357 | // Add full_page_title (in addition to the existing page_title and page_namespace keys). |
| 358 | - $out[$type] = array_map(function ($rev) { |
|
| 358 | + $out[$type] = array_map(function($rev) { |
|
| 359 | 359 | return array_merge([ |
| 360 | 360 | 'full_page_title' => $this->getPageFromNsAndTitle( |
| 361 | 361 | (int)$rev['page_namespace'], |