survey answers prototype

This commit is contained in:
Michał Frankiewicz
2023-07-27 12:02:18 +02:00
parent e025b71059
commit 3c08515918
3 changed files with 37 additions and 1 deletions

View File

@@ -57,9 +57,14 @@ class Result
* class constants. * class constants.
* @param array $rawData Raw data returned by the LimeSurvey's API * @param array $rawData Raw data returned by the LimeSurvey's API
*/ */
public function __construct($method, array $rawData) public function __construct($method, $rawData)
{ {
$this->method = MethodType::getValidatedMethod($method); $this->method = MethodType::getValidatedMethod($method);
if (true === is_string($rawData)) {
$rawData = base64_decode($rawData);
$rawData = json_decode($rawData, true);
}
$this->setRawDataAndStatus($rawData); $this->setRawDataAndStatus($rawData);
} }

View File

@@ -458,4 +458,31 @@ class SurveyService
return false; return false;
} }
public function getResponseIds($surveyId, $token)
{
$arguments = [
$surveyId,
$token,
];
return $this
->client
->run('get_response_ids', $arguments)
->getData(true);
}
public function exportResponsesByToken($surveyId, $token)
{
$arguments = [
$surveyId,
'json',
$token,
];
return $this
->client
->run('export_responses_by_token', $arguments)
->getData(true);
}
} }

View File

@@ -93,6 +93,10 @@ class MethodType extends BaseType
*/ */
const LIST_USERS = 'list_users'; const LIST_USERS = 'list_users';
const EXPORT_RESPONSES_BY_TOKEN = 'export_responses_by_token';
const GET_RESPONSE_IDS = 'get_response_ids';
/** /**
* Returns validated name of method to call or throws an exception (if method is incorrect) * Returns validated name of method to call or throws an exception (if method is incorrect)
* *