Page Menu
Home
WickedGov Phorge
Search
Configure Global Search
Log In
Files
F4086058
NamespaceInputWidget.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
NamespaceInputWidget.php
View Options
<?php
namespace
MediaWiki\Widget
;
use
MediaWiki\Html\Html
;
use
OOUI\DropdownInputWidget
;
use
OOUI\InputWidget
;
/**
* Namespace input widget. Displays a dropdown box with the choice of available namespaces.
*
* @copyright 2011-2015 MediaWiki Widgets Team and others; see AUTHORS.txt
* @license MIT
*/
class
NamespaceInputWidget
extends
DropdownInputWidget
{
/** @var string */
protected
$includeAllValue
;
/** @var bool */
protected
$userLang
;
/** @var int[] */
protected
$exclude
;
/**
* @param array $config Configuration options
* - string $config['includeAllValue'] If specified, add a "all namespaces" option to the
* namespace dropdown, and use this as the input value for it
* - bool $config['userLang'] Display namespaces in user language
* - int[] $config['exclude'] List of namespace numbers to exclude from the selector
*/
public
function
__construct
(
array
$config
=
[]
)
{
// Configuration initialization
$config
[
'options'
]
=
$this
->
getNamespaceDropdownOptions
(
$config
);
parent
::
__construct
(
$config
);
// Properties
$this
->
includeAllValue
=
$config
[
'includeAllValue'
]
??
null
;
$this
->
userLang
=
$config
[
'userLang'
]
??
false
;
$this
->
exclude
=
$config
[
'exclude'
]
??
[];
// Initialization
$this
->
addClasses
(
[
'mw-widget-namespaceInputWidget'
]
);
}
protected
function
getNamespaceDropdownOptions
(
array
$config
)
{
$namespaceOptionsParams
=
[
'all'
=>
$config
[
'includeAllValue'
]
??
null
,
'in-user-lang'
=>
$config
[
'userLang'
]
??
false
,
'exclude'
=>
$config
[
'exclude'
]
??
null
];
$namespaceOptions
=
Html
::
namespaceSelectorOptions
(
$namespaceOptionsParams
);
$options
=
[];
foreach
(
$namespaceOptions
as
$id
=>
$name
)
{
$options
[]
=
[
'data'
=>
(
string
)
$id
,
'label'
=>
$name
,
];
}
return
$options
;
}
protected
function
getJavaScriptClassName
()
{
return
'mw.widgets.NamespaceInputWidget'
;
}
public
function
getConfig
(
&
$config
)
{
$config
[
'includeAllValue'
]
=
$this
->
includeAllValue
;
$config
[
'userLang'
]
=
$this
->
userLang
;
$config
[
'exclude'
]
=
$this
->
exclude
;
// Skip DropdownInputWidget's getConfig(), we don't need 'options' config
$config
[
'dropdown'
][
'$overlay'
]
=
true
;
return
InputWidget
::
getConfig
(
$config
);
}
}
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Aug 18 2026, 08:41 (6 w, 4 d ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
ed/e1/acd8159e2a2c57b3b2e1ae6b036f
Default Alt Text
NamespaceInputWidget.php (2 KB)
Attached To
Mode
rMWPROD MediaWiki Production
Attached
Detach File
Event Timeline
Log In to Comment