getPictureFilename()); $pictureWidth = $pictureSize[0]; $pictureHeight = $pictureSize[1]; $data = [ 'use' => 'user', 'image' => [ 'path' => $objQuestion->selectPicturePath(), 'width' => $pictureSize[0], 'height' => $pictureSize[1], ], 'answers' => [ 'paths' => [], 'texts' => [], ], ]; $questionAttempt = Event::getQuestionAttemptByExeIdAndQuestion($exerciseId, $questionId); if (!empty($questionAttempt['answer'])) { $answers = explode('|', $questionAttempt['answer']); foreach ($answers as $answer) { $parts = explode(')(', $answer); $typeProperties = array_shift($parts); $properties = explode(';', $typeProperties); switch ($properties[0]) { case 'P': $points = []; foreach ($parts as $partPoint) { $points[] = Geometry::decodePoint($partPoint); } $data['answers']['paths'][] = [ 'color' => $properties[1] ?? '#FF0000', 'points' => $points, ]; break; case 'T': $text = [ 'text' => array_shift($parts), 'color' => $properties[1] ?? '#FF0000', 'fontSize' => $properties[2] ?? '20', ]; $data['answers']['texts'][] = $text + Geometry::decodePoint($parts[0]); break; } } } header('Content-Type: application/json'); echo json_encode($data);