'Retrieved Questions', 'message' => 'You have successfully retrieved a list of Questions' ]; } /** @var CanListHelpMenuQuestions */ private $canListHelpMenuQuestions; /** @var ListsHelpMenuQuestions */ private $listsHelpMenuQuestions; /** * ListHelpMenuQuestionsLogic constructor. * @param CanListHelpMenuQuestions $canListHelpMenuQuestions * @param ListsHelpMenuQuestions $listsHelpMenuQuestions */ public function __construct(CanListHelpMenuQuestions $canListHelpMenuQuestions, ListsHelpMenuQuestions $listsHelpMenuQuestions) { $this->canListHelpMenuQuestions = $canListHelpMenuQuestions; $this->listsHelpMenuQuestions = $listsHelpMenuQuestions; } /** * @param Request $request * @return JsonResponse * @throws \App\Classes\Exceptions\AccessForbiddenException * @throws \App\Classes\Exceptions\MalformedRequestException * @throws \App\Classes\Exceptions\RequestValidationException * @throws \App\Classes\Exceptions\ResourceNotFoundException */ public function logic(Request $request) : JsonResponse { $this->canListHelpMenuQuestions->passes(); try{ $token = $request->input('token'); $decriptedToken = Crypt::decryptString($token); $delimiter = "|"; $parts = explode($delimiter, $decriptedToken); $questionSet = $parts[3]; $query = $this->listsHelpMenuQuestions->execute(['questionnaire_set_id' => $questionSet]); return $this->collectionResponse(HelpMenuQuestionResource::collection($query)); } catch(\Exception $exception){ throw new ResourceNotFoundException($exception->getMessage()); } } }