MDL-55767 competencies: Better exceptions for persistent

The persistent exceptions "squash" all the details and only display
them to developers. This leads to generic "Invalid persistent" messages
with no explanation. Instead lets include the message detail always.
This commit is contained in:
Damyon Wiese
2016-10-03 12:01:56 +08:00
parent 5e4fffa013
commit 9e14057444
2 changed files with 4 additions and 2 deletions
@@ -36,11 +36,13 @@ defined('MOODLE_INTERNAL') || die();
class invalid_persistent_exception extends \moodle_exception {
public function __construct(array $errors = array()) {
$forhumans = array();
$debuginfo = array();
foreach ($errors as $key => $message) {
$debuginfo[] = "$key: $message";
$forhumans[] = $message;
}
parent::__construct('invalidpersistent', 'core_competency', null, null, implode(' - ', $debuginfo));
parent::__construct('invalidpersistent', 'core_competency', null, implode(', ', $forhumans), implode(' - ', $debuginfo));
}
}