Merge "Update docs/hooks.txt for ShowSearchHitTitle"
[mediawiki.git] / resources / src / mediawiki / mediawiki.user.blockcookie.js
blobffff039e86e7c1549be94abc1e855c33091e8d80
1 ( function ( mw ) {
3         // If a user has been autoblocked, a cookie is set.
4         // Its value is replicated here in localStorage to guard against cookie-removal.
5         // This module will only be loaded when $wgCookieSetOnAutoblock is true.
6         // Ref: https://phabricator.wikimedia.org/T5233
8         if ( !mw.cookie.get( 'BlockID' ) && mw.storage.get( 'blockID' ) ) {
9                 // The block ID exists in storage, but not in the cookie.
10                 mw.cookie.set( 'BlockID', mw.storage.get( 'blockID' ) );
12         } else if ( parseInt( mw.cookie.get( 'BlockID' ), 10 ) > 0 && !mw.storage.get( 'blockID' ) ) {
13                 // The block ID exists in the cookie, but not in storage.
14                 // (When a block expires the cookie remains but its value is '', hence the integer check above.)
15                 mw.storage.set( 'blockID', mw.cookie.get( 'BlockID' ) );
17         } else if ( mw.cookie.get( 'BlockID' ) === '' && mw.storage.get( 'blockID' ) ) {
18                 // If only the empty string is in the cookie, remove the storage value. The block is no longer valid.
19                 mw.storage.remove( 'blockID' );
21         }
23 }( mediaWiki ) );