public static Weight::processWeight(&$element, FormStateInterface $form_state, &$complete_form)
Expands a weight element into a select element.
File
- core/lib/Drupal/Core/Render/Element/Weight.php, line 50
Class
- Weight
- Provides a form element for input of a weight.
Namespace
Drupal\Core\Render\Element
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | public static function processWeight(& $element , FormStateInterface $form_state , & $complete_form ) { $element [ '#is_weight' ] = TRUE; $element_info_manager = \Drupal::service( 'element_info' ); // If the number of options is small enough, use a select field. $max_elements = \Drupal::config( 'system.site' )->get( 'weight_select_max' ); if ( $element [ '#delta' ] <= $max_elements ) { $element [ '#type' ] = 'select' ; $weights = array (); for ( $n = (-1 * $element [ '#delta' ]); $n <= $element [ '#delta' ]; $n ++) { $weights [ $n ] = $n ; } $element [ '#options' ] = $weights ; $element += $element_info_manager ->getInfo( 'select' ); } // Otherwise, use a text field. else { $element [ '#type' ] = 'number' ; // Use a field big enough to fit most weights. $element [ '#size' ] = 10; $element += $element_info_manager ->getInfo( 'number' ); } return $element ; } |
Please login to continue.