<?php
/**
- * Resource loader module for default user preferences.
- *
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
/**
* Module for default user preferences.
+ *
+ * @ingroup ResourceLoader
+ * @internal
*/
class ResourceLoaderUserDefaultsModule extends ResourceLoaderModule {
- /* Protected Members */
-
- protected $targets = array( 'desktop', 'mobile' );
-
- /* Methods */
-
- /**
- * @param ResourceLoaderContext $context
- * @return string Hash
- */
- public function getModifiedHash( ResourceLoaderContext $context ) {
- return md5( serialize( User::getDefaultOptions() ) );
- }
+ protected $targets = [ 'desktop', 'mobile' ];
/**
- * @param ResourceLoaderContext $context
- * @return int
+ * @return bool
*/
- public function getModifiedTime( ResourceLoaderContext $context ) {
- return $this->getHashMtime( $context );
+ public function enableModuleContentVersion() {
+ return true;
}
/**
* @param ResourceLoaderContext $context
- * @return string
+ * @return string JavaScript code
*/
public function getScript( ResourceLoaderContext $context ) {
- return Xml::encodeJsCall(
- 'mw.user.options.set',
- array( User::getDefaultOptions() ),
- ResourceLoader::inDebugMode()
- );
+ return 'mw.user.options.set('
+ . $context->encodeJson( User::getDefaultOptions() )
+ . ');';
}
}