Commit graph

129 commits

Author SHA1 Message Date
Max Semenik 60884c60e7 Stop manually messing with caching HTTP headers
It has origins in times when this code was in an AJAX function, however
now that it's in an API module it's not needed and can be counter-productive
as headers issued might conflict with MW headers. Let the API take care of
this via its standard means.

Change-Id: I8ebf8e7b935d7d252ac010bc1b88202b87f43e20
2019-03-05 20:55:22 +00:00
jenkins-bot c4d39389a8 Merge "Change 'title' attributes to links to use full page name" 2019-02-14 00:53:10 +00:00
Peter Boehm 1dfe6ca618 Change 'title' attributes to links to use full page name
This changes the title attribute on the link generated in the
CategoryTree. The only effect is additional information about the
link target that may be truncated by 'hideprefix' or CSS overflow,
will now still be accessible in another way.

Change-Id: I4f07fa88f0a528634e9bf3c504e84fb4bf55e3bf
2019-02-14 00:46:35 +00:00
Fomafix 0a3f30b8d7 Simplify code by using Xml::element()
Change-Id: I8b0d1c35d8d7cc310769d586a1716ef5ffbd46b3
2019-02-12 02:47:13 +00:00
Fomafix c993bb8353 Fix findings by phpcs
* Add @inheritDoc to functions that are inheritance.
* Move comments to a single line.

Remove the phpcs rule exceptions:
* MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected
* MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic
* MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment

Change-Id: I742ee19f0a3d2d62e08b6f2e35cd9a6b3940cd22
2019-02-06 18:03:50 +00:00
Fomafix 9f12acd962 Remove "return true" on hook handler functions
Before MediaWiki 1.23, returning true was required. Since 1.23 this not
needed anymore.

Change-Id: Iae9bcf416d851af2a8703fd76dc13d0b1d2db8bc
2019-02-06 18:03:15 +00:00
Fomafix b3ac7f5404 Add typehints to function parameters
* Add "= null" when null is supported and used.
* Also fix Doxygen tags.

Change-Id: I209b23eee54b5e8e0f4091f3d4cd7c5e44dbaff0
2019-02-05 15:30:31 +01:00
Fomafix 27289b479d Change hooks to explicitly load the modules
This change adds the needed modules to the page in the same hook
that adds the category tree HTML.

This avoids loading the modules on skins without a sidebar, like
SkinApi, or on pages without categories.

A forced-loading of the modules from BeforePageDisplay hook is not
necessary anymore in those cases.

This change avoids getting the OutputPage object from the global $wgOut.

Bug: T212820
Change-Id: I2bd50c45aa201a06630af3d57c9bcfccf7b22b99
2019-01-22 15:31:47 -08:00
Fomafix e31ac9cc84 Use hook SkinBuildSidebar instead of SkinTemplateOutputPageBeforeExec
This change allows the skin to customize if there is a sidebar or not.
For example the SkinApi overloads buildSidebar and therefor the hook
SkinBuildSidebar is not triggered.

Change-Id: Ib39736901f25822d40265ccaa5fd0feea977cdc1
2019-01-22 23:15:07 +00:00
Fomafix 095040a9e6 Remove hook SkinJoinCategoryLinks
The hook `SkinJoinCategoryLinks` is not used and not triggered.

Also remove the style for the class CategoryTreeCategoryBarItem because
it is only used in skinJoinCategoryLinks::skinJoinCategoryLinks.

Change-Id: I52e4f819ff195fc1fa8a148b0bb58d95a4bf22d7
2019-01-10 20:15:28 +01:00
Fomafix 3cdb4e95f2 Move styles that only used in JavaScript to JavaScript module
Also rename the style module from 'ext.categoryTree.css' to
'ext.categoryTree.styles'.
Keep the previous module name 'ext.categoryTree.css' for compability to
cached versions.
Also move the files of the module 'ext.categoryTree' into a
subdirectory ext.categoryTree.

Change-Id: Ie5ea28acfb43e33a94ec5824baf4f26d63d8e9e6
2019-01-10 13:38:58 +01:00
James D. Forrester 96b44610ac API: Drop back-compat. code for old versions of MW we don't support
Change-Id: I1eb8f75399a6cd10a685ede98673cc6122494980
2018-10-26 18:02:44 +00:00
Umherirrender 1d47aeba0b Add api error 'invalidtitle' for invalid category param
When giving an invalid title, for example containing double encoded %
(%2527 from the task), the code would raise a BadMethodCallException on
the null title.

It is better to get an api error, when invalid title is given, because
that is more informativ for the client than a php fatal

Bug: T202057
Change-Id: I7af2a8d072216eca8d3241b2c082089a78fbf621
2018-08-18 15:30:43 +00:00
jenkins-bot be6dd1b089 Merge "Remove trailing \r\t\t" 2018-08-04 18:41:16 +00:00
Brian Wolff f36af62317 Fix some raw html messages
Try also to ensure that the bullet messages are treated the
same in both JS and PHP. It should be noted that the mk and scn
translations are currently broken on the JS side.

Bug: T195010
Change-Id: Id87d26db8d90e293701ae11f6434026a8ae88822
2018-08-02 01:25:31 -07:00
Sophivorus 96fe66c4c5 Remove trailing \r\t\t
Doesn't seem to serve any useful purpose
and adds an unwanted trailing <p></p> after the category tree

Change-Id: Ic76ff3b1156a5627930c1078e488f5c81ec5521d
2018-06-12 16:59:45 +00:00
libraryupgrader 64312796a0 build: Updating mediawiki/mediawiki-codesniffer to 20.0.0
Change-Id: I3dc05f3935b2f952182c3afbfc05d7e6c5557039
2018-05-26 01:01:12 +00:00
Fomafix 6684f62bba Simplify by using Xml::element
Xml::element already makes the HTML encoding.

Change-Id: Idee5e6871c5a7b5e6763ebe85275598b9b217224
2018-04-18 09:36:40 +02:00
Kunal Mehta 50c10d1fcb Use standard GPL file header
Change-Id: Ic49d45d0a0cb640d40486735c95f13cc6e29063f
2018-04-16 22:38:06 +00:00
Kunal Mehta d85ca412b7 Don't conditionally register any hooks
Register all hooks unconditionally in extension.json, and then in the
hook
itself, check whether they should be doing anything.

Change-Id: I5f0019fc444371a24a11a25ca2d980c0a9ab5a61
2018-04-16 18:05:06 +00:00
libraryupgrader 5a7ebcfead build: Updating mediawiki/mediawiki-codesniffer to 18.0.0
The following sniffs now pass and were enabled:
* MediaWiki.Commenting.LicenseComment.InvalidLicenseTag

Change-Id: I13c4825186d8ba101feb2a2d28ee8dc9bc7306dd
2018-04-13 22:19:35 +00:00
Kunal Mehta 72db0e9107 Avoid unnecessary is_bool
Strict equality already ensures that the global is a boolean.

Change-Id: I09011f4d6ac5fabe1154ef19d8ba34f289f764f7
2018-04-10 20:48:37 -07:00
Kunal Mehta 1c60788059 Set visibility on all functions
Change-Id: I1ced553ac5c18eafa83e32516ddc463feece96ef
2018-04-10 20:48:37 -07:00
Kunal Mehta d90bfe3c12 isset() already checks whether the value is null
Change-Id: I35c1fe14ef5fc8b073d098b27dffd23b3abc2556
2018-04-10 20:48:37 -07:00
Kunal Mehta c28084d3c5 Don't specify default parameters to SpecialPage::__construct()
Change-Id: I8fae3fee0edbc95b1bb7d012af6e4ce067bb4f62
2018-04-10 20:48:37 -07:00
Kunal Mehta 987392938b Use ::class
Change-Id: Id43297b7930cd8f3e5a330c5e99fea9b85014c65
2018-04-10 20:48:37 -07:00
Kunal Mehta 4e1158b7d2 Add phan configuration
Change-Id: I8d438ad061500bc56f5e3e527f18296485988d6f
2018-04-08 18:50:31 -07:00
Timo Tijhof 38babc1011 Set visibility of CategoryTree::encodeOptions() as protected
Not referenced anywhere in Wikimedia Git, except for the one
method that uses it, in the same class here.

Also:
* Set explicit 'public' visibility of getOptionsAsJsStructure().
* Avoid use of !is_null().
* Avoid assignment in ternary.

Change-Id: I71d2a247e001b7f7f4f52546e8167a79d873076e
2018-02-16 19:30:51 -08:00
Kunal Mehta 8e51ea4e3a Move classes into includes/
Change-Id: I308523aa764594798d72974fb79e19aef6c3f342
2018-02-08 22:23:07 -08:00