}
$token = optional_param('token', 'test', PARAM_ALPHANUM);
$action = optional_param('action', null, PARAM_ALPHA);
$username = optional_param('username', null, PARAM_USERNAME);
$userid = optional_param('userid', null, PARAM_INT);
$password = optional_param('password', null, PARAM_TEXT);
$identitytype = optional_param('identitytype', null, PARAM_TEXT);
if (empty($secure) and !empty($CFG->block_mhaairs_sslonly)) {
    echo 'Connection must be secured with SSL';
    return;
}
$secret = !empty($CFG->block_mhaairs_shared_secret) ? $CFG->block_mhaairs_shared_secret : '';
$result = null;
switch ($action) {
    case "test":
        $result = "OK";
        break;
    case "ValidateLogin":
        $result = MHUtil::validate_login($token, $secret, $username, $password);
        break;
    case "GetUserInfo":
        $result = MHUtil::get_user_info($token, $secret, $identitytype);
        break;
    case "GetServerTime":
        $result = MHUtil::get_time_stamp();
        break;
    default:
        break;
}
header('Content-Type: application/json; charset=utf-8');
echo json_encode($result);
Exemplo n.º 2
0
 /**
  * Allows external services to push grades into the course gradebook.
  * Alias for {@link block_mhaairs_gradebookservice_external::update_grade()}.
  *
  * @return mixed
  * @throws invalid_parameter_exception
  * @throws moodle_exception
  */
 public static function validate_login($token, $username, $password)
 {
     // Require secured connection.
     if ($error = self::require_ssl()) {
         $authresult = new MHAuthenticationResult(MHAuthenticationResult::FAILURE, '', $error);
         return $authresult;
     }
     // Get the configured secret.
     $secret = self::get_secret();
     // Validate login.
     $result = MHUtil::validate_login($token, $secret, $username, $password);
     return $result;
 }