MDL-36088 questions: Add new events
[moodle.git] / lib / classes / event / questions_imported.php
index 875aa46..d774c40 100644 (file)
@@ -18,7 +18,7 @@
  * Questions imported event.
  *
  * @package    core
  * Questions imported event.
  *
  * @package    core
- * @copyright  2016 Stephen Bourget
+ * @copyright  2019 Stephen Bourget
  * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  */
 
  * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  */
 
@@ -29,9 +29,16 @@ defined('MOODLE_INTERNAL') || die();
 /**
  * Question category imported event class.
  *
 /**
  * Question category imported event class.
  *
+ * @property-read array $other {
+ *      Extra information about the event.
+ *
+ *      - int categoryid: The ID of the category where the question resides
+ *      - string format: The format of file import
+ * }
+ *
  * @package    core
  * @package    core
- * @since      Moodle 3.2
- * @copyright  2016 Stephen Bourget
+ * @since      Moodle 3.7
+ * @copyright  2019 Stephen Bourget
  * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  */
 class questions_imported extends question_base {
  * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  */
 class questions_imported extends question_base {
@@ -59,8 +66,8 @@ class questions_imported extends question_base {
      * @return string
      */
     public function get_description() {
      * @return string
      */
     public function get_description() {
-        return "The user with id '$this->userid' imported questions in '". $this->other['format'].
-                "' format into the category with id '".$this->other['categoryid']."'.";
+        return "The user with id '$this->userid' imported questions in '" . $this->other['format'] .
+                "' format into the category with id '" . $this->other['categoryid'] . "'.";
     }
 
     /**
     }
 
     /**
@@ -72,25 +79,24 @@ class questions_imported extends question_base {
         if ($this->courseid) {
             $cat = $this->other['categoryid'] . ',' . $this->contextid;
             if ($this->contextlevel == CONTEXT_MODULE) {
         if ($this->courseid) {
             $cat = $this->other['categoryid'] . ',' . $this->contextid;
             if ($this->contextlevel == CONTEXT_MODULE) {
-                return new \moodle_url('/question/edit.php', array('cmid' => $this->contextinstanceid, 'cat' => $cat));
+                return new \moodle_url('/question/edit.php', ['cmid' => $this->contextinstanceid, 'cat' => $cat]);
             }
             }
-            return new \moodle_url('/question/edit.php', array('courseid' => $this->courseid, 'cat' => $cat));
+            return new \moodle_url('/question/edit.php', ['courseid' => $this->courseid, 'cat' => $cat]);
         }
         }
-        return new \moodle_url('/question/category.php', array('courseid' => SITEID, 'edit' => $this->other['categoryid']));
+        return new \moodle_url('/question/category.php', ['courseid' => SITEID, 'edit' => $this->other['categoryid']]);
     }
 
     /**
      * Custom validations.
      *
     }
 
     /**
      * Custom validations.
      *
+     * other['categoryid'] and other['format'] is required.
+     *
      * @throws \coding_exception
      * @return void
      */
     protected function validate_data() {
         parent::validate_data();
 
      * @throws \coding_exception
      * @return void
      */
     protected function validate_data() {
         parent::validate_data();
 
-        if (!isset($this->other['categoryid'])) {
-            throw new \coding_exception('The \'categoryid\' must be set in \'other\'.');
-        }
         if (!isset($this->other['format'])) {
             throw new \coding_exception('The \'format\' must be set in \'other\'.');
         }
         if (!isset($this->other['format'])) {
             throw new \coding_exception('The \'format\' must be set in \'other\'.');
         }
@@ -104,6 +110,6 @@ class questions_imported extends question_base {
      */
     public static function get_objectid_mapping() {
         // No mappings.
      */
     public static function get_objectid_mapping() {
         // No mappings.
-        return array();
+        return [];
     }
 }
     }
 }