Merge "parser: use 'vary-revision-sha1' in Parser::statelessFetchTemplate"
[lhc/web/wiklou.git] / includes / widget / SelectWithInputWidget.php
index 262903d..a946653 100644 (file)
@@ -23,7 +23,8 @@ class SelectWithInputWidget extends \OOUI\Widget {
         *   - array $config['textinput'] Configuration for the TextInputWidget
         *   - array $config['dropdowninput'] Configuration for the DropdownInputWidget
         *   - bool $config['or'] Configuration for whether the widget is dropdown AND input
-        *                              or dropdown OR input
+        *       or dropdown OR input
+        *   - bool $config['required'] Configuration for whether the widget is a required input.
         */
        public function __construct( array $config = [] ) {
                // Configuration initialization
@@ -31,16 +32,20 @@ class SelectWithInputWidget extends \OOUI\Widget {
                        [
                                'textinput' => [],
                                'dropdowninput' => [],
-                               'or' => false
+                               'or' => false,
+                               'required' => false,
                        ],
                        $config
                );
 
-               if ( isset( $config['disabled'] ) && $config['disabled'] == true ) {
+               if ( isset( $config['disabled'] ) && $config['disabled'] ) {
                        $config['textinput']['disabled'] = true;
                        $config['dropdowninput']['disabled'] = true;
                }
 
+               $config['textinput']['required'] = $config['or'] ? false : $config['required'];
+               $config['dropdowninput']['required'] = $config['required'];
+
                parent::__construct( $config );
 
                // Properties
@@ -63,6 +68,7 @@ class SelectWithInputWidget extends \OOUI\Widget {
                $config['dropdowninput'] = $this->config['dropdowninput'];
                $config['dropdowninput']['dropdown']['$overlay'] = true;
                $config['or'] = $this->config['or'];
+               $config['required'] = $this->config['required'];
                return parent::getConfig( $config );
        }
 }