MDL-25299 mnet: Fixed validation when no public key is provided

This commit is contained in:
Sam Hemelryk 2012-02-17 16:47:15 +13:00
parent 0dde394db5
commit 4460312d08
3 changed files with 6 additions and 2 deletions

View file

@ -98,6 +98,7 @@ class mnet_review_host_form extends moodleform {
$mform->addElement('textarea', 'public_key', get_string('publickey', 'mnet'), array('rows' => 17, 'cols' => 100, 'class' => 'smalltext'));
$mform->setType('public_key', PARAM_PEM);
$mform->addRule('public_key', get_string('required'), 'required');
// finished with form controls, now the static informational stuff
if ($mnet_peer && !empty($mnet_peer->bootstrapped)) {
@ -160,7 +161,9 @@ class mnet_review_host_form extends moodleform {
}
$mnet_peer = new mnet_peer(); // idiotic api
$mnet_peer->wwwroot = $data['wwwroot']; // just hard-set this rather than bootstrap the object
if (!$credentials = $mnet_peer->check_credentials($data['public_key'])) {
if (empty($data['public_key'])) {
$errors['public_key'] = get_string('publickeyrequired', 'mnet');
} else if (!$credentials = $mnet_peer->check_credentials($data['public_key'])) {
$errmsg = '';
foreach ($mnet_peer->error as $err) {
$errmsg .= $err['code'] . ': ' . $err['text'].'<br />';