function opigno_class_app_views_query_alter in Opigno Class App 7
Implements hook_views_query_alter().
File
- ./
opigno_class_app.module, line 403 - Module hooks.
Code
function opigno_class_app_views_query_alter(&$view, &$query) {
//Removes the courses that are part of classes that you are part of
if ($view->name == "active_trainings") {
global $user;
$memberships = og_get_groups_by_user($user, "node");
foreach ($memberships as $membership) {
$courses = opigno_class_app_courses_of_class_that_user_is_part_of($membership);
foreach ($courses as $course) {
if (og_is_member("node", $course, 'user', $user, $states = array(
OG_STATE_ACTIVE,
))) {
unset($memberships[$course]);
}
}
}
if (!empty($memberships)) {
$view->query->where[] = array(
'conditions' => array(
array(
'field' => 'og_membership.gid',
'value' => $memberships,
'operator' => 'IN',
),
),
'args' => array(),
'type' => 'AND',
);
}
}
}