@@ -54,7 +54,7 @@ discard block |
||
54 | 54 | ) |
55 | 55 | { |
56 | 56 | if (!HttpUtil::isHttpURL($url)) { |
57 | - throw new Exception('string is not an URL ' . $url); |
|
57 | + throw new Exception('string is not an URL '.$url); |
|
58 | 58 | } |
59 | 59 | $this->url = $url; |
60 | 60 | } |
@@ -94,7 +94,7 @@ discard block |
||
94 | 94 | '//script[@type="application/ld+json"]' |
95 | 95 | ); |
96 | 96 | } catch (Exception $e) { |
97 | - $this->log->warning('TagParser->xpathResults NULL ' . $this->url); |
|
97 | + $this->log->warning('TagParser->xpathResults NULL '.$this->url); |
|
98 | 98 | |
99 | 99 | return []; |
100 | 100 | } |
@@ -176,7 +176,7 @@ discard block |
||
176 | 176 | { |
177 | 177 | try { |
178 | 178 | if (!HttpUtil::isHttpURL($this->url)) { |
179 | - throw new Exception('string is not an URL ' . $this->url); |
|
179 | + throw new Exception('string is not an URL '.$this->url); |
|
180 | 180 | } |
181 | 181 | if (!$this->domainParser instanceof InternetDomainParserInterface) { |
182 | 182 | $this->log->notice('InternetDomainParser is not set'); |
@@ -187,7 +187,7 @@ discard block |
||
187 | 187 | return $this->domainParser->getRegistrableDomainFromURL($this->url); |
188 | 188 | } catch (Exception $e) { |
189 | 189 | if ($this->log !== null) { |
190 | - $this->log->warning('InternetDomainParser->getRegistrableDomainFromURL NULL ' . $this->url); |
|
190 | + $this->log->warning('InternetDomainParser->getRegistrableDomainFromURL NULL '.$this->url); |
|
191 | 191 | } |
192 | 192 | throw new Exception('InternetDomainParser->getRegistrableDomainFromURL NULL', $e->getCode(), $e); |
193 | 193 | } |
@@ -60,13 +60,13 @@ discard block |
||
60 | 60 | } |
61 | 61 | |
62 | 62 | $refsData = $this->extractAllGoogleRefs($text); |
63 | - $this->logger->debug('GoogleTransformer: refs found: ' . count($refsData)); |
|
63 | + $this->logger->debug('GoogleTransformer: refs found: '.count($refsData)); |
|
64 | 64 | if ($refsData !== []) { |
65 | 65 | $text = $this->processRef($text, $refsData); |
66 | 66 | } |
67 | 67 | |
68 | 68 | $links = $this->extractGoogleExternalBullets($text); |
69 | - $this->logger->debug('GoogleTransformer: links found: ' . count($links)); |
|
69 | + $this->logger->debug('GoogleTransformer: links found: '.count($links)); |
|
70 | 70 | if ($links !== []) { |
71 | 71 | $text = $this->processExternLinks($text, $links); |
72 | 72 | } |
@@ -87,7 +87,7 @@ discard block |
||
87 | 87 | // <ref>...</ref> or {{ref|...}} |
88 | 88 | // GoogleLivresTemplate::GOOGLEBOOK_URL_PATTERN |
89 | 89 | if (preg_match_all( |
90 | - '#(?:<ref[^>]*>|{{ref\|) ?(' . GoogleBooksUtil::GOOGLEBOOKS_START_URL_PATTERN . '[^>\]} \n]+) ?(?:</ref>|}})#i', |
|
90 | + '#(?:<ref[^>]*>|{{ref\|) ?('.GoogleBooksUtil::GOOGLEBOOKS_START_URL_PATTERN.'[^>\]} \n]+) ?(?:</ref>|}})#i', |
|
91 | 91 | $text, |
92 | 92 | $matches, |
93 | 93 | PREG_SET_ORDER |
@@ -102,7 +102,7 @@ discard block |
||
102 | 102 | protected function processRef(string $text, array $refsData): string |
103 | 103 | { |
104 | 104 | foreach ($refsData as $ref) { |
105 | - $this->logger->info('Process GoogleBooks ref: ' . $ref[1]); |
|
105 | + $this->logger->info('Process GoogleBooks ref: '.$ref[1]); |
|
106 | 106 | if ($this->quota->isQuotaReached()) { |
107 | 107 | $this->logger->debug('Quota Google atteint'); |
108 | 108 | throw new DomainException('Quota Google atteint'); |
@@ -111,19 +111,19 @@ discard block |
||
111 | 111 | $citation = $this->convertGBurl2OuvrageCitation(WikiTextUtil::stripFinalPoint($ref[1])); |
112 | 112 | sleep(2); |
113 | 113 | } catch (Throwable $e) { |
114 | - $this->logger->debug("Exception " . $e->getMessage()); |
|
114 | + $this->logger->debug("Exception ".$e->getMessage()); |
|
115 | 115 | continue; |
116 | 116 | } |
117 | 117 | |
118 | 118 | // ajout point final pour référence |
119 | 119 | $citation .= '.'; |
120 | 120 | |
121 | - $newRef = str_replace($ref[1], $citation, (string)$ref[0]); |
|
121 | + $newRef = str_replace($ref[1], $citation, (string) $ref[0]); |
|
122 | 122 | $this->logger->info($newRef); |
123 | 123 | |
124 | 124 | $text = str_replace($ref[0], $newRef, $text); |
125 | 125 | |
126 | - $this->logger->notice("sleep " . self::SLEEP_GOOGLE_API_INTERVAL); |
|
126 | + $this->logger->notice("sleep ".self::SLEEP_GOOGLE_API_INTERVAL); |
|
127 | 127 | sleep(self::SLEEP_GOOGLE_API_INTERVAL); |
128 | 128 | } |
129 | 129 | |
@@ -177,13 +177,13 @@ discard block |
||
177 | 177 | // Google page => 'passage' |
178 | 178 | if (!empty($gooDat['pg'])) { |
179 | 179 | // Exclusion de page=1, page=2 (vue par défaut sur Google Book) |
180 | - if (preg_match('#(?:PA|PT)(\d+)$#', (string)$gooDat['pg'], $matches) && (int)$matches[1] >= 3) { |
|
180 | + if (preg_match('#(?:PA|PT)(\d+)$#', (string) $gooDat['pg'], $matches) && (int) $matches[1] >= 3) { |
|
181 | 181 | $page = $matches[1]; |
182 | 182 | } |
183 | 183 | // conversion chiffres Romain pour PR |
184 | 184 | // Exclusion de page=1, page=2 (vue par défaut sur Google Book) |
185 | - if (preg_match('#PR(\d+)$#', (string)$gooDat['pg'], $matches) && (int)$matches[1] >= 3) { |
|
186 | - $page = NumberUtil::arab2roman((int)$matches[1], true); |
|
185 | + if (preg_match('#PR(\d+)$#', (string) $gooDat['pg'], $matches) && (int) $matches[1] >= 3) { |
|
186 | + $page = NumberUtil::arab2roman((int) $matches[1], true); |
|
187 | 187 | } |
188 | 188 | |
189 | 189 | if (!empty($page)) { |
@@ -244,7 +244,7 @@ discard block |
||
244 | 244 | { |
245 | 245 | // match "* https://books.google.fr/..." |
246 | 246 | if (preg_match_all( |
247 | - '#^\* *(' . GoogleBooksUtil::GOOGLEBOOKS_START_URL_PATTERN . '[^ <{\]}\n\r]+) *$#im', |
|
247 | + '#^\* *('.GoogleBooksUtil::GOOGLEBOOKS_START_URL_PATTERN.'[^ <{\]}\n\r]+) *$#im', |
|
248 | 248 | $text, |
249 | 249 | $matches, |
250 | 250 | PREG_SET_ORDER |
@@ -261,10 +261,10 @@ discard block |
||
261 | 261 | * @return string|string[] |
262 | 262 | * @throws Throwable |
263 | 263 | */ |
264 | - protected function processExternLinks(string $text, array $links): string|array |
|
264 | + protected function processExternLinks(string $text, array $links): string | array |
|
265 | 265 | { |
266 | 266 | foreach ($links as $pattern) { |
267 | - $this->logger->info('Process links: ' . $pattern[1]); |
|
267 | + $this->logger->info('Process links: '.$pattern[1]); |
|
268 | 268 | if ($this->quota->isQuotaReached()) { |
269 | 269 | $this->logger->debug('Quota Google atteint'); |
270 | 270 | throw new DomainException('Quota Google atteint'); |
@@ -272,19 +272,19 @@ discard block |
||
272 | 272 | try { |
273 | 273 | $citation = $this->convertGBurl2OuvrageCitation(WikiTextUtil::stripFinalPoint($pattern[1])); |
274 | 274 | } catch (Exception $e) { |
275 | - $this->logger->debug("Exception " . $e->getMessage()); |
|
275 | + $this->logger->debug("Exception ".$e->getMessage()); |
|
276 | 276 | continue; |
277 | 277 | } |
278 | 278 | |
279 | 279 | // todo : ajout point final pour référence ??? |
280 | 280 | $citation .= '.'; |
281 | 281 | |
282 | - $newRef = str_replace($pattern[1], $citation, (string)$pattern[0]); |
|
282 | + $newRef = str_replace($pattern[1], $citation, (string) $pattern[0]); |
|
283 | 283 | $this->logger->info($newRef); |
284 | 284 | |
285 | 285 | $text = str_replace($pattern[0], $newRef, $text); |
286 | 286 | |
287 | - $this->logger->info("Sleep " . self::SLEEP_GOOGLE_API_INTERVAL); |
|
287 | + $this->logger->info("Sleep ".self::SLEEP_GOOGLE_API_INTERVAL); |
|
288 | 288 | sleep(self::SLEEP_GOOGLE_API_INTERVAL); |
289 | 289 | } |
290 | 290 |
@@ -38,7 +38,7 @@ discard block |
||
38 | 38 | public const SRQIPROFILE_DEFAULT = 'engine_autoselect'; |
39 | 39 | |
40 | 40 | protected const BASE_URL = 'https://fr.wikipedia.org/w/api.php'; // todo move config |
41 | - protected const CONTINUE_OFFSET_FILENAME = __DIR__ . '/../../resources/cirrusSearch-{HASH}.txt'; // todo move config |
|
41 | + protected const CONTINUE_OFFSET_FILENAME = __DIR__.'/../../resources/cirrusSearch-{HASH}.txt'; // todo move config |
|
42 | 42 | |
43 | 43 | protected array $requestParams = []; |
44 | 44 | protected array $defaultParams |
@@ -72,7 +72,7 @@ discard block |
||
72 | 72 | if ($this->options[self::OPTION_CONTINUE] ?? false) { |
73 | 73 | $continueOffset = 0; |
74 | 74 | if (!empty($arrayResp['continue']['sroffset'])) { |
75 | - $continueOffset = (int)$arrayResp['continue']['sroffset']; |
|
75 | + $continueOffset = (int) $arrayResp['continue']['sroffset']; |
|
76 | 76 | } |
77 | 77 | $this->saveOffsetInFile($continueOffset); |
78 | 78 | } |
@@ -85,7 +85,7 @@ discard block |
||
85 | 85 | $titles = []; |
86 | 86 | foreach ($results as $res) { |
87 | 87 | if (!empty($res['title'])) { |
88 | - $titles[] = trim((string)$res['title']); // trim utile ? |
|
88 | + $titles[] = trim((string) $res['title']); // trim utile ? |
|
89 | 89 | } |
90 | 90 | } |
91 | 91 | |
@@ -115,7 +115,7 @@ discard block |
||
115 | 115 | */ |
116 | 116 | if ($response->getStatusCode() !== 200) { |
117 | 117 | throw new Exception( |
118 | - 'CirrusSearch error : ' . $response->getStatusCode() . ' ' . $response->getReasonPhrase() |
|
118 | + 'CirrusSearch error : '.$response->getStatusCode().' '.$response->getReasonPhrase() |
|
119 | 119 | ); |
120 | 120 | } |
121 | 121 | $json = $response->getBody()->getContents(); |
@@ -123,7 +123,7 @@ discard block |
||
123 | 123 | return []; |
124 | 124 | } |
125 | 125 | try { |
126 | - $array = json_decode((string)$json, true, 512, JSON_THROW_ON_ERROR); |
|
126 | + $array = json_decode((string) $json, true, 512, JSON_THROW_ON_ERROR); |
|
127 | 127 | } catch (Throwable $e) { |
128 | 128 | throw new Exception($e->getMessage(), $e->getCode(), $e); |
129 | 129 | } |
@@ -145,7 +145,7 @@ discard block |
||
145 | 145 | // RFC3986 : space => %20 |
146 | 146 | $query = http_build_query($this->requestParams, 'bla', '&', PHP_QUERY_RFC3986); |
147 | 147 | |
148 | - return self::BASE_URL . '?' . $query; |
|
148 | + return self::BASE_URL.'?'.$query; |
|
149 | 149 | } |
150 | 150 | |
151 | 151 | protected function getOffsetFromFile(array $allParams): int |
@@ -156,7 +156,7 @@ discard block |
||
156 | 156 | return 0; |
157 | 157 | } |
158 | 158 | |
159 | - return (int)trim(file_get_contents($file)); |
|
159 | + return (int) trim(file_get_contents($file)); |
|
160 | 160 | } |
161 | 161 | |
162 | 162 | protected function hashSearchParams(array $params): string |
@@ -32,12 +32,12 @@ discard block |
||
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 = false; |
39 | 39 | public const THROTTLE_DELAY_AFTER_EACH_TITLE = 1; //secs |
40 | - protected const GIT_COMMIT_HASH_PATH = __DIR__ . '/resources/commithash.txt'; |
|
40 | + protected const GIT_COMMIT_HASH_PATH = __DIR__.'/resources/commithash.txt'; |
|
41 | 41 | |
42 | 42 | /** |
43 | 43 | * @var PageListInterface |
@@ -93,7 +93,7 @@ discard block |
||
93 | 93 | $this->initializePastAnalyzedTitles(); |
94 | 94 | |
95 | 95 | // @throw exception on "Invalid CSRF token" |
96 | - $this->run();//todo delete that and use (Worker)->run($duration) or process management |
|
96 | + $this->run(); //todo delete that and use (Worker)->run($duration) or process management |
|
97 | 97 | } |
98 | 98 | |
99 | 99 | /** |
@@ -104,13 +104,13 @@ discard block |
||
104 | 104 | final public function run(): void |
105 | 105 | { |
106 | 106 | $this->log->notice('*** '.date('Y-m-d H:i') |
107 | - .' New BotTaskWorker: ' . $this->defaultTaskname, ['stats' => 'bottaskworker.instance']); |
|
107 | + .' New BotTaskWorker: '.$this->defaultTaskname, ['stats' => 'bottaskworker.instance']); |
|
108 | 108 | $this->log->notice(sprintf( |
109 | 109 | '*** Bot: %s - commit: %s', |
110 | 110 | $this->bot::getBotName(), |
111 | 111 | $this->bot->getCurrentGitCommitHash() ?? '??' |
112 | 112 | )); |
113 | - $this->log->notice('*** Stats: ' . $this->log->stats::class); |
|
113 | + $this->log->notice('*** Stats: '.$this->log->stats::class); |
|
114 | 114 | |
115 | 115 | foreach ($this->getTitles() as $title) { |
116 | 116 | try { |
@@ -225,7 +225,7 @@ discard block |
||
225 | 225 | } |
226 | 226 | |
227 | 227 | $this->log->notice($result ? '>> OK' : '>> NOCHANGE'); |
228 | - $this->log->debug("Sleep " . static::SLEEP_AFTER_EDITION); |
|
228 | + $this->log->debug("Sleep ".static::SLEEP_AFTER_EDITION); |
|
229 | 229 | sleep(static::SLEEP_AFTER_EDITION); |
230 | 230 | } |
231 | 231 |
@@ -63,13 +63,13 @@ |
||
63 | 63 | $list = new PageList([trim($options['page'])]); |
64 | 64 | |
65 | 65 | // delete Title from edited.txt |
66 | - $file = __DIR__ . '/../resources/article_externRef_edited.txt'; |
|
66 | + $file = __DIR__.'/../resources/article_externRef_edited.txt'; |
|
67 | 67 | $text = file_get_contents($file); |
68 | - $newText = str_replace(trim($argv[1]) . "\n", '', $text); |
|
68 | + $newText = str_replace(trim($argv[1])."\n", '', $text); |
|
69 | 69 | if (!empty($text) && $text !== $newText) { |
70 | 70 | @file_put_contents($file, $newText); |
71 | 71 | } |
72 | - $botConfig->setTaskName(' |
@@ -28,7 +28,7 @@ discard block |
||
28 | 28 | public const SLEEP_AFTER_EDITION = 5; // sec |
29 | 29 | public const MINUTES_DELAY_AFTER_LAST_HUMAN_EDIT = 10; // minutes |
30 | 30 | public const CHECK_EDIT_CONFLICT = true; |
31 | - public const ARTICLE_ANALYZED_FILENAME = __DIR__ . '/../resources/article_externRef_edited.txt'; |
|
31 | + public const ARTICLE_ANALYZED_FILENAME = __DIR__.'/../resources/article_externRef_edited.txt'; |
|
32 | 32 | public const SKIP_ADQ = false; |
33 | 33 | public const SKIP_LASTEDIT_BY_BOT = false; |
34 | 34 | public const CITATION_NUMBER_ON_FIRE = 15; |
@@ -77,7 +77,7 @@ discard block |
||
77 | 77 | $result = $this->transformer->process($refContent, $this->summary); |
78 | 78 | } catch (Throwable $e) { |
79 | 79 | $this->log->critical( |
80 | - 'Error patate34 ' . $e->getMessage() . " " . $e->getFile() . ":" . $e->getLine(), |
|
80 | + 'Error patate34 '.$e->getMessage()." ".$e->getFile().":".$e->getLine(), |
|
81 | 81 | ['stats' => 'externref.exception.patate34'] |
82 | 82 | ); |
83 | 83 | // TODO : parse $e->message -> variable process, taskName, botflag... |
@@ -144,11 +144,11 @@ discard block |
||
144 | 144 | $suffix = ''; |
145 | 145 | if (isset($this->summary->memo['count article'])) { |
146 | 146 | $this->log->stats->increment('externref.count.article'); |
147 | - $suffix .= ' ' . $this->summary->memo['count article'] . 'x {article}'; |
|
147 | + $suffix .= ' '.$this->summary->memo['count article'].'x {article}'; |
|
148 | 148 | } |
149 | 149 | if (isset($this->summary->memo['count lien web'])) { |
150 | 150 | $this->log->stats->increment('externref.count.lienweb'); |
151 | - $suffix .= ' ' . $this->summary->memo['count lien web'] . 'x {lien web}'; |
|
151 | + $suffix .= ' '.$this->summary->memo['count lien web'].'x {lien web}'; |
|
152 | 152 | } |
153 | 153 | if (isset($this->summary->memo['presse'])) { |
154 | 154 | $this->log->stats->increment('externref.count.presse'); |
@@ -162,20 +162,20 @@ discard block |
||
162 | 162 | $this->log->stats->increment('externref.count.lienbrisé'); |
163 | 163 | $suffix .= ' ⚠️️️lien brisé'; //⚠️ |
@@ -47,7 +47,7 @@ discard block |
||
47 | 47 | final public const DELAY_BOTFLAG_SECONDS = 120; |
48 | 48 | final public const DELAY_NO_BOTFLAG_SECONDS = 120; |
49 | 49 | final public const DELAY_MINUTES_AFTER_HUMAN_EDIT = 10; |
50 | - final public const ERROR_MSG_TEMPLATE = __DIR__ . '/templates/message_errors.wiki'; |
|
50 | + final public const ERROR_MSG_TEMPLATE = __DIR__.'/templates/message_errors.wiki'; |
|
51 | 51 | |
52 | 52 | /** |
53 | 53 | * @var PageWorkStatus |
@@ -92,7 +92,7 @@ discard block |
||
92 | 92 | { |
93 | 93 | while (true) { |
94 | 94 | echo "\n-------------------------------------\n\n"; |
95 | - echo date("Y-m-d H:i:s") . " "; |
|
95 | + echo date("Y-m-d H:i:s")." "; |
|
96 | 96 | $this->log->info($this->memory->getMemory(true)); |
97 | 97 | $this->pageProcess(); |
98 | 98 | sleep(2); // précaution boucle infinie |
@@ -124,7 +124,7 @@ discard block |
||
124 | 124 | try { |
125 | 125 | $this->wikiPageAction = ServiceFactory::wikiPageAction($this->pageWorkStatus->getTitle()); // , true ? |
126 | 126 | } catch (Exception) { |
127 | - $this->log->warning("*** WikiPageAction error : " . $this->pageWorkStatus->getTitle() . " \n"); |
|
127 | + $this->log->warning("*** WikiPageAction error : ".$this->pageWorkStatus->getTitle()." \n"); |
|
128 | 128 | sleep(20); |
129 | 129 | |
130 | 130 | return false; |
@@ -160,7 +160,7 @@ discard block |
||
160 | 160 | |
161 | 161 | protected function printTitle(string $title): void |
162 | 162 | { |
163 | - echo Color::BG_CYAN . $title . Color::NORMAL . " \n"; |
|
163 | + echo Color::BG_CYAN.$title.Color::NORMAL." \n"; |
|
164 | 164 | } |
165 | 165 | |
166 | 166 | protected function checkArticleLabels($title): void |
@@ -233,10 +233,10 @@ discard block |
||
233 | 233 | |
234 | 234 | protected function printDebug(array $data) |
235 | 235 | { |
236 | - $this->log->debug('origin: ' . $data['raw']); |
|
237 | - $this->log->debug('completed: ' . $data['opti']); |
|
238 | - $this->log->debug('modifs: ' . $data['modifs']); |
|
239 | - $this->log->debug('version: ' . $data['version']); |
|
236 | + $this->log->debug('origin: '.$data['raw']); |
|
237 | + $this->log->debug('completed: '.$data['opti']); |
|
238 | + $this->log->debug('modifs: '.$data['modifs']); |
|
239 | + $this->log->debug('version: '.$data['version']); |
|
240 | 240 | } |
241 | 241 | |
242 | 242 | protected function editPage(): bool |
@@ -255,7 +255,7 @@ discard block |
||
255 | 255 | $this->log->alert("*** Invalid CSRF token \n"); |
256 | 256 | throw new Exception('Invalid CSRF token', $e->getCode(), $e); |
257 | 257 | } else { |
258 | - $this->log->warning('Exception in editPage() ' . $e->getMessage()); |
|
258 | + $this->log->warning('Exception in editPage() '.$e->getMessage()); |
|
259 | 259 | sleep(10); |
260 | 260 | |
261 | 261 | return false; |
@@ -277,16 +277,16 @@ discard block |
||
277 | 277 | $this->sendOuvrageErrorsOnTalkPage($pageOuvrageCollection, $this->log); |
278 | 278 | } |
279 | 279 | } catch (Throwable $e) { |
280 | - $this->log->warning('Exception in editPage() ' . $e->getMessage()); |
|
280 | + $this->log->warning('Exception in editPage() '.$e->getMessage()); |
|
281 | 281 | unset($e); |
282 | 282 | } |
283 | 283 | |
284 | 284 | if (!$this->pageWorkStatus->botFlag) { |
285 | - $this->log->debug("sleep " . self::DELAY_NO_BOTFLAG_SECONDS); |
|
285 | + $this->log->debug("sleep ".self::DELAY_NO_BOTFLAG_SECONDS); |
|
286 | 286 | sleep(self::DELAY_NO_BOTFLAG_SECONDS); |
287 | 287 | } |
288 | 288 | if ($this->pageWorkStatus->botFlag) { |
289 | - $this->log->debug("sleep " . self::DELAY_BOTFLAG_SECONDS); |
|
289 | + $this->log->debug("sleep ".self::DELAY_BOTFLAG_SECONDS); |
|
290 | 290 | sleep(self::DELAY_BOTFLAG_SECONDS); |
291 | 291 | } |
292 | 292 | } |