function uc_recurring_subscription_ca_predicate in UC Recurring Payments and Subscriptions 6.2
Same name and namespace in other branches
- 7.2 modules/uc_recurring_subscription/uc_recurring_subscription.ca.inc \uc_recurring_subscription_ca_predicate()
Implementation of hook_ca_predicate().
File
- modules/
uc_recurring_subscription/ uc_recurring_subscription.ca.inc, line 94
Code
function uc_recurring_subscription_ca_predicate() {
$predicates = array();
// Grant user roles to user when checkout is complete.
$predicates['uc_recurring_subscription_grant_roles'] = array(
'#title' => t('Grant user roles on subscription created.'),
'#trigger' => 'uc_order_status_update',
'#class' => 'roles',
'#status' => 1,
'#weight' => 1,
'#conditions' => array(
'#operator' => 'AND',
'#conditions' => array(
array(
'#name' => 'uc_order_status_condition',
'#title' => t('If order status is completes.'),
'#argument_map' => array(
'order' => 'updated_order',
),
'#settings' => array(
'negate' => FALSE,
'order_status' => 'completed',
),
),
),
),
'#actions' => array(
array(
'#name' => 'uc_recurring_subscription_grant_role',
'#title' => t('Grant user role(s).'),
'#argument_map' => array(
'order' => 'order',
),
'#settings' => array(
'role_option' => 'subscribe_grant',
'role' => array(),
),
),
),
);
// Grant user roles to user when subscription expires.
$predicates['uc_recurring_subscription_expired_grant_roles'] = array(
'#title' => t('Grant user roles on subscription expiration.'),
'#trigger' => 'uc_recurring_renewal_expired',
'#class' => 'roles',
'#status' => 1,
'#weight' => 1,
'#conditions' => array(
'#operator' => 'AND',
'#conditions' => array(),
),
'#actions' => array(
array(
'#name' => 'uc_recurring_subscription_grant_role',
'#title' => t('Grant user role(s).'),
'#argument_map' => array(
'order' => 'order',
),
'#settings' => array(
'role_option' => 'expire_grant',
'role' => array(),
),
),
),
);
// Revoke user roles to user when subscription expires.
$predicates['uc_recurring_subscription_expired_revoke_roles'] = array(
'#title' => t('Revoke user roles on subscription expiration.'),
'#trigger' => 'uc_recurring_renewal_expired',
'#class' => 'roles',
'#status' => 1,
'#weight' => 1,
'#conditions' => array(
'#operator' => 'AND',
'#conditions' => array(),
),
'#actions' => array(
array(
'#name' => 'uc_recurring_subscription_revoke_role',
'#title' => t('Revoke user role(s).'),
'#argument_map' => array(
'order' => 'order',
),
'#settings' => array(
'role_option' => 'expire_revoke',
'role' => array(),
),
),
),
);
// Grant organic groups to user when checkout is complete.
if (module_exists('og_actions')) {
$predicates['uc_recurring_subscription_grant_og'] = array(
'#title' => t('Grant organic groups on subscription created.'),
'#trigger' => 'uc_order_status_update',
'#class' => 'og',
'#status' => 1,
'#weight' => 1,
'#conditions' => array(
'#operator' => 'AND',
'#conditions' => array(
array(
'#name' => 'uc_order_status_condition',
'#title' => t('If order status is completes.'),
'#argument_map' => array(
'order' => 'updated_order',
),
'#settings' => array(
'negate' => FALSE,
'order_status' => 'completed',
),
),
),
),
'#actions' => array(
array(
'#name' => 'uc_recurring_subscription_grant_og',
'#title' => t('Grant groups on subscribe.'),
'#argument_map' => array(
'order' => 'order',
),
'#settings' => array(
'group_option' => 'subscribe_grant_og',
'groups' => array(),
),
),
),
);
// Grant organic groups to user when subscription expires.
$predicates['uc_recurring_subscription_expired_grant_og'] = array(
'#title' => t('Grant organic groups on subscription expiration.'),
'#trigger' => 'uc_recurring_renewal_expired',
'#class' => 'og',
'#status' => 1,
'#weight' => 1,
'#conditions' => array(
'#operator' => 'AND',
'#conditions' => array(),
),
'#actions' => array(
array(
'#name' => 'uc_recurring_subscription_grant_og',
'#title' => t('Grant groups on expire.'),
'#argument_map' => array(
'order' => 'order',
),
'#settings' => array(
'group_option' => '',
'groups' => array(),
),
),
),
);
// Revoke user roles to user when subscription expires.
$predicates['uc_recurring_subscription_expired_revoke_og'] = array(
'#title' => t('Revoke organic groups on subscription expiration.'),
'#trigger' => 'uc_recurring_renewal_expired',
'#class' => 'og',
'#status' => 1,
'#weight' => 1,
'#conditions' => array(
'#operator' => 'AND',
'#conditions' => array(),
),
'#actions' => array(
array(
'#name' => 'uc_recurring_subscription_revoke_og',
'#title' => t('Revoke groups on expire.'),
'#argument_map' => array(
'order' => 'order',
),
'#settings' => array(
'group_option' => 'expire_revoke_og',
'groups' => array(),
),
),
),
);
}
return $predicates;
}