public function resultDistribution() { $data = QuizUserResults::groupBy('quiz_id', 'result_id')->having('quiz_id', '=', $this->id)->select(DB::raw('count(*) as count'), 'result_id', 'quiz_id')->get()->toArray(); $resultDistribution = array(); foreach ($data as $result) { $resultDistribution[$result['result_id']] = $result['count']; } return $resultDistribution; }
public function saveUserResult($nameString, $quizId = null) { try { $quiz = Quiz::findOrFail($quizId); $user = Auth::user(); $resultId = Input::get('resultId'); if (!$user) { return Response::json(array('error' => 'Not logged in'), 400); } $quizUserResult = QuizUserResults::firstOrNew(array('user_id' => $user->id, 'quiz_id' => $quiz->id)); $quizUserResult->result_id = $resultId; $quizUserResult->save(); return Response::json(array('message' => 'Activity recorded')); } catch (Illuminate\Database\Eloquent\ModelNotFoundException $e) { return Response::notFound('Quiz not found'); } }