function _webform_render_mailchimp in Webform Mailchimp 7.4
Same name and namespace in other branches
- 6 webform_mailchimp.inc \_webform_render_mailchimp()
- 7 webform_mailchimp.inc \_webform_render_mailchimp()
- 7.2 webform_mailchimp.inc \_webform_render_mailchimp()
Implements _webform_render_component().
File
- ./
webform_mailchimp.inc, line 183 - Webform module Mailchimp component.
Code
function _webform_render_mailchimp($component, $value = NULL, $filter = TRUE) {
if ($value[0]) {
$default_value = $value[0];
}
else {
$default_value = _webform_filter_values($component['value']);
}
$element = array();
// Creates a field if the user hasn't chosen another email field.
if ($component['extra']['use_existing_email_field'] == 'mailchimp_field') {
$element['mailchimp_email_address'] = array(
'#type' => 'textfield',
'#title' => $filter ? _webform_filter_xss($component['name']) : $component['name'],
'#title_display' => $component['extra']['title_display'] ? $component['extra']['title_display'] : 'before',
'#required' => $component['mandatory'],
'#description' => $filter ? _webform_filter_descriptions($component['extra']['description']) : $component['extra']['description'],
'#default_value' => _webform_filter_values($component['value']),
'#theme_wrappers' => array(
'webform_element',
),
'#webform_component' => $component,
'#weight' => $component['weight'],
);
}
else {
// Creates a checkbox to subscribe, or a hidden form element if configured.
if ($component['extra']['checkbox_hidden'] == 1) {
$element['mailchimp_signup'] = array(
'#type' => 'hidden',
'#default_value' => !empty($component['extra']['checkbox_checked_by_default']) ? $component['extra']['checkbox_checked_by_default'] : 0,
);
}
else {
$element['mailchimp_signup'] = array(
'#type' => 'checkbox',
'#title' => !empty($component['extra']['checkbox_label']) ? _webform_filter_xss($component['extra']['checkbox_label']) : t('Subscribe to newsletter'),
'#default_value' => !empty($component['extra']['checkbox_checked_by_default']) ? $component['extra']['checkbox_checked_by_default'] : 0,
'#description' => $filter ? _webform_filter_descriptions($component['extra']['description']) : $component['extra']['description'],
'#theme_wrappers' => array(
'webform_element',
),
'#webform_component' => $component,
'#weight' => $component['weight'],
);
}
}
$mailchimp_list = $component['extra']['mailchimp_list'];
$element['mailchimp_list'] = array(
'#prefix' => '',
'#type' => 'value',
'#value' => $mailchimp_list,
);
$element['#weight'] = $component['weight'];
return $element;
}