MediaWiki
1.34.0
VFormHTMLForm.php
Go to the documentation of this file.
1
<?php
2
27
class
VFormHTMLForm
extends
HTMLForm
{
32
protected
$mWrapperLegend
=
false
;
33
38
protected
$displayFormat
=
'vform'
;
39
40
public
static
function
loadInputFromParameters
( $fieldname, $descriptor,
41
HTMLForm
$parent =
null
42
) {
43
$field = parent::loadInputFromParameters( $fieldname, $descriptor, $parent );
44
$field->setShowEmptyLabel(
false
);
45
return
$field;
46
}
47
48
public
function
getHTML
( $submitResult ) {
49
// This is required for VForm HTMLForms that use that style regardless
50
// of wgUseMediaWikiUIEverywhere (since they pre-date it).
51
// When wgUseMediaWikiUIEverywhere is removed, this should be consolidated
52
// with the addModuleStyles in SpecialPage->setHeaders.
53
$this->
getOutput
()->addModuleStyles( [
54
'mediawiki.ui'
,
55
'mediawiki.ui.button'
,
56
'mediawiki.ui.input'
,
57
'mediawiki.ui.checkbox'
,
58
] );
59
60
return
parent::getHTML( $submitResult );
61
}
62
63
protected
function
getFormAttributes
() {
64
$attribs = parent::getFormAttributes();
65
$attribs[
'class'
] = [
'mw-htmlform'
,
'mw-ui-vform'
,
'mw-ui-container'
];
66
return
$attribs;
67
}
68
69
public
function
wrapForm
( $html ) {
70
// Always discard $this->mWrapperLegend
71
return
Html::rawElement(
'form'
, $this->
getFormAttributes
(), $html );
72
}
73
74
public
function
getButtons
() {
75
$buttons =
''
;
76
77
if
( $this->mShowSubmit ) {
78
$attribs = [];
79
80
if
( isset( $this->mSubmitID ) ) {
81
$attribs[
'id'
] =
$this->mSubmitID
;
82
}
83
84
if
( isset( $this->mSubmitName ) ) {
85
$attribs[
'name'
] =
$this->mSubmitName
;
86
}
87
88
if
( isset( $this->mSubmitTooltip ) ) {
89
$attribs +=
Linker::tooltipAndAccesskeyAttribs
( $this->mSubmitTooltip );
90
}
91
92
$attribs[
'class'
] = [
93
'mw-htmlform-submit'
,
94
'mw-ui-button mw-ui-big mw-ui-block'
,
95
];
96
foreach
( $this->mSubmitFlags as $flag ) {
97
$attribs[
'class'
][] =
'mw-ui-'
. $flag;
98
}
99
100
$buttons .=
Xml::submitButton
( $this->
getSubmitText
(), $attribs ) .
"\n"
;
101
}
102
103
if
( $this->mShowReset ) {
104
$buttons .= Html::element(
105
'input'
,
106
[
107
'type'
=>
'reset'
,
108
'value'
=> $this->
msg
(
'htmlform-reset'
)->text(),
109
'class'
=>
'mw-ui-button mw-ui-big mw-ui-block'
,
110
]
111
) .
"\n"
;
112
}
113
114
if
( $this->mShowCancel ) {
115
$target = $this->mCancelTarget ?:
Title::newMainPage
();
116
if
( $target instanceof
Title
) {
117
$target = $target->getLocalURL();
118
}
119
$buttons .= Html::element(
120
'a'
,
121
[
122
'class'
=>
'mw-ui-button mw-ui-big mw-ui-block'
,
123
'href'
=> $target,
124
],
125
$this->
msg
(
'cancel'
)->text()
126
) .
"\n"
;
127
}
128
129
foreach
( $this->mButtons as $button ) {
130
$attrs = [
131
'type'
=>
'submit'
,
132
'name'
=> $button[
'name'
],
133
'value'
=> $button[
'value'
]
134
];
135
136
if
( $button[
'attribs'
] ) {
137
$attrs += $button[
'attribs'
];
138
}
139
140
if
( isset( $button[
'id'
] ) ) {
141
$attrs[
'id'
] = $button[
'id'
];
142
}
143
144
$attrs[
'class'
] = isset( $attrs[
'class'
] ) ? (array)$attrs[
'class'
] : [];
145
$attrs[
'class'
][] =
'mw-ui-button mw-ui-big mw-ui-block'
;
146
147
$buttons .= Html::element(
'input'
, $attrs ) .
"\n"
;
148
}
149
150
if
( !$buttons ) {
151
return
''
;
152
}
153
154
return
Html::rawElement(
'div'
,
155
[
'class'
=>
'mw-htmlform-submit-buttons'
],
"\n$buttons"
) .
"\n"
;
156
}
157
}
VFormHTMLForm\$displayFormat
string $displayFormat
Symbolic display format name.
Definition:
VFormHTMLForm.php:38
HTMLForm\$mSubmitID
$mSubmitID
Definition:
HTMLForm.php:205
VFormHTMLForm
Compact stacked vertical format for forms.
Definition:
VFormHTMLForm.php:27
Title\newMainPage
static newMainPage(MessageLocalizer $localizer=null)
Create a new Title for the Main Page.
Definition:
Title.php:649
HTMLForm\$mSubmitName
$mSubmitName
Definition:
HTMLForm.php:206
Linker\tooltipAndAccesskeyAttribs
static tooltipAndAccesskeyAttribs( $name, array $msgParams=[], $options=null)
Returns the attributes for the tooltip and access key.
Definition:
Linker.php:2195
VFormHTMLForm\getHTML
getHTML( $submitResult)
Returns the raw HTML generated by the form.
Definition:
VFormHTMLForm.php:48
ContextSource\getOutput
getOutput()
Definition:
ContextSource.php:112
VFormHTMLForm\wrapForm
wrapForm( $html)
Wrap the form innards in an actual "<form>" element.
Definition:
VFormHTMLForm.php:69
ContextSource\msg
msg( $key,... $params)
Get a Message object with context set Parameters are the same as wfMessage()
Definition:
ContextSource.php:168
VFormHTMLForm\getButtons
getButtons()
Get the submit and (potentially) reset buttons.
Definition:
VFormHTMLForm.php:74
VFormHTMLForm\loadInputFromParameters
static loadInputFromParameters( $fieldname, $descriptor, HTMLForm $parent=null)
Initialise a new Object for the field.
Definition:
VFormHTMLForm.php:40
VFormHTMLForm\$mWrapperLegend
bool $mWrapperLegend
Wrapper and its legend are never generated in VForm mode.
Definition:
VFormHTMLForm.php:32
Title
Represents a title within MediaWiki.
Definition:
Title.php:42
HTMLForm\getSubmitText
getSubmitText()
Get the text for the submit button, either customised or a default.
Definition:
HTMLForm.php:1401
VFormHTMLForm\getFormAttributes
getFormAttributes()
Get HTML attributes for the <form> tag.
Definition:
VFormHTMLForm.php:63
Xml\submitButton
static submitButton( $value, $attribs=[])
Convenience function to build an HTML submit button When $wgUseMediaWikiUIEverywhere is true it will ...
Definition:
Xml.php:459
HTMLForm
Object handling generic submission, CSRF protection, layout and other logic for UI forms in a reusabl...
Definition:
HTMLForm.php:131
includes
htmlform
VFormHTMLForm.php
Generated on Thu Dec 19 2019 14:54:22 for MediaWiki by
1.8.16