You are here

function opigno_quiz_app_course_get_last_viewed in Opigno Quiz App 7

Gets the latest lesson the user has been in.

Parameters

int $course_nid: Course nid.

int $uid: User uid.

2 calls to opigno_quiz_app_course_get_last_viewed()
opigno_quiz_app_course_is_started in ./opigno_quiz_app.module
Helper function to know if a course is started or not by a user.
opigno_quiz_app_course_resume_get_path in ./opigno_quiz_app.module

File

./opigno_quiz_app.module, line 213
Module file. Defines module hooks.

Code

function opigno_quiz_app_course_get_last_viewed($course_nid, $uid) {
  $result = db_select('opigno_quiz_app_course_latest_viewed', 'lv');
  $result
    ->leftJoin('og_membership', 'ogm', 'ogm.etid = lv.quiz_nid');
  $result
    ->leftJoin('node', 'n', 'n.nid = lv.quiz_nid');
  $result = $result
    ->fields('lv', array(
    'quiz_nid',
    'result_id',
  ))
    ->fields('ogm', array(
    'gid',
  ))
    ->fields('n', array(
    'nid',
  ))
    ->condition('lv.course_nid', $course_nid)
    ->condition('lv.uid', $uid)
    ->condition('ogm.group_type', 'node')
    ->condition('ogm.gid', $course_nid)
    ->condition('ogm.state', 1)
    ->condition('ogm.field_name', 'og_group_ref')
    ->condition('n.status', 1)
    ->execute()
    ->fetchAssoc();
  return empty($result) ? 0 : $result;
}