function sliderfield_webform_component_render_alter in SliderField 7.2
Implements webform_component_render_alter().
File
- ./
sliderfield.module, line 300
Code
function sliderfield_webform_component_render_alter(&$element, $component) {
if ($component['type'] == 'number') {
$type = $component['extra']['type'];
if ($type == 'slider') {
module_load_include('inc', 'sliderfield', 'sliderfield_element_sliderfield');
$default = _sliderfield_field_widget_info_sliderfield();
$default = reset($default);
$default['type'] = 'sliderfield';
if ($component) {
$default['settings']['sliderfield_settings'] = array_merge($default['settings']['sliderfield_settings'], $component['extra']);
}
$instance = array(
'settings' => $default['settings'],
'widget' => $default,
);
$instance['label'] = $element['#title'];
$instance['required'] = $component['required'];
$instance['description'] = $element['#description'];
$instance['settings']['min'] = $component['extra']['min'];
$instance['settings']['max'] = $component['extra']['max'];
$special_css_class = "edit-submitted-{$component['form_key']}-forsliderfield";
$instance['widget']['settings']['sliderfield_settings']['fields_to_sync_css_selector'] = '.' . $special_css_class;
$delta = 0;
$items = array(
$delta => array(
'value' => $component['value'],
),
);
$component['extra']['type'] = 'textfield';
module_load_include('inc', 'webform', 'components/number');
$element_original = $element;
$element = _webform_render_number($component, $component['value']);
$element['#disabled'] = $component['extra']['disabled'];
$element['#theme_wrappers'] = array(
'sliderfield_webform_element',
);
$element['#attributes']['class'][] = $special_css_class;
$element['#title_display'] = 'none';
if (isset($element_original['#default_value'])) {
$element['#default_value'] = $element_original['#default_value'];
}
$element['#description'] = NULL;
$element['#type'] = 'hidden';
$element['#wrapper_attributes']['class'][] = 'sliderfield';
$element['#wrapper_attributes']['class'][] = 'webform-sliderfield';
$element['#webform_component'] = $element_original['#webform_component'];
$form = array();
$form_state = array();
$element_new = _sliderfield_field_widget_form($form, $form_state, NULL, $instance, NULL, $items, $delta, $element);
$element['value_field'] = $element_new['value'];
$element['value_field']['#parents'] = array(
'__sliderfield',
'submitted',
$component['form_key'],
);
if (isset($element_new['#default_value'])) {
$element['value_field']['#default_value'] = $element_new['#default_value'];
}
if ($element_original['#title_display'] == 'inline') {
$element['value_field']['#title_display'] = 'none';
//$element_original['#title_display'];
$element['#title'] = $element_original['#title'];
$element['#title_display'] = $element_original['#title_display'];
}
else {
$element['value_field']['#title_display'] = $element_original['#title_display'];
}
}
}
}