function campaignmonitor_user_get_user_subscriptions in Campaign Monitor 8
Helper function to get a user's subscriptions.
Parameters
$email:
$format: Return value depends on format requested
Return value
array
3 calls to campaignmonitor_user_get_user_subscriptions()
- CampaignMonitorUserController::subscriptionPage in modules/
campaignmonitor_user/ src/ Controller/ CampaignMonitorUserController.php - View subscriptions.
- campaignmonitor_local_subscription_queue in modules/
campaignmonitor_local/ campaignmonitor_local.batch.inc - Add missing field values.
- SubscriptionsQueue::processItem in modules/
campaignmonitor_local/ src/ Plugin/ QueueWorker/ SubscriptionsQueue.php - Works on a single queue item.
File
- modules/
campaignmonitor_user/ campaignmonitor_user.module, line 18 - Adds a tab to the profile page that enables users to select which newsletters they want to subscribe to.
Code
function campaignmonitor_user_get_user_subscriptions($email, $format = 'checkboxes') {
$lists = campaignmonitor_get_lists();
// Build options for the form selector.
$options = [];
$default = [];
foreach ($lists as $list_id => $list) {
// Check if the list is selected to be shown.
$list_options = campaignmonitor_get_list_settings($list_id);
if (campaignmonitor_is_list_enabled($list_id)) {
// Check if the user is subscribed to the current list.
$default[$list_id] = 0;
if (campaignmonitor_is_subscribed($list_id, $email)) {
$default[$list_id] = $list_id;
$options[$list_id] = $list['name'];
}
}
}
switch ($format) {
case 'checkboxes':
return $default;
default:
return $options;
}
}