function campaignmonitor_registration_form_user_register_submit in Campaign Monitor 7
Same name and namespace in other branches
- 8.2 modules/campaignmonitor_registration/campaignmonitor_registration.module \campaignmonitor_registration_form_user_register_submit()
- 8 modules/campaignmonitor_registration/campaignmonitor_registration.module \campaignmonitor_registration_form_user_register_submit()
Submission form handler.
Information about the selected list will be submitted to Campaign Monitor.
1 string reference to 'campaignmonitor_registration_form_user_register_submit'
- campaignmonitor_registration_form_user_register_form_alter in modules/
campaignmonitor_registration/ campaignmonitor_registration.module - Implements hook_form_FORM_ID_alter().
File
- modules/
campaignmonitor_registration/ campaignmonitor_registration.module, line 63 - Newsletter subscription for users on the registration page.
Code
function campaignmonitor_registration_form_user_register_submit($form, &$form_state) {
if (isset($form_state['values']['campaignmonitor_lists']) && !form_get_errors()) {
// Get connected to the API and get lists.
$cm = CampaignMonitor::getConnector();
$lists_info = $cm
->getLists();
// Find the selected lists, if any.
foreach ($form_state['values']['campaignmonitor_lists'] as $list_id => $selected) {
if ($selected) {
// Try to subscribe to the list.
if (!$cm
->subscribe($list_id, check_plain($form_state['values']['mail']), check_plain($form_state['values']['name']))) {
form_set_error('', t('You were not subscribed to the list. Please try again later.'));
$form_state['redirect'] = FALSE;
return FALSE;
}
drupal_set_message(t('You are now subscribed to the "@list" list.', [
'@list' => $lists_info[$list_id]['name'],
]), 'status');
}
}
// Remove it from the form before the submit functions take over (might not
// be needed).
unset($form_state['values']['campaignmonitor_lists']);
}
}