Commit graph

27 commits

Author SHA1 Message Date
Fomafix 6c80d95abe Use MainConfig instead of global variables
Use overrideConfigValue instead of setMwGlobals in tests.

Change-Id: Ifd7bd498bbb9a405afd9f6dd0e80540412b6ff93
2024-04-10 20:05:26 +00:00
Arlo Breault d031b380db Stop stripping comments in TOC data
The parserTest "PageImages with toc and image in heading" covers the
case of PageImages comments being left around in TOC data.

Depends-On: I10f96435f892b188cffe64b92cdf2701a3e2058b
Change-Id: Ie6760dd25f937d4f6acbab1c0e1475b54878d4ed
2024-02-29 16:07:57 -05:00
Arlo Breault abf45611d7 Strip comments from toc section lines
Change-Id: Ide4462b9df5d02b088bf2f1c83a3c5f119366a95
2024-02-19 17:57:40 -05:00
jenkins-bot 774edf893e Merge "Rely on language-level types for the constructor" 2024-02-10 14:47:45 +00:00
thiemowmde ffeb714a6e Various code style updates in ParserFileProcessingHookHandlers
Notably:
* Utilize the new ??= operator.
* No need to count when nobody cares about the number.
* More robust ratio calculation.
* More straightforward check for the "notpageimage" class name. We
  don't need an array of all the classes when all we care about is a
  single, specific class.
* Fix misspelled "no(t)pageimage".

Change-Id: Ibad1d395a5438bc58e026022d08c38fe54c48653
2024-02-08 12:15:05 +01:00
thiemowmde 692b0bc370 Rely on language-level types for the constructor
… as well as the properties that are initialized via the constructor.

Also update some PHPDoc comments.

Change-Id: I2f1dc5345b4a9d00e01d701ad04d42b28aa2f96a
2024-02-08 12:09:56 +01:00
Umherirrender 15dbbe94d5 Use namespaced classes
Changes to the use statements done automatically via script
Addition of missing use statement done manually

Change-Id: Ie00aedfe607665e8a38ee4ce2475f25b82a1d8cf
2024-01-05 22:37:40 +01:00
Amir Sarabadani 9c24383f80 Only take one field in fetchFieldValues
That is causing T350726 and we already set the field in one line above

Follows-Up: I63ac37c2b73073e8e323f6627785955196cd148c
Bug: T350726
Change-Id: I9f28e326aefa206fe8f4d3f6a1038740fed9b0d4
2023-11-08 12:00:09 +01:00
Amir Sarabadani 5ffaf34258 Add support for read new of pagelinks migration
Bug: T346457
Change-Id: I63ac37c2b73073e8e323f6627785955196cd148c
2023-11-01 18:51:38 +01:00
Umherirrender 619d623104 ParserFileProcessing: Inject TitleFactory
Check the parsed title if valid and can exists on the database

Change-Id: I32805de6ab4b9dca7d56faf982762f6949fc3203
2023-06-21 23:03:44 +02:00
Umherirrender a9b4b4877f ParserFileProcessing: Use ConnectionProvider and QueryBuilder
Bug: T312501
Change-Id: I4c5b5b773cbf1bf77dae7c189f65c8760091e384
2023-06-21 22:50:19 +02:00
Umherirrender 3ae938a116 Use renamed ParserModifyImageHTMLHook interface
Follow-Up: I3043454a502289e5ee2492f7bf2ab01e155c30ba
Change-Id: I3cc4a5d4e4edac76e81c16c1da97427d765cce49
2023-04-22 19:54:54 +02:00
Umherirrender 00ec4349d4 Use PageReference on ParserFileProcessingHookHandlers::processThisTitle
Avoid deprecated Parser::getTitle
Parser::getPage can return null, so checking for that as well

Change-Id: I90f04d514934621ee7fdc0ebe519673d7ba1d82f
2023-01-03 23:32:11 +01:00
Umherirrender de7bf883d2 Replace deprecated Http::get
Bug: T305813
Change-Id: Icd3e64fc13e291761b287c4059315df39cd88d1e
2022-12-11 15:54:20 +01:00
Tim Starling 33ee32f448 Use preg_replace_callback() flag introduced in PHP 7.4
Should improve performance by avoiding the need to run the regex
twice.

Change-Id: Ic737c1c2189c1bfc046cdcb099cdcbc0edde0a97
2022-11-10 13:58:31 +11:00
Umherirrender c24081b609 Inject services into hook handler
Remove the self creating of the handler and remove one deep from the
caller stack

Change-Id: Ie12ff77781f5ec6c74d9289a9812ec4f40c07d95
2022-09-03 00:15:57 +02:00
Umherirrender 3a8221b364 Inline ParserFileProcessingHookHandlers::processFile
There is only one caller,
this also benefits from the type hints on that caller and
some always-false condition could be removed

Change-Id: Id06b590225b3cf3f0baf331f0aaaad9ef522532a
2022-09-02 23:52:59 +02:00
Reedy 84861174bc Convert Hooks to HookHandlers
Bug: T271021
Change-Id: I6022e515cf65ec089c59fb56f6fde371dc9f0e12
2022-07-07 10:21:43 +00:00
Simon Legner 41f4165230 Allow editors control of the page image
- Exclude images with class=notpageimage

Bug: T301588
Change-Id: I15eb580f5047a414431a45acf4004344e01a5881
2022-02-14 18:53:57 +00:00
Tim Starling ccdb93f3c1 Add more integrated parser test
Including regression test for T299798.

Bug: T299798
Depends-On: Idc4ac4eb4e20d8e3e2fdbd093ff75f26d3af0d57
Change-Id: I89fa346651e756d1981a950a8b778020359b86a2
2022-01-24 14:00:27 +11:00
Tim Starling cf7a366089 Fix the case where there are no section headers
Bug: T299798
Change-Id: Ib5b25dbaece5c9ac5de665f4c990d053e8d9d440
2022-01-24 12:00:24 +11:00
Tim Starling 372b5938f5 Strip comments from indicators
They are documented as being HTML, so look for candidate comments and
strip them, same as we do for the main HTML.

Bug: T298930
Change-Id: I7caf96b8d15f887e0be4c9a24acfd981b3e7a776
2022-01-11 15:36:10 +11:00
Bartosz Dziewoński 035938e76c Disable parser HTML changes during parser tests, they cause failures
Bug: T298930
Change-Id: If143365ba89eb894250b34fd9f1c603595e19fca
2022-01-11 00:26:53 +00:00
Tim Starling 768464d0f9 Identify lead images using a new parser hook instead of during LinksUpdate
I added ParserModifyImageHTML to core to make it easier for PageImages
to identify images in the lead section.

This also allows PageImages to stop writing to LinksUpdate properties.
It is one of only two extensions that do that.

Depends-On: I24528381e8d24ca8d138bceadb9397c83fd31356
Bug: T176520
Bug: T296895
Change-Id: I472f4a023969bfde6298eb56112c16d2ae842199
2022-01-04 14:19:32 +11:00
Thiemo Kreuz d8eceed585 Update PHPDocs and use PHP7 features where possible
Change-Id: I417ad041e268b88512de435c59695cb4338331cc
2021-05-04 16:51:18 +02:00
Petr Pchelko 6fa0a18037 Stop writing objects into ParserOutput::setExtensionData.
As we switch ParserCache to JSON, we can no longer serialized
class instances in extension data. PageImages was writing the
full set of properies it received from Parser into it's extension
data, some of which are sometimes class instances. Instead, only
write the nessessary subset of data into extension-data.

This change is completely forward and backward compatible.
Since before this change we were already writing the same array,
but with many additional unused properties.

Bug: T266251
Change-Id: Ieb4a139465159611e6b3a99c4b68c3c174b1944f
2020-10-26 13:35:38 -07:00
Reedy 0cc54a66bd Move some classes to AutoloadNamespaces
Bug: T187154
Change-Id: I2f5251aa2f8298fd11096b27eea3e5ccf71f2103
2020-04-18 04:24:42 +01:00
Renamed from includes/ParserFileProcessingHookHandlers.php (Browse further)