/**
  * Build the attendances
  * @param int $session_id Internal session ID
  * @param int $courseId Internal course ID
  * @param bool $with_base_content Whether to include content from the course without session or not
  * @param array $id_list If you want to restrict the structure to only the given IDs
  */
 public function build_attendance($session_id = 0, $courseId = 0, $with_base_content = false, $id_list = array())
 {
     $table_attendance = Database::get_course_table(TABLE_ATTENDANCE);
     $table_attendance_calendar = Database::get_course_table(TABLE_ATTENDANCE_CALENDAR);
     $sessionCondition = api_get_session_condition($session_id, true, $with_base_content);
     $sql = 'SELECT * FROM ' . $table_attendance . '
             WHERE c_id = ' . $courseId . ' ' . $sessionCondition;
     $db_result = Database::query($sql);
     while ($row = Database::fetch_array($db_result, 'ASSOC')) {
         $obj = new Attendance($row);
         $sql = 'SELECT * FROM ' . $table_attendance_calendar . '
                 WHERE c_id = ' . $courseId . ' AND attendance_id = ' . $row['id'];
         $result = Database::query($sql);
         while ($sub_row = Database::fetch_array($result, 'ASSOC')) {
             $obj->add_attendance_calendar($sub_row);
         }
         $this->course->add_resource($obj);
     }
 }