From 552568c63d931a01144f07eb04fe5877fb4b8243 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Bartosz=20Dziewo=C5=84ski?= Date: Sun, 14 Jun 2015 20:09:52 +0200 Subject: [PATCH] OOUIHTMLForm: Correctly handle submit modifier flags Rejigger some HTMLForm internals to remove the hardcoded assumption of using 'mw-ui' classes. Bug: T98903 Change-Id: Icc20453c999c761b87e19a71ccd43d93b9c1bfa7 --- includes/htmlform/HTMLForm.php | 8 ++++---- includes/htmlform/OOUIHTMLForm.php | 8 ++------ includes/htmlform/VFormHTMLForm.php | 2 +- 3 files changed, 7 insertions(+), 11 deletions(-) diff --git a/includes/htmlform/HTMLForm.php b/includes/htmlform/HTMLForm.php index 65fc0e885c..702651ea83 100644 --- a/includes/htmlform/HTMLForm.php +++ b/includes/htmlform/HTMLForm.php @@ -165,7 +165,7 @@ class HTMLForm extends ContextSource { protected $mFieldTree; protected $mShowReset = false; protected $mShowSubmit = true; - protected $mSubmitModifierClass = 'mw-ui-constructive'; + protected $mSubmitFlag = 'constructive'; protected $mSubmitCallback; protected $mValidationErrorMessage; @@ -972,7 +972,7 @@ class HTMLForm extends ContextSource { $attribs['class'] = array( 'mw-htmlform-submit' ); if ( $useMediaWikiUIEverywhere ) { - array_push( $attribs['class'], 'mw-ui-button', $this->mSubmitModifierClass ); + array_push( $attribs['class'], 'mw-ui-button', 'mw-ui-' . $this->mSubmitFlag ); } $buttons .= Xml::submitButton( $this->getSubmitText(), $attribs ) . "\n"; @@ -1099,7 +1099,7 @@ class HTMLForm extends ContextSource { * @since 1.24 */ public function setSubmitDestructive() { - $this->mSubmitModifierClass = 'mw-ui-destructive'; + $this->mSubmitFlag = 'destructive'; } /** @@ -1107,7 +1107,7 @@ class HTMLForm extends ContextSource { * @since 1.25 */ public function setSubmitProgressive() { - $this->mSubmitModifierClass = 'mw-ui-progressive'; + $this->mSubmitFlag = 'progressive'; } /** diff --git a/includes/htmlform/OOUIHTMLForm.php b/includes/htmlform/OOUIHTMLForm.php index 056591aad1..1ac7956e52 100644 --- a/includes/htmlform/OOUIHTMLForm.php +++ b/includes/htmlform/OOUIHTMLForm.php @@ -68,15 +68,11 @@ class OOUIHTMLForm extends HTMLForm { $attribs += Linker::tooltipAndAccesskeyAttribs( $this->mSubmitTooltip ); } - $attribs['classes'] = array( - 'mw-htmlform-submit', - $this->mSubmitModifierClass, - ); - + $attribs['classes'] = array( 'mw-htmlform-submit' ); $attribs['type'] = 'submit'; $attribs['label'] = $this->getSubmitText(); $attribs['value'] = $this->getSubmitText(); - $attribs['flags'] = array( 'primary', 'constructive' ); + $attribs['flags'] = array( $this->mSubmitFlag ); $buttons .= new OOUI\ButtonInputWidget( $attribs ); } diff --git a/includes/htmlform/VFormHTMLForm.php b/includes/htmlform/VFormHTMLForm.php index 0c0e425209..f1fd05d653 100644 --- a/includes/htmlform/VFormHTMLForm.php +++ b/includes/htmlform/VFormHTMLForm.php @@ -95,7 +95,7 @@ class VFormHTMLForm extends HTMLForm { $attribs['class'] = array( 'mw-htmlform-submit', 'mw-ui-button mw-ui-big mw-ui-block', - $this->mSubmitModifierClass, + 'mw-ui-' . $this->mSubmitFlag, ); $buttons .= Xml::submitButton( $this->getSubmitText(), $attribs ) . "\n"; -- 2.20.1