@@ -54,7 +54,7 @@ discard block |
||
54 | 54 | $this->page = $wiki->newPageGetter()->getFromTitle($title); |
55 | 55 | $this->ns = $this->page->getPageIdentifier()->getTitle()->getNs(); |
56 | 56 | } catch (Throwable $e) { |
57 | - throw new Exception('Erreur construct WikiPageAction ' . $e->getMessage() . $e->getFile() . $e->getLine(), $e->getCode(), $e); |
|
57 | + throw new Exception('Erreur construct WikiPageAction '.$e->getMessage().$e->getFile().$e->getLine(), $e->getCode(), $e); |
|
58 | 58 | } |
59 | 59 | } |
60 | 60 | |
@@ -73,7 +73,7 @@ discard block |
||
73 | 73 | // "{{en}} {{zh}} {{ouvrage...}}" |
74 | 74 | // todo test U |
75 | 75 | if (preg_match_all( |
76 | - '#(?<langTemp>{{[a-z][a-z]}} ?{{[a-z][a-z]}}) ?' . preg_quote($tplOrigin, '#') . '#i', |
|
76 | + '#(?<langTemp>{{[a-z][a-z]}} ?{{[a-z][a-z]}}) ?'.preg_quote($tplOrigin, '#').'#i', |
|
77 | 77 | $text, |
78 | 78 | $matches |
79 | 79 | ) |
@@ -87,7 +87,7 @@ discard block |
||
87 | 87 | // hack // todo: autres patterns {{en}} ? |
88 | 88 | // OK : {{en}} \n {{ouvrage}} |
89 | 89 | if (preg_match_all( |
90 | - "#(?<langTemp>{{(?<lang>[a-z][a-z])}} *\n?)?" . preg_quote($tplOrigin, '#') . '#i', |
|
90 | + "#(?<langTemp>{{(?<lang>[a-z][a-z])}} *\n?)?".preg_quote($tplOrigin, '#').'#i', |
|
91 | 91 | $text, |
92 | 92 | $matches |
93 | 93 | ) > 0 |
@@ -102,7 +102,7 @@ discard block |
||
102 | 102 | // example : {{en}} {{template|lang=ru}} |
103 | 103 | if (!empty($lang) && self::SKIP_LANG_INDICATOR !== $lang |
104 | 104 | && preg_match('#langue *=#', $tplReplace) |
105 | - && !preg_match('#langue *= ?' . $lang . '#i', $tplReplace) |
|
105 | + && !preg_match('#langue *= ?'.$lang.'#i', $tplReplace) |
|
106 | 106 | && !preg_match('#\| ?langue *= ?\n?\|#', $tplReplace) |
107 | 107 | ) { |
108 | 108 | echo sprintf( |
@@ -125,7 +125,7 @@ discard block |
||
125 | 125 | // FIX dirty : {{en}} mais langue= avec value non définie sur new template... |
126 | 126 | if (!empty($lang) && preg_match('#\| ?(langue *=) ?\n? ?\|#', $tplReplace, $matchLangue) > 0) { |
127 | 127 | $previousTpl = $tplReplace; |
128 | - $tplReplace = str_replace($matchLangue[1], 'langue=' . $lang, $tplReplace); |
|
128 | + $tplReplace = str_replace($matchLangue[1], 'langue='.$lang, $tplReplace); |
|
129 | 129 | //dump('origin', $tplOrigin); |
130 | 130 | $text = str_replace($previousTpl, $tplReplace, $text); |
131 | 131 | } |
@@ -140,7 +140,7 @@ discard block |
||
140 | 140 | // replace {template} and {{lang}} {template} |
141 | 141 | $text = str_replace($mention, $tplReplace, $text); |
142 | 142 | $text = str_replace( |
143 | - $matches['langTemp'][$num] . $tplReplace, |
|
143 | + $matches['langTemp'][$num].$tplReplace, |
|
144 | 144 | $tplReplace, |
145 | 145 | $text |
146 | 146 | ); // si 1er replace global sans |
@@ -210,7 +210,7 @@ discard block |
||
210 | 210 | public function getRedirect(): ?string |
211 | 211 | { |
212 | 212 | if ($this->getText() && preg_match('/^#REDIRECT(?:ION)? ?\[\[([^]]+)]]/i', $this->getText(), $matches)) { |
213 | - return (string)trim($matches[1]); |
|
213 | + return (string) trim($matches[1]); |
|
214 | 214 | } |
215 | 215 | |
216 | 216 | return null; |
@@ -259,7 +259,7 @@ discard block |
||
259 | 259 | throw new Exception('That page does not exist'); |
260 | 260 | } |
261 | 261 | $oldText = $this->getText(); |
262 | - $newText = $oldText . "\n" . $addText; |
|
262 | + $newText = $oldText."\n".$addText; |
|
263 | 263 | |
264 | 264 | return $this->editPage($newText, $editInfo); |
265 | 265 | } |
@@ -315,7 +315,7 @@ discard block |
||
315 | 315 | throw new Exception('That page does not exist'); |
316 | 316 | } |
317 | 317 | $oldText = $this->getText(); |
318 | - $newText = $addText . $oldText; |
|
318 | + $newText = $addText.$oldText; |
|
319 | 319 | |
320 | 320 | return $this->editPage($newText, $editInfo); |
321 | 321 | } |
@@ -343,7 +343,7 @@ discard block |
||
343 | 343 | foreach ($refs as $ref) { |
344 | 344 | if (preg_match( |
345 | 345 | '#(?<url>https?://(?:www\.)?lemonde\.fr/[^ \]]+)#i', |
346 | - (string)$ref, |
|
346 | + (string) $ref, |
|
347 | 347 | $matches |
348 | 348 | ) > 0 |
349 | 349 | ) { |
@@ -16,7 +16,7 @@ discard block |
||
16 | 16 | use Mediawiki\Api\MediawikiFactory; |
17 | 17 | use Normalizer; |
18 | 18 | |
19 | -include __DIR__ . '/../myBootstrap.php'; |
|
19 | +include __DIR__.'/../myBootstrap.php'; |
|
20 | 20 | |
21 | 21 | $process = new Monitor(); |
22 | 22 | $process->run(); |
@@ -97,7 +97,7 @@ discard block |
||
97 | 97 | [ |
98 | 98 | 'page' => $title ?? '', |
99 | 99 | 'verify' => date("Y-m-d H:i:s"), |
100 | - 'altered' => (int)$stat, |
|
100 | + 'altered' => (int) $stat, |
|
101 | 101 | ] |
102 | 102 | ); |
103 | 103 | } |
@@ -147,6 +147,6 @@ discard block |
||
147 | 147 | |
148 | 148 | } |
149 | 149 | |
150 | - return (int)round(($count - $found) / count($data) * 100); |
|
150 | + return (int) round(($count - $found) / count($data) * 100); |
|
151 | 151 | } |
152 | 152 | } |
@@ -36,14 +36,14 @@ discard block |
||
36 | 36 | if ( |
37 | 37 | !empty($robots) |
38 | 38 | && ( |
39 | - stripos((string)$robots, 'noindex') !== false |
|
40 | - || stripos((string)$robots, 'none') !== false |
|
39 | + stripos((string) $robots, 'noindex') !== false |
|
40 | + || stripos((string) $robots, 'none') !== false |
|
41 | 41 | ) |
42 | 42 | ) { |
43 | - $this->log->notice('robots NOINDEX : ' . $this->url); |
|
43 | + $this->log->notice('robots NOINDEX : '.$this->url); |
|
44 | 44 | |
45 | 45 | if (empty($this->pageData['meta']['prettyDomainName'])) { |
46 | - $this->log->warning('No prettyDomainName for ' . $this->url); |
|
46 | + $this->log->warning('No prettyDomainName for '.$this->url); |
|
47 | 47 | |
48 | 48 | return true; |
49 | 49 | } |
@@ -57,7 +57,7 @@ discard block |
||
57 | 57 | protected function isNoIndexDomainWhitelisted(?string $prettyDomain): bool |
58 | 58 | { |
59 | 59 | if (in_array($prettyDomain ?? '', $this->noindexWhitelist)) { |
60 | - $this->log->notice('ROBOT_NOINDEX_WHITELIST ' . $prettyDomain); |
|
60 | + $this->log->notice('ROBOT_NOINDEX_WHITELIST '.$prettyDomain); |
|
61 | 61 | |
62 | 62 | return true; |
63 | 63 | } |
@@ -37,7 +37,7 @@ discard block |
||
37 | 37 | $this->xml = $xml; |
38 | 38 | |
39 | 39 | // skip multi-records |
40 | - $nbResults = (int)$xml->xpath('//srw:numberOfRecords[1]')[0] ?? 0; |
|
40 | + $nbResults = (int) $xml->xpath('//srw:numberOfRecords[1]')[0] ?? 0; |
|
41 | 41 | if (1 !== $nbResults) { |
42 | 42 | return []; |
43 | 43 | } |
@@ -121,7 +121,7 @@ discard block |
||
121 | 121 | $res = []; |
122 | 122 | foreach ($elements as $element) { |
123 | 123 | if (isset($element) && $element instanceof SimpleXMLElement) { |
124 | - $res[] = (string)$element; |
|
124 | + $res[] = (string) $element; |
|
125 | 125 | } |
126 | 126 | } |
127 | 127 | |
@@ -185,7 +185,7 @@ discard block |
||
185 | 185 | { |
186 | 186 | $raw = $this->xpath2string('//mxc:datafield[@tag="215"]/mxc:subfield[@code="a"]'); |
187 | 187 | if (!empty($raw) && preg_match('#(\d{2,}) p\.#', $raw, $matches) > 0) { |
188 | - return (string)$matches[1]; |
|
188 | + return (string) $matches[1]; |
|
189 | 189 | } |
190 | 190 | |
191 | 191 | return null; |
@@ -35,13 +35,13 @@ discard block |
||
35 | 35 | use SummaryExternTrait, PublisherLogicTrait; |
36 | 36 | |
37 | 37 | public const HTTP_REQUEST_LOOP_DELAY = 10; |
38 | - public const SKIP_DOMAIN_FILENAME = __DIR__ . '/../resources/config_skip_domain.txt'; |
|
38 | + public const SKIP_DOMAIN_FILENAME = __DIR__.'/../resources/config_skip_domain.txt'; |
|
39 | 39 | public const REPLACE_404 = true; |
40 | 40 | public const REPLACE_410 = true; |
41 | - public const CONFIG_PRESSE = __DIR__ . '/../resources/config_presse.yaml'; |
|
42 | - public const CONFIG_NEWSPAPER_JSON = __DIR__ . '/../resources/data_newspapers.json'; |
|
43 | - public const CONFIG_SCIENTIFIC_JSON = __DIR__ . '/../resources/data_scientific_domain.json'; |
|
44 | - public const CONFIG_SCIENTIFIC_WIKI_JSON = __DIR__ . '/../resources/data_scientific_wiki.json'; |
|
41 | + public const CONFIG_PRESSE = __DIR__.'/../resources/config_presse.yaml'; |
|
42 | + public const CONFIG_NEWSPAPER_JSON = __DIR__.'/../resources/data_newspapers.json'; |
|
43 | + public const CONFIG_SCIENTIFIC_JSON = __DIR__.'/../resources/data_scientific_domain.json'; |
|
44 | + public const CONFIG_SCIENTIFIC_WIKI_JSON = __DIR__.'/../resources/data_scientific_wiki.json'; |
|
45 | 45 | |
46 | 46 | public bool $skipSiteBlacklisted = true; |
47 | 47 | public bool $skipRobotNoIndex = true; |
@@ -93,12 +93,12 @@ discard block |
||
93 | 93 | } |
94 | 94 | $this->registrableDomain = $this->urlChecker->getRegistrableDomain($url); // hack |
95 | 95 | if ($this->isSiteBlackListed()) { |
96 | - $this->log->debug('Site blacklisted : ' . $this->registrableDomain); |
|
96 | + $this->log->debug('Site blacklisted : '.$this->registrableDomain); |
|
97 | 97 | return $url; |
98 | 98 | } |
99 | 99 | |
100 | 100 | if (!$this->validateConfigWebDomain($this->registrableDomain)) { |
101 | - $this->log->debug('Domain not validate by config : ' . $this->registrableDomain); |
|
101 | + $this->log->debug('Domain not validate by config : '.$this->registrableDomain); |
|
102 | 102 | return $url; |
103 | 103 | } |
104 | 104 | |
@@ -150,7 +150,7 @@ discard block |
||
150 | 150 | protected function isSiteBlackListed(): bool |
151 | 151 | { |
152 | 152 | if ($this->skipSiteBlacklisted && in_array($this->registrableDomain, $this->skip_domain)) { |
153 | - $this->log->notice("Skip web site " . $this->registrableDomain); |
|
153 | + $this->log->notice("Skip web site ".$this->registrableDomain); |
|
154 | 154 | return true; |
155 | 155 | } |
156 | 156 | return false; |
@@ -168,7 +168,7 @@ discard block |
||
168 | 168 | $this->config[$domain] = is_array($this->config[$domain]) ? $this->config[$domain] : []; |
169 | 169 | |
170 | 170 | if ($this->config[$domain] === 'deactivated' || isset($this->config[$domain]['deactivated'])) { |
171 | - $this->log->info("Domain " . $domain . " disabled\n"); |
|
171 | + $this->log->info("Domain ".$domain." disabled\n"); |
|
172 | 172 | |
173 | 173 | return false; |
174 | 174 | } |
@@ -179,9 +179,9 @@ discard block |
||
179 | 179 | protected function logDebugConfigWebDomain(string $domain): void |
180 | 180 | { |
181 | 181 | if (!isset($this->config[$domain])) { |
182 | - $this->log->debug("Domain " . $domain . " non configuré"); |
|
182 | + $this->log->debug("Domain ".$domain." non configuré"); |
|
183 | 183 | } else { |
184 | - $this->log->debug("Domain " . $domain . " configuré"); |
|
184 | + $this->log->debug("Domain ".$domain." configuré"); |
|
185 | 185 | } |
186 | 186 | } |
187 | 187 | |
@@ -206,7 +206,7 @@ discard block |
||
206 | 206 | if ($pageData === [] |
207 | 207 | || (empty($pageData['JSON-LD']) && empty($pageData['meta'])) |
208 | 208 | ) { |
209 | - $this->log->notice('No metadata : ' . $url); |
|
209 | + $this->log->notice('No metadata : '.$url); |
|
210 | 210 | |
211 | 211 | return true; |
212 | 212 | } |
@@ -221,7 +221,7 @@ discard block |
||
221 | 221 | protected function emptyMapData(array $mapData, string $url): bool |
222 | 222 | { |
223 | 223 | if ($mapData === [] || empty($mapData['url']) || empty($mapData['titre'])) { |
224 | - $this->log->info('Mapping incomplet : ' . $url); |
|
224 | + $this->log->info('Mapping incomplet : '.$url); |
|
225 | 225 | |
226 | 226 | return true; |
227 | 227 | } |
@@ -274,7 +274,7 @@ discard block |
||
274 | 274 | |
275 | 275 | $template = WikiTemplateFactory::create($templateName); |
276 | 276 | $template->userSeparator = " |"; |
277 | - $this->summary->memo['count ' . $templateName] = 1 + ($this->summary->memo['count ' . $templateName] ?? 0); |
|
277 | + $this->summary->memo['count '.$templateName] = 1 + ($this->summary->memo['count '.$templateName] ?? 0); |
|
278 | 278 | |
279 | 279 | return $template; |
280 | 280 | } |
@@ -330,7 +330,7 @@ discard block |
||
330 | 330 | $templateOptimized = $optimizer->getOptiTemplate(); |
331 | 331 | |
332 | 332 | $serialized = $templateOptimized->serialize(true); |
333 | - $this->log->info('Serialized 444: ' . $serialized . "\n"); |
|
333 | + $this->log->info('Serialized 444: '.$serialized."\n"); |
|
334 | 334 | return $serialized; |
335 | 335 | } |
336 | 336 |
@@ -31,7 +31,7 @@ discard block |
||
31 | 31 | class WikiBotConfig |
32 | 32 | { |
33 | 33 | public const VERSION = '2.1'; |
34 | - public const WATCHPAGE_FILENAME = __DIR__ . '/resources/watch_pages.json'; |
|
34 | + public const WATCHPAGE_FILENAME = __DIR__.'/resources/watch_pages.json'; |
|
35 | 35 | public const EXIT_ON_CHECK_WATCHPAGE = false; |
36 | 36 | // do not stop if they play with {stop} on bot talk page |
37 | 37 | public const BLACKLIST_EDITOR = ['OrlodrimBot']; |
@@ -97,9 +97,8 @@ discard block |
||
97 | 97 | { |
98 | 98 | $text = WikiTextUtil::removeHTMLcomments($text); |
99 | 99 | $botName = $botName ?: self::getBotName(); |
100 | - $denyReg = (empty($botName)) ? '' : |
|
101 | - '|\{\{bots ?\| ?(optout|deny)\=[^\}]*' . preg_quote($botName, '#') . '[^\}]*\}\}'; |
|
102 | - return preg_match('#({{nobots}}|{{bots ?\| ?(optout|deny) ?= ?all ?}}' . $denyReg . ')#i', $text) > 0; |
|
100 | + $denyReg = (empty($botName)) ? '' : '|\{\{bots ?\| ?(optout|deny)\=[^\}]*'.preg_quote($botName, '#').'[^\}]*\}\}'; |
|
101 | + return preg_match('#({{nobots}}|{{bots ?\| ?(optout|deny) ?= ?all ?}}'.$denyReg.')#i', $text) > 0; |
|
103 | 102 | } |
104 | 103 | |
105 | 104 | protected static function getBotOwner() |
@@ -155,7 +154,7 @@ discard block |
||
155 | 154 | |
156 | 155 | protected function getBotTalkPageTitle(): string |
157 | 156 | { |
158 | - return self::TALK_PAGE_PREFIX . $this::getBotName(); |
|
157 | + return self::TALK_PAGE_PREFIX.$this::getBotName(); |
|
159 | 158 | } |
160 | 159 | |
161 | 160 | /** |
@@ -266,8 +265,8 @@ discard block |
||
266 | 265 | */ |
267 | 266 | public function minutesSinceLastEdit(string $title): int |
268 | 267 | { |
269 | - $time = $this->getTimestamp($title); // 2011-09-02T16:31:13Z |
|
268 | + $time = $this->getTimestamp($title); // 2011-09-02T16:31:13Z |
|
270 | 269 | |
271 | - return (int)round((time() - strtotime($time)) / 60); |
|
270 | + return (int) round((time() - strtotime($time)) / 60); |
|
272 | 271 | } |
273 | 272 | } |
@@ -78,7 +78,7 @@ |
||
78 | 78 | //echo count($titles)." titles\n"; |
79 | 79 | $edited = file(__DIR__.'/../resources/article_externRef_edited.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); |
80 | 80 | $filtered = array_diff($titles, $edited); |
81 | -$list = new PageList( $filtered ); |
|
81 | +$list = new PageList($filtered); |
|
82 | 82 | echo ">".$list->count()." dans liste\n"; |
83 | 83 | |
84 | 84 | new ExternRefWorker($botConfig, $wiki, $list, null, new InternetDomainParser()); |
@@ -21,7 +21,7 @@ discard block |
||
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 | private readonly Rules $rules; |
27 | 27 | |
@@ -55,7 +55,7 @@ discard block |
||
55 | 55 | public static function extractSubdomainString(string $httpURL): string |
56 | 56 | { |
57 | 57 | if (!HttpUtil::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); |
@@ -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 | } |
@@ -170,7 +170,7 @@ discard block |
||
170 | 170 | { |
171 | 171 | try { |
172 | 172 | if (!HttpUtil::isHttpURL($this->url)) { |
173 | - throw new Exception('string is not an URL ' . $this->url); |
|
173 | + throw new Exception('string is not an URL '.$this->url); |
|
174 | 174 | } |
175 | 175 | if (!$this->domainParser instanceof InternetDomainParserInterface) { |
176 | 176 | $this->log->notice('InternetDomainParser is not set'); |
@@ -181,7 +181,7 @@ discard block |
||
181 | 181 | return $this->domainParser->getRegistrableDomainFromURL($this->url); |
182 | 182 | } catch (Exception $e) { |
183 | 183 | if ($this->log !== null) { |
184 | - $this->log->warning('InternetDomainParser->getRegistrableDomainFromURL NULL ' . $this->url); |
|
184 | + $this->log->warning('InternetDomainParser->getRegistrableDomainFromURL NULL '.$this->url); |
|
185 | 185 | } |
186 | 186 | throw new Exception('InternetDomainParser->getRegistrableDomainFromURL NULL', $e->getCode(), $e); |
187 | 187 | } |