*
* @param $subPage string|null
*/
- public final function run( $subPage ) {
+ final public function run( $subPage ) {
/**
* Gets called before @see SpecialPage::execute.
*
foreach ( $wgFeedClasses as $format => $class ) {
$theseParams = $params + array( 'feedformat' => $format );
- $url = $feedTemplate . wfArrayToCGI( $theseParams );
+ $url = $feedTemplate . wfArrayToCgi( $theseParams );
$this->getOutput()->addFeedLink( $format, $url );
}
}
* Get an HTMLForm descriptor array
* @return Array
*/
- protected abstract function getFormFields();
+ abstract protected function getFormFields();
/**
* Add pre- or post-text to the form
*/
protected function alterForm( HTMLForm $form ) {}
+ /**
+ * Get message prefix for HTMLForm
+ *
+ * @since 1.21
+ * @return string
+ */
+ protected function getMessagePrefix() {
+ return strtolower( $this->getName() );
+ }
+
/**
* Get the HTMLForm to control behaviour
* @return HTMLForm|null
protected function getForm() {
$this->fields = $this->getFormFields();
- $form = new HTMLForm( $this->fields, $this->getContext() );
+ $form = new HTMLForm( $this->fields, $this->getContext(), $this->getMessagePrefix() );
$form->setSubmitCallback( array( $this, 'onSubmit' ) );
- $form->setWrapperLegend( $this->msg( strtolower( $this->getName() ) . '-legend' ) );
+ $form->setWrapperLegend( $this->msg( $this->getMessagePrefix() . '-legend' ) );
$form->addHeaderText(
- $this->msg( strtolower( $this->getName() ) . '-text' )->parseAsBlock() );
+ $this->msg( $this->getMessagePrefix() . '-text' )->parseAsBlock() );
// Retain query parameters (uselang etc)
$params = array_diff_key(
$this->getRequest()->getQueryValues(), array( 'title' => null ) );
- $form->addHiddenField( 'redirectparams', wfArrayToCGI( $params ) );
+ $form->addHiddenField( 'redirectparams', wfArrayToCgi( $params ) );
$form->addPreText( $this->preText() );
$form->addPostText( $this->postText() );
* @param $data Array
* @return Bool|Array true for success, false for didn't-try, array of errors on failure
*/
- public abstract function onSubmit( array $data );
+ abstract public function onSubmit( array $data );
/**
* Do something exciting on successful processing of the form, most likely to show a
* confirmation message
*/
- public abstract function onSuccess();
+ abstract public function onSuccess();
/**
* Basic SpecialPage workflow: get a form, send it to the user; get some data back,
// Redirect to index.php with query parameters
} elseif ( $redirect === true ) {
global $wgScript;
- $url = $wgScript . '?' . wfArrayToCGI( $query );
+ $url = $wgScript . '?' . wfArrayToCgi( $query );
$this->getOutput()->redirect( $url );
return $redirect;
} else {