Passed
Branch master (63074b)
by Dispositif
05:34 queued 02:37
created
src/Domain/Publisher/SeoSanitizer.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -54,7 +54,7 @@  discard block
 block discarded – undo
54 54
         }
55 55
 
56 56
         // rebuild title but keep only the first 2 segments
57
-        return trim($titleSegments[0]) . self::REBUILD_SEPARATOR . trim($titleSegments[1]);
57
+        return trim($titleSegments[0]).self::REBUILD_SEPARATOR.trim($titleSegments[1]);
58 58
     }
59 59
 
60 60
     /**
@@ -102,7 +102,7 @@  discard block
 block discarded – undo
102 102
 
103 103
         return array_values(array_filter(
104 104
             $seoSegments,
105
-            function ($segment) use ($prettyDomainName, $siteName) {
105
+            function($segment) use ($prettyDomainName, $siteName) {
106 106
                 $strippedSegment = mb_strtolower(TextUtil::stripPunctuation(TextUtil::stripAccents($segment)));
107 107
                 $strippedSegment = str_replace(['.', '-', ' '], '', $strippedSegment);
108 108
 
Please login to merge, or discard this patch.
src/Application/WikiBotConfig.php 1 patch
Spacing   +7 added lines, -8 removed lines patch added patch discarded remove patch
@@ -33,7 +33,7 @@  discard block
 block discarded – undo
33 33
 {
34 34
     public const VERSION = '1.0';
35 35
 
36
-    public const WATCHPAGE_FILENAME = __DIR__ . '/resources/watch_pages.json';
36
+    public const WATCHPAGE_FILENAME = __DIR__.'/resources/watch_pages.json';
37 37
 
38 38
     public const EXIT_ON_CHECK_WATCHPAGE = false;
39 39
 
@@ -156,9 +156,9 @@  discard block
 block discarded – undo
156 156
      */
157 157
     public function minutesSinceLastEdit(string $title): int
158 158
     {
159
-        $time = $this->getTimestamp($title);  // 2011-09-02T16:31:13Z
159
+        $time = $this->getTimestamp($title); // 2011-09-02T16:31:13Z
160 160
 
161
-        return (int)round((time() - strtotime($time)) / 60);
161
+        return (int) round((time() - strtotime($time)) / 60);
162 162
     }
163 163
 
164 164
     /**
@@ -169,9 +169,8 @@  discard block
 block discarded – undo
169 169
     {
170 170
         $text = WikiTextUtil::removeHTMLcomments($text);
171 171
         $botName = $botName ?: self::getBotName();
172
-        $denyReg = (empty($botName)) ? '' :
173
-            '|\{\{bots ?\| ?(optout|deny)\=[^\}]*' . preg_quote($botName, '#') . '[^\}]*\}\}';
174
-        return preg_match('#({{nobots}}|{{bots ?\| ?(optout|deny) ?= ?all ?}}' . $denyReg . ')#i', $text) > 0;
172
+        $denyReg = (empty($botName)) ? '' : '|\{\{bots ?\| ?(optout|deny)\=[^\}]*'.preg_quote($botName, '#').'[^\}]*\}\}';
173
+        return preg_match('#({{nobots}}|{{bots ?\| ?(optout|deny) ?= ?all ?}}'.$denyReg.')#i', $text) > 0;
175 174
     }
176 175
 
177 176
     /**
@@ -227,14 +226,14 @@  discard block
 block discarded – undo
227 226
 
228 227
     protected function getBotTalkPageTitle(): string
229 228
     {
230
-        return self::TALK_PAGE_PREFIX . $this::getBotName();
229
+        return self::TALK_PAGE_PREFIX.$this::getBotName();
231 230
     }
232 231
 
233 232
     protected function sendSMSandFunnyTalk(string $lastEditor, ?bool $botTalk): void
234 233
     {
235 234
         if (class_exists(SMS::class)) {
236 235
             try {
237
-                new SMS($this::getBotName() . ' {stop} by ' . $lastEditor);
236
+                new SMS($this::getBotName().' {stop} by '.$lastEditor);
238 237
             } catch (Exception $smsException) {
239 238
                 unset($smsException);
240 239
             }
Please login to merge, or discard this patch.
src/Application/Traits/WorkerCLITrait.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -23,7 +23,7 @@
 block discarded – undo
23 23
         if ($this->modeAuto) {
24 24
             return true;
25 25
         }
26
-        $ask = readline(Color::LIGHT_MAGENTA . '*** '.$question.' [y/n/auto]' . Color::NORMAL);
26
+        $ask = readline(Color::LIGHT_MAGENTA.'*** '.$question.' [y/n/auto]'.Color::NORMAL);
27 27
         if ('auto' === $ask) {
28 28
             $this->modeAuto = true;
29 29
 
Please login to merge, or discard this patch.
src/Application/Traits/WorkerAnalyzedTitlesTrait.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -24,7 +24,7 @@  discard block
 block discarded – undo
24 24
                 FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES
25 25
             );
26 26
         } catch (Throwable $e) {
27
-            $this->log->critical("Can't parse ARTICLE_ANALYZED_FILENAME : " . $e->getMessage());
27
+            $this->log->critical("Can't parse ARTICLE_ANALYZED_FILENAME : ".$e->getMessage());
28 28
             $analyzed = [];
29 29
         }
30 30
         $this->pastAnalyzed = ($analyzed !== false) ? $analyzed : [];
@@ -34,7 +34,7 @@  discard block
 block discarded – undo
34 34
     {
35 35
         if (!$this->checkAlreadyAnalyzed($title)) {
36 36
             $this->pastAnalyzed[] = $title; // skip doublon title
37
-            @file_put_contents(static::ARTICLE_ANALYZED_FILENAME, $title . PHP_EOL, FILE_APPEND);
37
+            @file_put_contents(static::ARTICLE_ANALYZED_FILENAME, $title.PHP_EOL, FILE_APPEND);
38 38
         }
39 39
     }
40 40
 
Please login to merge, or discard this patch.
src/Application/Traits/BotWorkerTrait.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -52,7 +52,7 @@
 block discarded – undo
52 52
     protected function printTitle(string $title): void
53 53
     {
54 54
         echo "---------------------\n";
55
-        echo date('d-m-Y H:i:s') . ' ' . Color::BG_CYAN . "  $title " . Color::NORMAL . "\n";
55
+        echo date('d-m-Y H:i:s').' '.Color::BG_CYAN."  $title ".Color::NORMAL."\n";
56 56
     }
57 57
 
58 58
     protected function canProcessTitleArticle(string $title, ?string $text): bool
Please login to merge, or discard this patch.
src/Application/AbstractBotTaskWorker.php 1 patch
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -32,7 +32,7 @@  discard block
 block discarded – undo
32 32
     public const SLEEP_AFTER_EDITION = 60;
33 33
     public const MINUTES_DELAY_AFTER_LAST_HUMAN_EDIT = 15;
34 34
     public const CHECK_EDIT_CONFLICT = true;
35
-    public const ARTICLE_ANALYZED_FILENAME = __DIR__ . '/resources/article_edited.txt';
35
+    public const ARTICLE_ANALYZED_FILENAME = __DIR__.'/resources/article_edited.txt';
36 36
     public const SKIP_LASTEDIT_BY_BOT = true;
37 37
     public const SKIP_NOT_IN_MAIN_WIKISPACE = true;
38 38
     public const SKIP_ADQ = true;
@@ -86,7 +86,7 @@  discard block
 block discarded – undo
86 86
         $this->initializePastAnalyzedTitles();
87 87
 
88 88
         // @throw exception on "Invalid CSRF token"
89
-        $this->run();//todo delete that and use (Worker)->run($duration) or process management
89
+        $this->run(); //todo delete that and use (Worker)->run($duration) or process management
90 90
     }
91 91
 
92 92
     protected function setUpInConstructor(): void
@@ -101,7 +101,7 @@  discard block
 block discarded – undo
101 101
      */
102 102
     final public function run(): void
103 103
     {
104
-        echo date('d-m-Y H:i:s') . " *** NEW WORKER ***\n";
104
+        echo date('d-m-Y H:i:s')." *** NEW WORKER ***\n";
105 105
         foreach ($this->getTitles() as $title) {
106 106
             try {
107 107
                 $this->titleProcess($title);
@@ -202,14 +202,14 @@  discard block
 block discarded – undo
202 202
 
203 203
             // If not a critical edition error
204 204
             // example : Wiki Conflict : Page has been edited after getText()
205
-            echo "Error : " . $e->getMessage() . "\n";
205
+            echo "Error : ".$e->getMessage()."\n";
206 206
             $this->log->warning($e->getMessage());
207 207
 
208 208
             return;
209 209
         }
210 210
 
211 211
         dump($result);
212
-        echo "Sleep " . static::SLEEP_AFTER_EDITION . "\n";
212
+        echo "Sleep ".static::SLEEP_AFTER_EDITION."\n";
213 213
         sleep(static::SLEEP_AFTER_EDITION);
214 214
     }
215 215
 
Please login to merge, or discard this patch.
src/Application/TalkBotConfig.php 1 patch
Spacing   +10 added lines, -10 removed lines patch added patch discarded remove patch
@@ -23,8 +23,8 @@  discard block
 block discarded – undo
23 23
 class TalkBotConfig extends WikiBotConfig
24 24
 {
25 25
     public const BOT_TALK_SUMMARY = 'Réponse artificielle';
26
-    public const BOT_TALK_FILE = __DIR__ . '/resources/phrases_zizibot.txt';
27
-    public const TALKCONFIG_FILENAME = __DIR__ . '/resources/botTalk_config.json';
26
+    public const BOT_TALK_FILE = __DIR__.'/resources/phrases_zizibot.txt';
27
+    public const TALKCONFIG_FILENAME = __DIR__.'/resources/botTalk_config.json';
28 28
 
29 29
     /**
30 30
      * Add a freaky response in the bottom of the talk page.
@@ -37,7 +37,7 @@  discard block
 block discarded – undo
37 37
         // ugly dependency
38 38
         $wiki = ServiceFactory::getMediawikiFactory();
39 39
         if (!$pageTitle) {
40
-            $pageTitle = 'Discussion utilisateur:' . $this::getBotName();
40
+            $pageTitle = 'Discussion utilisateur:'.$this::getBotName();
41 41
         }
42 42
         $page = new WikiPageAction($wiki, $pageTitle);
43 43
         $last = $page->page->getRevisions()->getLatest();
@@ -57,13 +57,13 @@  discard block
 block discarded – undo
57 57
 
58 58
         // No response if time < 24h since last bot owner response
59 59
         if ($last->getUser() == self::getBotOwner()) {
60
-            $talkConfig['owner_last_time'] = (int)strtotime($last->getTimestamp());
60
+            $talkConfig['owner_last_time'] = (int) strtotime($last->getTimestamp());
61 61
             file_put_contents(self::TALKCONFIG_FILENAME, json_encode($talkConfig, JSON_THROW_ON_ERROR));
62 62
 
63 63
             return false;
64 64
         }
65 65
         // No response if time < 24h since last owner response
66
-        if (isset($talkConfig['owner_last_time']) && (int)$talkConfig['owner_last_time'] > (time() - 60 * 60 * 48)) {
66
+        if (isset($talkConfig['owner_last_time']) && (int) $talkConfig['owner_last_time'] > (time() - 60 * 60 * 48)) {
67 67
             echo "No response if time < 24h after last owner response\n";
68 68
 
69 69
             return false;
@@ -79,7 +79,7 @@  discard block
 block discarded – undo
79 79
         $editInfo = new EditInfo(static::BOT_TALK_SUMMARY);
80 80
         $success = $page->addToBottomOfThePage($addText, $editInfo);
81 81
 
82
-        return (bool)$success;
82
+        return (bool) $success;
83 83
     }
84 84
 
85 85
     /**
@@ -110,13 +110,13 @@  discard block
 block discarded – undo
110 110
         $lines = explode("\n", trim($text));
111 111
         $lastLine = $lines[count($lines) - 1];
112 112
         if (preg_match('#^(:*).+#', $lastLine, $matches) && !empty($matches[1])) {
113
-            $nextIdent = $matches[1] . ':';
113
+            $nextIdent = $matches[1].':';
114 114
             if (empty($author)) {
115 115
                 return $nextIdent;
116 116
             }
117 117
             // search author signature link to check that he wrote on the page bottom
118 118
             if (preg_match(
119
-                '#\[\[(?:User|Utilisateur|Utilisatrice):' . preg_quote($author, '#') . '[|\]]#i',
119
+                '#\[\[(?:User|Utilisateur|Utilisatrice):'.preg_quote($author, '#').'[|\]]#i',
120 120
                 $matches[0]
121 121
             )
122 122
             ) {
@@ -137,7 +137,7 @@  discard block
 block discarded – undo
137 137
             throw new ConfigException('Pas de phrases disponibles pour TalkBot');
138 138
         }
139 139
 
140
-        return (string)trim($sentences[array_rand($sentences)]);
140
+        return (string) trim($sentences[array_rand($sentences)]);
141 141
     }
142 142
 
143 143
     /**
@@ -147,7 +147,7 @@  discard block
 block discarded – undo
147 147
     public function botContribs(): string
148 148
     {
149 149
         $url
150
-            = 'https://fr.wikipedia.org/w/api.php?action=query&list=usercontribs&ucuser=' . $this::getBotName()
150
+            = 'https://fr.wikipedia.org/w/api.php?action=query&list=usercontribs&ucuser='.$this::getBotName()
151 151
             . '&ucnamespace=0&uclimit=40&ucprop=title|timestamp|comment&format=json';
152 152
 
153 153
         return file_get_contents($url);
Please login to merge, or discard this patch.
src/Application/WikiPageAction.php 1 patch
Spacing   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -63,7 +63,7 @@  discard block
 block discarded – undo
63 63
             $this->page = $wiki->newPageGetter()->getFromTitle($title);
64 64
             $this->ns = $this->page->getPageIdentifier()->getTitle()->getNs();
65 65
         } catch (Throwable $e) {
66
-            throw new Exception('Erreur construct WikiPageAction ' . $e->getMessage() . $e->getFile() . $e->getLine(), $e->getCode(), $e);
66
+            throw new Exception('Erreur construct WikiPageAction '.$e->getMessage().$e->getFile().$e->getLine(), $e->getCode(), $e);
67 67
         }
68 68
     }
69 69
 
@@ -131,7 +131,7 @@  discard block
 block discarded – undo
131 131
     public function getRedirect(): ?string
132 132
     {
133 133
         if ($this->getText() && preg_match('/^#REDIRECT(?:ION)? ?\[\[([^]]+)]]/i', $this->getText(), $matches)) {
134
-            return (string)trim($matches[1]);
134
+            return (string) trim($matches[1]);
135 135
         }
136 136
 
137 137
         return null;
@@ -222,7 +222,7 @@  discard block
 block discarded – undo
222 222
             throw new Exception('That page does not exist');
223 223
         }
224 224
         $oldText = $this->getText();
225
-        $newText = $oldText . "\n" . $addText;
225
+        $newText = $oldText."\n".$addText;
226 226
 
227 227
         return $this->editPage($newText, $editInfo);
228 228
     }
@@ -239,7 +239,7 @@  discard block
 block discarded – undo
239 239
             throw new Exception('That page does not exist');
240 240
         }
241 241
         $oldText = $this->getText();
242
-        $newText = $addText . $oldText;
242
+        $newText = $addText.$oldText;
243 243
 
244 244
         return $this->editPage($newText, $editInfo);
245 245
     }
@@ -254,7 +254,7 @@  discard block
 block discarded – undo
254 254
         // "{{en}} {{zh}} {{ouvrage...}}"
255 255
         // todo test U
256 256
         if (preg_match_all(
257
-            '#(?<langTemp>{{[a-z][a-z]}} ?{{[a-z][a-z]}}) ?' . preg_quote($tplOrigin, '#') . '#i',
257
+            '#(?<langTemp>{{[a-z][a-z]}} ?{{[a-z][a-z]}}) ?'.preg_quote($tplOrigin, '#').'#i',
258 258
             $text,
259 259
             $matches
260 260
         )
@@ -268,7 +268,7 @@  discard block
 block discarded – undo
268 268
         // hack // todo: autres patterns {{en}} ?
269 269
         // OK : {{en}} \n {{ouvrage}}
270 270
         if (preg_match_all(
271
-                "#(?<langTemp>{{(?<lang>[a-z][a-z])}} *\n?)?" . preg_quote($tplOrigin, '#') . '#i',
271
+                "#(?<langTemp>{{(?<lang>[a-z][a-z])}} *\n?)?".preg_quote($tplOrigin, '#').'#i',
272 272
                 $text,
273 273
                 $matches
274 274
             ) > 0
@@ -283,7 +283,7 @@  discard block
 block discarded – undo
283 283
                 // example : {{en}} {{template|lang=ru}}
284 284
                 if (!empty($lang) && self::SKIP_LANG_INDICATOR !== $lang
285 285
                     && preg_match('#langue *=#', $tplReplace)
286
-                    && !preg_match('#langue *= ?' . $lang . '#i', $tplReplace)
286
+                    && !preg_match('#langue *= ?'.$lang.'#i', $tplReplace)
287 287
                     && !preg_match('#\| ?langue *= ?\n?\|#', $tplReplace)
288 288
                 ) {
289 289
                     echo sprintf(
@@ -306,7 +306,7 @@  discard block
 block discarded – undo
306 306
                 // FIX dirty : {{en}} mais langue= avec value non définie sur new template...
307 307
                 if (!empty($lang) && preg_match('#\| ?(langue *=) ?\n? ?\|#', $tplReplace, $matchLangue) > 0) {
308 308
                     $previousTpl = $tplReplace;
309
-                    $tplReplace = str_replace($matchLangue[1], 'langue=' . $lang, $tplReplace);
309
+                    $tplReplace = str_replace($matchLangue[1], 'langue='.$lang, $tplReplace);
310 310
                     //dump('origin', $tplOrigin);
311 311
                     $text = str_replace($previousTpl, $tplReplace, $text);
312 312
                 }
@@ -321,7 +321,7 @@  discard block
 block discarded – undo
321 321
                 // replace {template} and {{lang}} {template}
322 322
                 $text = str_replace($mention, $tplReplace, $text);
323 323
                 $text = str_replace(
324
-                    $matches['langTemp'][$num] . $tplReplace,
324
+                    $matches['langTemp'][$num].$tplReplace,
325 325
                     $tplReplace,
326 326
                     $text
327 327
                 ); // si 1er replace global sans
Please login to merge, or discard this patch.
src/Infrastructure/InternetDomainParser.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -21,7 +21,7 @@  discard block
 block discarded – undo
21 21
  */
22 22
 class InternetDomainParser implements InternetDomainParserInterface
23 23
 {
24
-    private const PATH_CACHE_PUBLIC_SUFFIX_LIST = __DIR__ . '/resources/public_suffix_list.dat';
24
+    private const PATH_CACHE_PUBLIC_SUFFIX_LIST = __DIR__.'/resources/public_suffix_list.dat';
25 25
 
26 26
     /** @var Rules */
27 27
     private $rules;
@@ -55,7 +55,7 @@  discard block
 block discarded – undo
55 55
     public static function extractSubdomainString(string $httpURL): string
56 56
     {
57 57
         if (!ExternHttpClient::isHttpURL($httpURL)) {
58
-            throw new Exception('string is not an URL ' . $httpURL);
58
+            throw new Exception('string is not an URL '.$httpURL);
59 59
         }
60 60
 
61 61
         return parse_url($httpURL, PHP_URL_HOST);
Please login to merge, or discard this patch.