wiki.techinc.nl/includes/widget/SelectWithInputWidget.php
Umherirrender 3f1a52805e Use short type bool/int in param documentation
Enable the phpcs sniffs for this and used phpcbf

Change-Id: Iaa36687154ddd2bf663b9dd519f5c99409d37925
2017-08-20 13:20:59 +02:00

65 lines
1.8 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
/**
* MediaWiki Widgets SelectWithInputWidget class.
*
* @copyright 2011-2017 MediaWiki Widgets Team and others; see AUTHORS.txt
* @license The MIT License (MIT); see LICENSE.txt
*/
namespace MediaWiki\Widget;
use \OOUI\TextInputWidget;
use \OOUI\DropdownInputWidget;
/**
* Select and input widget.
*/
class SelectWithInputWidget extends \OOUI\Widget {
protected $textinput = null;
protected $dropdowninput = null;
/**
* A version of the SelectWithInputWidget, with `or` set to true.
*
* @param array $config Configuration options
* @param array $config['textinput'] Configuration for the TextInputWidget
* @param array $config['dropdowninput'] Configuration for the DropdownInputWidget
* @param bool $config['or'] Configuration for whether the widget is dropdown AND input
* or dropdown OR input
*/
public function __construct( array $config = [] ) {
// Configuration initialization
$config = array_merge(
[
'textinput' => [],
'dropdowninput' => [],
'or' => false
],
$config
);
// Parent constructor
parent::__construct( $config );
// Properties
$this->config = $config;
$this->textinput = new TextInputWidget( $config['textinput'] );
$this->dropdowninput = new DropdownInputWidget( $config['dropdowninput'] );
// Initialization
$this
->addClasses( [ 'mw-widget-selectWithInputWidget' ] )
->appendContent( $this->dropdowninput, $this->textinput );
}
protected function getJavaScriptClassName() {
return 'mw.widgets.SelectWithInputWidget';
}
public function getConfig( &$config ) {
$config['textinput'] = $this->config['textinput'];
$config['dropdowninput'] = $this->config['dropdowninput'];
$config['or'] = $this->config['or'];
return parent::getConfig( $config );
}
}