function mailing_list_subscription_form_submit in Mailing List 7
Same name and namespace in other branches
- 6 mailing_list.module \mailing_list_subscription_form_submit()
Submit handler for the subscription form; saves a subscription.
1 string reference to 'mailing_list_subscription_form_submit'
- mailing_list_subscription_form in ./
mailing_list.module - Display a form letting a user subscribe to a mailing list.
File
- ./
mailing_list.module, line 484 - Minimalistic mailing list module.
Code
function mailing_list_subscription_form_submit($form, &$form_state) {
$is_edit = FALSE;
$admin = FALSE;
if (user_access('administer mailing lists')) {
$admin = TRUE;
$is_edit = !empty($form_state['values']['eid']);
}
if ($form_state['values']['mlid'] == null) {
drupal_set_message(t('Unable to save mailing list subscription: no mailing list specified.'), 'error');
return;
}
$mle = new StdClass();
$mle->mlid = $form_state['values']['mlid'];
$mle->mail = $form_state['values']['mail'];
$mle->name = $form_state['values']['name'];
if ($is_edit) {
$mle->eid = $form_state['values']['eid'];
}
if (mailing_list_email_save($mle)) {
if ($admin) {
if ($is_edit) {
drupal_set_message('<span class="mailing-list-subscription-message">' . t(variable_get('mailing_list_message_admin_email_edited', "%name <%mail> updated."), array(
'%name' => $form_state['values']['name'],
'%mail' => $form_state['values']['mail'],
)) . '</span>');
return;
}
global $user;
drupal_set_message('<span class="mailing-list-subscription-message">' . t(variable_get('mailing_list_message_admin_email_added', "Submission confirmed: %admin added %name <%mail> to list %list."), array(
'%name' => $form_state['values']['name'],
'%mail' => $form_state['values']['mail'],
'%admin' => $user->name,
'%list' => $form_state['values']['ml_name'],
)) . '</span>');
return;
}
drupal_set_message('<span class="mailing-list-subscription-message">' . t(variable_get('mailing_list_subscription_message', MAILING_LIST_MESSAGE_SUBSCRIPTION), array(
'%name' => $form_state['values']['name'],
'%mail' => $form_state['values']['mail'],
)) . '</span>');
watchdog('mailing_list', 'Mailing list: %name added via subscription form.', array(
'%name' => $form_state['values']['mail'],
));
}
else {
drupal_set_message(t('Failed to subscribe to mailing list %name.', array(
'%name' => $form_state['values']['ml_name'],
)), 'error');
}
}