ILIAS  release_8 Revision v8.19
All Data Structures Namespaces Files Functions Variables Modules Pages
class.ilECSCourseMemberConnector.php
Go to the documentation of this file.
1 <?php
2 
18 declare(strict_types=1);
19 
26 {
31  public function getCourseMember($course_member_id, bool $a_details = false)
32  {
33  $this->path_postfix = '/campusconnect/course_members/' . (int) $course_member_id;
34 
35  if ($a_details && $course_member_id) {
36  $this->path_postfix .= '/details';
37  }
38 
39  try {
40  $this->prepareConnection();
41  $this->setHeader(array());
42  if ($a_details) {
43  $this->addHeader('Accept', 'application/json');
44  }
45  $this->curl->setOpt(CURLOPT_HTTPHEADER, $this->getHeader());
46  $res = $this->call();
47 
48  if (strpos($res, 'http') === 0) {
49  $json = file_get_contents($res);
50  $ecs_result = new ilECSResult($json);
51  } else {
52  $ecs_result = new ilECSResult($res);
53  }
54 
55  // Return ECSEContentDetails for details switch
56  if ($a_details) {
58  $this->logger->debug(print_r($res, true));
59  $details->loadFromJson($ecs_result->getResult());
60  return $details;
61  }
62 
63  return $ecs_result->getResult();
64  } catch (ilCurlConnectionException $e) {
65  throw new ilECSConnectorException('Error calling ECS service: ' . $e->getMessage());
66  }
67  }
68 }
$res
Definition: ltiservices.php:69
getCourseMember($course_member_id, bool $a_details=false)
Get single directory tree.
addHeader(string $a_name, string $a_value)
Add Header.
Presentation of ecs content details (http://...campusconnect/courselinks/id/details) ...
array $details
Details for error message relating to last request processed.
Definition: System.php:109
Connector for course member ressource.
setHeader(array $a_header_strings)
prepareConnection()
prepare connection