public function get_start() {

        if ($this->starttime !== null) {
            return $this->starttime;
        }

        // The field always exist but may have no valid if the course is created through a sync process.
        if (!empty($this->get_course_data()->startdate)) {
            $this->starttime = (int)$this->get_course_data()->startdate;
        } else {
            $this->starttime = 0;
        }

        return $this->starttime;
    }