diff --git a/lib/classes/oauth2/api.php b/lib/classes/oauth2/api.php index c6aece1b0e8..9b9b0c08958 100644 --- a/lib/classes/oauth2/api.php +++ b/lib/classes/oauth2/api.php @@ -327,7 +327,12 @@ class api { */ protected static function create_or_update_issuer($data, bool $create): issuer { require_capability('moodle/site:config', context_system::instance()); - $issuer = new issuer(0, $data); + $issuer = new issuer($data->id ?? 0, $data); + if (!empty($data->id)) { + foreach ($data as $property => $value) { + $issuer->set($property, $value); + } + } // Will throw exceptions on validation failures. if ($create) {