/** * Returns a list of valid activities for the activity. * * @param $activity * @return array [string] * @throws \invalid_parameter_exception */ public static function get_activity_fields($activity) { $params = self::validate_parameters(self::get_activity_fields_parameters(), array('activity' => $activity)); $obj = \tool_cat\activity::create_activity($params['activity']); return $obj->get_supported_fields(); }
/** * Get data (CM). */ public function get_data() { global $DB; $context = $this->get_context(); if (!is_array($context) || !isset($context['course']) || !isset($context['section'])) { throw new \moodle_exception("Invalid activity datatype context!"); } $data = parent::get_data(); // Get the module. $module = $DB->get_record('modules', array('name' => $data->activity), '*', \MUST_EXIST); // Create our instance. $activity = \tool_cat\activity::create_activity($data->activity, serialize($data)); $instance = $activity->get_instance($context['course']); // Create the cm. return $this->create_cm($context['course'], $context['section'], $module, $instance, $data); }