function course_uc_init in Course 3.x
Same name and namespace in other branches
- 8.3 modules/course_uc/course_uc.module \course_uc_init()
- 8.2 modules/course_uc/course_uc.module \course_uc_init()
- 6 modules/course_uc/course_uc.module \course_uc_init()
- 7.2 modules/course_uc/course_uc.module \course_uc_init()
- 7 modules/course_uc/course_uc.module \course_uc_init()
Implements hook_init().
File
- modules/
course_uc/ course_uc.module, line 166
Code
function course_uc_init() {
// Look at the cart and remove courses where user now does not have access.
$user = Drupal::currentUser();
$cart = uc_cart_get_contents();
foreach ($cart as $node) {
if (course_node_is_course($node)) {
$results = course_access_course('enroll', $node, $user, FALSE, TRUE);
if (count($results) > 1) {
// There's always going to be one blocker, the purchase blocker.
unset($results['course_must_purchase']);
$result = reset($results);
Drupal::database()
->query("DELETE FROM {uc_cart_products} WHERE nid = :nid and cart_id = :uid", array(
':nid' => $node
->id(),
':uid' => $user->uid,
));
uc_cart_get_contents(NULL, 'rebuild');
\Drupal::messenger()
->addWarning(t('The activity "!title" was removed from your cart. !message', array(
'!title' => l($node->title, "node/{$node->id}()"),
'!message' => $result['message'],
)));
}
}
}
}