MediaWiki REL1_37
MediaWiki\Preferences\DefaultPreferencesFactory Class Reference

This is the default implementation of PreferencesFactory. More...

Inheritance diagram for MediaWiki\Preferences\DefaultPreferencesFactory:
Collaboration diagram for MediaWiki\Preferences\DefaultPreferencesFactory:

Public Member Functions

 __construct (ServiceOptions $options, Language $contLang, AuthManager $authManager, LinkRenderer $linkRenderer, NamespaceInfo $nsInfo, PermissionManager $permissionManager, ILanguageConverter $languageConverter, LanguageNameUtils $languageNameUtils, HookContainer $hookContainer, UserOptionsLookup $userOptionsLookup, LanguageConverterFactory $languageConverterFactory=null, Parser $parser=null, SkinFactory $skinFactory=null, UserGroupManager $userGroupManager=null)
 
 getForm (User $user, IContextSource $context, $formClass=PreferencesFormOOUI::class, array $remove=[])
 
 getFormDescriptor (User $user, IContextSource $context)
 
 getSaveBlacklist ()
 Get the names of preferences that should never be saved (such as 'realname' and 'emailaddress').
Returns
string[]

 

Public Attributes

const CONSTRUCTOR_OPTIONS
 

Protected Member Functions

 applyFilters (array &$preferences, array $formDescriptor, $verb)
 Applies filters to preferences either before or after form usage.
 
 cleanSignature ( $signature, $alldata, HTMLForm $form)
 
 datetimePreferences (User $user, IContextSource $context, &$defaultPreferences)
 
 editingPreferences (User $user, MessageLocalizer $l10n, &$defaultPreferences)
 
 filesPreferences (IContextSource $context, &$defaultPreferences)
 
 generateSkinOptions (User $user, IContextSource $context)
 
 getDateOptions (IContextSource $context)
 
 getImageSizes (MessageLocalizer $l10n)
 
 getOptionFromUser ( $name, $info, array $userOptions)
 Pull option from a user account.
 
 getThumbSizes (MessageLocalizer $l10n)
 
 getTimeZoneList (Language $language)
 Get a list of all time zones.
 
 getTimezoneOptions (IContextSource $context)
 
 profilePreferences (User $user, IContextSource $context, &$defaultPreferences)
 
 rcPreferences (User $user, MessageLocalizer $l10n, &$defaultPreferences)
 
 renderingPreferences (User $user, MessageLocalizer $l10n, &$defaultPreferences)
 
 saveFormData ( $formData, PreferencesFormOOUI $form, array $formDescriptor)
 Handle the form submission if everything validated properly.
 
 searchPreferences (&$defaultPreferences)
 
 skinPreferences (User $user, IContextSource $context, &$defaultPreferences)
 
 submitForm (array $formData, PreferencesFormOOUI $form, array $formDescriptor)
 Save the form data and reload the page.
 
 validateSignature ( $signature, $alldata, HTMLForm $form)
 
 watchlistPreferences (User $user, IContextSource $context, &$defaultPreferences)
 

Protected Attributes

AuthManager $authManager
 
Language $contLang
 The wiki's content language.
 
LanguageNameUtils $languageNameUtils
 
LinkRenderer $linkRenderer
 
NamespaceInfo $nsInfo
 
ServiceOptions $options
 
PermissionManager $permissionManager
 

Private Member Functions

 loadPreferenceValues (User $user, IContextSource $context, &$defaultPreferences)
 Loads existing values for a given array of preferences.
 

Private Attributes

HookRunner $hookRunner
 
ILanguageConverter $languageConverter
 
LanguageConverterFactory $languageConverterFactory
 
Parser $parser
 
SkinFactory $skinFactory
 
UserGroupManager $userGroupManager
 
UserOptionsManager $userOptionsManager
 

Detailed Description

This is the default implementation of PreferencesFactory.

Definition at line 70 of file DefaultPreferencesFactory.php.

Constructor & Destructor Documentation

◆ __construct()

MediaWiki\Preferences\DefaultPreferencesFactory::__construct ( ServiceOptions  $options,
Language  $contLang,
AuthManager  $authManager,
LinkRenderer  $linkRenderer,
NamespaceInfo  $nsInfo,
PermissionManager  $permissionManager,
ILanguageConverter  $languageConverter,
LanguageNameUtils  $languageNameUtils,
HookContainer  $hookContainer,
UserOptionsLookup  $userOptionsLookup,
LanguageConverterFactory  $languageConverterFactory = null,
Parser  $parser = null,
SkinFactory  $skinFactory = null,
UserGroupManager  $userGroupManager = null 
)

Member Function Documentation

◆ applyFilters()

MediaWiki\Preferences\DefaultPreferencesFactory::applyFilters ( array &  $preferences,
array  $formDescriptor,
  $verb 
)
protected

Applies filters to preferences either before or after form usage.

Parameters
array&$preferences
array$formDescriptor
string$verbName of the filter method to call, either 'filterFromForm' or 'filterForForm'

Definition at line 1849 of file DefaultPreferencesFactory.php.

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\loadPreferenceValues(), and MediaWiki\Preferences\DefaultPreferencesFactory\saveFormData().

◆ cleanSignature()

MediaWiki\Preferences\DefaultPreferencesFactory::cleanSignature (   $signature,
  $alldata,
HTMLForm  $form 
)
protected
Parameters
string$signature
array$alldata
HTMLForm$form
Returns
string

Definition at line 1653 of file DefaultPreferencesFactory.php.

References Parser\cleanSigInSig().

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\profilePreferences().

◆ datetimePreferences()

MediaWiki\Preferences\DefaultPreferencesFactory::datetimePreferences ( User  $user,
IContextSource  $context,
$defaultPreferences 
)
protected

◆ editingPreferences()

MediaWiki\Preferences\DefaultPreferencesFactory::editingPreferences ( User  $user,
MessageLocalizer  $l10n,
$defaultPreferences 
)
protected
Parameters
User$user
MessageLocalizer$l10n
array&$defaultPreferences

Definition at line 1055 of file DefaultPreferencesFactory.php.

References User\isAllowed(), and MessageLocalizer\msg().

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\getFormDescriptor().

◆ filesPreferences()

MediaWiki\Preferences\DefaultPreferencesFactory::filesPreferences ( IContextSource  $context,
$defaultPreferences 
)
protected

◆ generateSkinOptions()

MediaWiki\Preferences\DefaultPreferencesFactory::generateSkinOptions ( User  $user,
IContextSource  $context 
)
protected
Parameters
User$user
IContextSource$context
Returns
array Text/links to display as key; $skinkey as value

Definition at line 1421 of file DefaultPreferencesFactory.php.

References IContextSource\getLanguage(), User\getName(), IContextSource\getRequest(), MessageLocalizer\msg(), and NS_USER.

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\skinPreferences().

◆ getDateOptions()

MediaWiki\Preferences\DefaultPreferencesFactory::getDateOptions ( IContextSource  $context)
protected

◆ getForm()

MediaWiki\Preferences\DefaultPreferencesFactory::getForm ( User  $user,
IContextSource  $context,
  $formClass = PreferencesFormOOUI::class,
array  $remove = [] 
)

◆ getFormDescriptor()

◆ getImageSizes()

MediaWiki\Preferences\DefaultPreferencesFactory::getImageSizes ( MessageLocalizer  $l10n)
protected

◆ getOptionFromUser()

MediaWiki\Preferences\DefaultPreferencesFactory::getOptionFromUser (   $name,
  $info,
array  $userOptions 
)
protected

Pull option from a user account.

Handles stuff like array-type preferences.

Parameters
string$name
array$info
array$userOptions
Returns
array|string

Definition at line 315 of file DefaultPreferencesFactory.php.

References MediaWiki\Preferences\DefaultPreferencesFactory\$options.

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\loadPreferenceValues().

◆ getSaveBlacklist()

MediaWiki\Preferences\DefaultPreferencesFactory::getSaveBlacklist ( )

Get the names of preferences that should never be saved (such as 'realname' and 'emailaddress').

Returns
string[]

Implements MediaWiki\Preferences\PreferencesFactory.

Definition at line 217 of file DefaultPreferencesFactory.php.

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\loadPreferenceValues(), and MediaWiki\Preferences\DefaultPreferencesFactory\saveFormData().

◆ getThumbSizes()

MediaWiki\Preferences\DefaultPreferencesFactory::getThumbSizes ( MessageLocalizer  $l10n)
protected

◆ getTimeZoneList()

MediaWiki\Preferences\DefaultPreferencesFactory::getTimeZoneList ( Language  $language)
protected

Get a list of all time zones.

Parameters
Language$languageLanguage used for the localized names
Returns
array[] A list of all time zones. The system name of the time zone is used as key and the value is an array which contains localized name, the timecorrection value used for preferences and the region
Since
1.26

Definition at line 1910 of file DefaultPreferencesFactory.php.

References wfMessage().

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\getTimezoneOptions().

◆ getTimezoneOptions()

MediaWiki\Preferences\DefaultPreferencesFactory::getTimezoneOptions ( IContextSource  $context)
protected

◆ loadPreferenceValues()

MediaWiki\Preferences\DefaultPreferencesFactory::loadPreferenceValues ( User  $user,
IContextSource  $context,
$defaultPreferences 
)
private

◆ profilePreferences()

◆ rcPreferences()

MediaWiki\Preferences\DefaultPreferencesFactory::rcPreferences ( User  $user,
MessageLocalizer  $l10n,
$defaultPreferences 
)
protected
Parameters
User$user
MessageLocalizer$l10n
array&$defaultPreferences

Definition at line 1121 of file DefaultPreferencesFactory.php.

References Message\numParam(), User\useNPPatrol(), and User\useRCPatrol().

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\getFormDescriptor().

◆ renderingPreferences()

MediaWiki\Preferences\DefaultPreferencesFactory::renderingPreferences ( User  $user,
MessageLocalizer  $l10n,
$defaultPreferences 
)
protected
Parameters
User$user
MessageLocalizer$l10n
array&$defaultPreferences

Definition at line 998 of file DefaultPreferencesFactory.php.

References User\isAllowed(), and MessageLocalizer\msg().

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\getFormDescriptor().

◆ saveFormData()

MediaWiki\Preferences\DefaultPreferencesFactory::saveFormData (   $formData,
PreferencesFormOOUI  $form,
array  $formDescriptor 
)
protected

Handle the form submission if everything validated properly.

Parameters
array$formData
PreferencesFormOOUI$form
array[]$formDescriptor
Returns
bool|Status|string

Definition at line 1777 of file DefaultPreferencesFactory.php.

References MediaWiki\Preferences\DefaultPreferencesFactory\applyFilters(), ContextSource\getContext(), PreferencesFormOOUI\getModifiedUser(), and MediaWiki\Preferences\DefaultPreferencesFactory\getSaveBlacklist().

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\submitForm().

◆ searchPreferences()

MediaWiki\Preferences\DefaultPreferencesFactory::searchPreferences ( $defaultPreferences)
protected
Parameters
array&$defaultPreferences

Definition at line 1395 of file DefaultPreferencesFactory.php.

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\getFormDescriptor().

◆ skinPreferences()

MediaWiki\Preferences\DefaultPreferencesFactory::skinPreferences ( User  $user,
IContextSource  $context,
$defaultPreferences 
)
protected

◆ submitForm()

MediaWiki\Preferences\DefaultPreferencesFactory::submitForm ( array  $formData,
PreferencesFormOOUI  $form,
array  $formDescriptor 
)
protected

◆ validateSignature()

MediaWiki\Preferences\DefaultPreferencesFactory::validateSignature (   $signature,
  $alldata,
HTMLForm  $form 
)
protected
Parameters
mixed$signature
array$alldata
HTMLForm$form
Returns
bool|string|string[]

Definition at line 1587 of file DefaultPreferencesFactory.php.

References ContextSource\getContext(), ContextSource\getUser(), and ContextSource\msg().

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\profilePreferences().

◆ watchlistPreferences()

MediaWiki\Preferences\DefaultPreferencesFactory::watchlistPreferences ( User  $user,
IContextSource  $context,
$defaultPreferences 
)
protected

Member Data Documentation

◆ $authManager

AuthManager MediaWiki\Preferences\DefaultPreferencesFactory::$authManager
protected

◆ $contLang

Language MediaWiki\Preferences\DefaultPreferencesFactory::$contLang
protected

The wiki's content language.

Definition at line 77 of file DefaultPreferencesFactory.php.

Referenced by MediaWiki\Preferences\DefaultPreferencesFactory\__construct().

◆ $hookRunner

HookRunner MediaWiki\Preferences\DefaultPreferencesFactory::$hookRunner
private

Definition at line 98 of file DefaultPreferencesFactory.php.

◆ $languageConverter

ILanguageConverter MediaWiki\Preferences\DefaultPreferencesFactory::$languageConverter
private

◆ $languageConverterFactory

LanguageConverterFactory MediaWiki\Preferences\DefaultPreferencesFactory::$languageConverterFactory
private

◆ $languageNameUtils

LanguageNameUtils MediaWiki\Preferences\DefaultPreferencesFactory::$languageNameUtils
protected

◆ $linkRenderer

LinkRenderer MediaWiki\Preferences\DefaultPreferencesFactory::$linkRenderer
protected

◆ $nsInfo

NamespaceInfo MediaWiki\Preferences\DefaultPreferencesFactory::$nsInfo
protected

◆ $options

◆ $parser

Parser MediaWiki\Preferences\DefaultPreferencesFactory::$parser
private

◆ $permissionManager

PermissionManager MediaWiki\Preferences\DefaultPreferencesFactory::$permissionManager
protected

◆ $skinFactory

SkinFactory MediaWiki\Preferences\DefaultPreferencesFactory::$skinFactory
private

◆ $userGroupManager

UserGroupManager MediaWiki\Preferences\DefaultPreferencesFactory::$userGroupManager
private

◆ $userOptionsManager

UserOptionsManager MediaWiki\Preferences\DefaultPreferencesFactory::$userOptionsManager
private

Definition at line 101 of file DefaultPreferencesFactory.php.

◆ CONSTRUCTOR_OPTIONS

const MediaWiki\Preferences\DefaultPreferencesFactory::CONSTRUCTOR_OPTIONS
Initial value:
= [
'AllowRequiringEmailForResets',
'AllowUserCss',
'AllowUserCssPrefs',
'AllowUserJs',
'DefaultSkin',
'EmailAuthentication',
'EmailConfirmToEdit',
'EnableEmail',
'EnableUserEmail',
'EnableUserEmailMuteList',
'EnotifMinorEdits',
'EnotifRevealEditorAddress',
'EnotifUserTalk',
'EnotifWatchlist',
'ForceHTTPS',
'HiddenPrefs',
'ImageLimits',
'LanguageCode',
'LocalTZoffset',
'MaxSigChars',
'RCMaxAge',
'RCShowWatchingUsers',
'RCWatchCategoryMembership',
'SearchMatchRedirectPreference',
'SecureLogin',
'ScriptPath',
'SignatureValidation',
'ThumbLimits',
]
Access: internal
For use by ServiceWiring

Definition at line 118 of file DefaultPreferencesFactory.php.


The documentation for this class was generated from the following file: