function pageviews($course_id)
 {
     global $wpdb;
     $lids = namasterep_get_lessons($course_id);
     $visits = $wpdb->get_results($wpdb->prepare("SELECT SUM(visits) as visits FROM " . NAMASTE_VISITS . " \n\t\t\tWHERE (course_id=%d OR lesson_id IN(" . implode(',', $lids) . ")) GROUP BY user_id", $course_id));
     if (empty($visits)) {
         return array(0, 0);
     }
     $total = 0;
     foreach ($visits as $visit) {
         $total += $visit->visits;
     }
     $avg = round($total / sizeof($visits), 2);
     return array($total, $avg);
 }
Exemple #2
0
 function pageviews($num_users, $course_id = 0, $lesson_id = 0)
 {
     global $wpdb;
     $course_sql = $lesson_sql = "";
     if (!empty($course_id) and empty($lesson_id)) {
         // when showing course pageviews we also include pageviews of all lessons in the course
         $lids = namasterep_get_lessons($course_id);
         $course_sql = $wpdb->prepare("AND (course_id=%d OR lesson_id IN (" . implode(',', $lids) . "))", $course_id);
     }
     if (!empty($lesson_id)) {
         $course_sql = "AND course_id = 0";
         // when pageview is on lesson, course_id = 0
         $lesson_sql = $wpdb->prepare("AND lesson_id=%d", $lesson_id);
     }
     $users = $wpdb->get_results($wpdb->prepare("SELECT tU.*, SUM(tV.visits) as pageviews FROM {$wpdb->users} tU\n\t\tJOIN " . NAMASTE_VISITS . " tV ON tV.user_id = tU.ID {$course_sql} {$lesson_sql}\n\t\tGROUP BY tU.ID ORDER BY pageviews DESC LIMIT %d", $num_users));
     return $users;
 }