aboutsummaryrefslogtreecommitdiff
path: root/classes
diff options
context:
space:
mode:
Diffstat (limited to 'classes')
-rw-r--r--classes/local/record.php45
1 files changed, 45 insertions, 0 deletions
diff --git a/classes/local/record.php b/classes/local/record.php
index 29dadce..3e74571 100644
--- a/classes/local/record.php
+++ b/classes/local/record.php
@@ -20,6 +20,10 @@ defined('MOODLE_INTERNAL') || die();
use stdClass;
use function defined;
+use function is_array;
+use function is_bool;
+use function is_int;
+use function is_string;
/**
* It's a class description record.
@@ -77,4 +81,45 @@ final class record extends stdClass {
* @var string
*/
public $token;
+
+ /**
+ * Classes constructor.
+ *
+ * @param array|null $conditions
+ */
+ public function __construct(array $conditions = null) {
+ if (isset($conditions['events']) && is_array($conditions['events'])) {
+ $this->events = [];
+
+ foreach ($conditions['events'] as $event) {
+ if (is_string($event)) {
+ $this->events[] = $event;
+ }
+ }
+ }
+
+ if (isset($conditions['header']) && is_string($conditions['header'])) {
+ $this->header = $conditions['header'];
+ }
+
+ if (isset($conditions['id']) && is_int($conditions['id'])) {
+ $this->id = $conditions['id'];
+ }
+
+ if (isset($conditions['name']) && is_string($conditions['name'])) {
+ $this->name = $conditions['name'];
+ }
+
+ if (isset($conditions['point']) && is_string($conditions['point'])) {
+ $this->point = $conditions['point'];
+ }
+
+ if (isset($conditions['status']) && is_bool($conditions['status'])) {
+ $this->status = $conditions['status'];
+ }
+
+ if (isset($conditions['token']) && is_string($conditions['token'])) {
+ $this->token = $conditions['token'];
+ }
+ }
} \ No newline at end of file