function _sliderfield_process in SliderField 7
Helper function to add jQuery.UI Sliderfield widget to textfield.
1 string reference to '_sliderfield_process'
- sliderfield_field_widget_form in ./
sliderfield.module - Implements hook_field_widget_form().
File
- ./
sliderfield.module, line 65 - Defines a Slider widget for use with decimal, number, and float fields.
Code
function _sliderfield_process($element, &$form_state, $form) {
$instance = field_widget_instance($element, $form_state);
$widget_settings = $instance['widget']['settings'];
$settings = array();
switch ($instance['widget']['type']) {
case 'sliderfield_adjust':
$settings += array(
'adjust' => isset($widget_settings['sliderfield_adjust_field']) ? drupal_clean_css_identifier($widget_settings['sliderfield_adjust_field']) : '',
);
// DELIBERATE fall-through: From here on the sliderfield_adjust widget is
// exactly the same as sliderfield_basic.
case 'sliderfield_basic':
$element['#suffix'] = '<div class="sliderfield-slider"></div>';
$element['#attributes']['class'][] = "edit-sliderfield-slider";
// Add supporting javascript library.
$element['#attached']['library'] = array(
array(
'system',
'ui.slider',
),
);
// Add javascript to trigger the slider.
$element['#attached']['js'][] = drupal_get_path('module', 'sliderfield') . '/sliderfield.js';
// Add basic javascript settings.
$settings += array(
'step' => $widget_settings['step'] ? $widget_settings['step'] : 1,
'min' => $instance['settings']['min'],
'max' => $instance['settings']['max'],
'val' => $element['#value'] ? $element['#value'] : $instance['settings']['min'],
);
// Add the complete set of javascript settings
$settings = array(
$element['#id'] => $settings,
);
$element['#attached']['js'][] = array(
'data' => array(
'sliderfield' => $settings,
),
'type' => 'setting',
'scope' => 'header',
);
break;
}
return $element;
}