Fuente: https://github.com/chamilo/chamilo-lms/releases/download/v1.11.40/chamilo-1.11.40.zip sha256: 1cf4bf2cc7bae1ef1a1eff643235db1d552f78ddf4b6dd1e2d2dac9868679439 Snapshot independiente (rama huerfana); diffable vs 1.11.38. vendor incluido.
66 lines
1.1 KiB
PHP
66 lines
1.1 KiB
PHP
<?php
|
|
|
|
/* For licensing terms, see /license.txt */
|
|
|
|
/**
|
|
* Class RestApiResponse.
|
|
*/
|
|
class RestResponse
|
|
{
|
|
/**
|
|
* @var bool
|
|
*/
|
|
private $error;
|
|
|
|
/**
|
|
* @var string
|
|
*/
|
|
private $errorMessage;
|
|
|
|
/**
|
|
* @var array
|
|
*/
|
|
private $data;
|
|
|
|
/**
|
|
* RestApiResponse constructor.
|
|
*/
|
|
public function __construct()
|
|
{
|
|
$this->error = true;
|
|
$this->errorMessage = '';
|
|
$this->data = [];
|
|
}
|
|
|
|
public function setData(array $data)
|
|
{
|
|
$this->error = false;
|
|
$this->data = $data;
|
|
}
|
|
|
|
/**
|
|
* @param string $message
|
|
*/
|
|
public function setErrorMessage($message)
|
|
{
|
|
$this->error = true;
|
|
$this->errorMessage = $message;
|
|
}
|
|
|
|
public function format(): string
|
|
{
|
|
$json = ['error' => $this->error];
|
|
|
|
if ($this->error) {
|
|
$json['message'] = $this->errorMessage;
|
|
} else {
|
|
$json['data'] = $this->data;
|
|
}
|
|
|
|
return json_encode(
|
|
$json,
|
|
'test' === api_get_setting('server_type') ? JSON_PRETTY_PRINT : 0
|
|
);
|
|
}
|
|
}
|