function uc_recurring_subscription_action_revoke_og in UC Recurring Payments and Subscriptions 7.2
Same name and namespace in other branches
- 6.2 modules/uc_recurring_subscription/uc_recurring_subscription.ca.inc \uc_recurring_subscription_action_revoke_og()
Revoke user organic groups.
1 string reference to 'uc_recurring_subscription_action_revoke_og'
- uc_recurring_subscription_ca_action in modules/
uc_recurring_subscription/ uc_recurring_subscription.ca.inc - Implementation of hook_ca_action().
File
- modules/
uc_recurring_subscription/ uc_recurring_subscription.ca.inc, line 457
Code
function uc_recurring_subscription_action_revoke_og($order, $settings) {
// Load user.
if (!$order->uid || !($account = user_load($order->uid))) {
return;
}
if ($settings['group_option'] == 'custom' && is_array($settings['groups']) && !empty($settings['groups'])) {
og_unsubscribe_user_action($account, $settings['groups']);
}
else {
foreach ($order->products as $pid => $product) {
$subscription = uc_recurring_subscription_load($product->nid);
$context['groups'] = $subscription->access[$settings['group_option']];
if (is_array($context['groups']) && !empty($context['groups'])) {
og_unsubscribe_user_action($account, $context);
$comment = t('User access revoked for group(s): %group.', array(
'%group' => implode(',', $context['groups']),
));
uc_order_comment_save($order->order_id, $account->uid, $comment);
}
}
}
}