wiki.techinc.nl/docs
Thalia 7a5508573a Ensure block hooks keep user state consistent with realistic blocks
Several block-related hooks allow the user to be put into in a state
that is inconsistent with blocks that can actually be made:
* With UserIsHidden, User::mHideName can be set to true without there
  being a block
* With UserIsBlockedFrom, a user can be blocked from editing a page
  without there being a block
* With GetBlockedStatus, public block properties can be arbitrarily
  set on a user

These problems are mostly theoretical, but mean that it is impossible to
make some basic assumptions, e.g. that a user who is blocked from a page
must have a block. The hooks are not widely used, and with a few changes
we can make them more robust so such assumptions can be made.

This patch:
* Ensures UserIsBlockedFrom is only called if there is a block. This
  would be a breaking change if any extensions were using this to block
  an unblocked user; the intended use case is clearly for extensions to
  allow user talk page access to blocked users.
* Adds a new hook, GetUserBlockComplete, which passes the block for
  modification. This should be used instead GetBlockedStatus and
  UserIsHidden, which will be deprecated in the future.
* Allows the 'hideName' option to be passed into the AbstractBlock
  constructor so that suppressing system blocks can be made.

Bug: T228948
Bug: T229035
Change-Id: I6f145335abeb16775b08e8c7c751a01f113281e3
2019-08-21 17:38:52 +01:00
..
databases
html
kss docs/kss/package.json: Update Gerrit /r/p/ link to /r/ 2019-04-29 23:31:02 +00:00
php-memcached Use [...] instead of array(...) in PHP comments and documentation 2019-06-17 21:15:09 +02:00
uidesign docs: Remove table-layout documentation from core 2018-07-19 14:39:34 +02:00
contenthandler.txt
database.txt Replace wfGetLB 2018-05-02 22:30:24 +02:00
deferred.txt Fix $wgUpdateRowsPerJob default in docs/deferred.txt 2017-09-15 11:18:22 +02:00
distributors.txt Hard-deprecate the $wgUseTidy option 2018-09-20 11:08:40 -04:00
doxygen_first_page.php
export-0.1.xsd
export-0.2.xsd
export-0.3.xsd
export-0.4.xsd
export-0.5.xsd
export-0.6.xsd
export-0.7.xsd
export-0.8.xsd
export-0.9.xsd
export-0.10.xsd Validate the output of the dump scripts. 2019-03-20 22:25:20 +01:00
export-0.11.xsd Add support for xml dump schema 0.11 2019-06-27 21:56:01 +00:00
export-demo.xml Fix common typos 2018-08-08 13:16:45 +02:00
extension.schema.v1.json Allow skins/extensions to define custom OOUI themes 2019-07-10 22:08:14 +02:00
extension.schema.v2.json Allow skins/extensions to define custom OOUI themes 2019-07-10 22:08:14 +02:00
globals.txt docs: Remove outdated information from globals.txt 2018-10-14 19:13:03 +00:00
hooks.txt Ensure block hooks keep user state consistent with realistic blocks 2019-08-21 17:38:52 +01:00
injection.txt Fix usage of MediaWikiServices in comments and documentation 2019-03-03 14:09:33 +00:00
language.txt
linkcache.txt Use [...] instead of array(...) in PHP comments and documentation 2019-06-17 21:15:09 +02:00
logger.txt
magicword.txt Use [...] instead of array(...) in PHP comments and documentation 2019-06-17 21:15:09 +02:00
maintenance.txt
memcached.txt Use [...] instead of array(...) in PHP comments and documentation 2019-06-17 21:15:09 +02:00
ontology.owl Specify licence of mediawiki ontology.owl 2019-03-04 16:12:13 +01:00
pageupdater.txt docs: Fix typos for 'parameter' and 'perform' 2019-08-20 09:45:52 +00:00
README
schema.txt
scripts.txt Corrected grammatical error. 2019-05-08 15:32:21 -04:00
sitelist-1.0.xsd
sitelist.txt
skin.txt Add 'Special:MyLanguage' in 'All skins' category link 2018-05-26 16:06:02 +02:00
title.txt

/docs Directory README
======================

The 'docs' directory contain various text files that should help you understand
the most important parts of the code of MediaWiki. More in-depth documentation
can be found at:
  https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Code
  https://www.mediawiki.org/wiki/Special:MyLanguage/Developer_hub
API documentation is automatically generated and updated daily at:
  https://doc.wikimedia.org/mediawiki-core/master/php/html/

You can get a fresh version using 'make doc' or mwdocgen.php in the
../maintenance/ directory.


For end users, most of the documentation is located online at:
  https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents
Documentation for MediaWiki site administrators is at:
  https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:Contents