Example #1
0
 /**
  * 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();
 }
Example #2
0
 /**
  * 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);
 }