/**
  * Display a listing of the MutipleAnswer.
  *
  * @return Response
  */
 public function index()
 {
     $mutipleAnswers = null;
     $competition_question = CompetitionQuestion::orderBy('id', 'desc')->first();
     if ($competition_question) {
         $multipleQuestionId = MutipleQuestion::where('question_id', $competition_question->id)->lists('id');
         if (count($multipleQuestionId) > 0) {
             $mutipleAnswers = MutipleAnswer::with(['groupUser.user', 'competitionAnswers', 'multipleQuestion'])->wherein('mutiple_question_id', $multipleQuestionId)->get();
         } else {
             $mutipleAnswers = MutipleAnswer::with(['groupUser.user', 'competitionAnswers', 'multipleQuestion'])->get();
         }
         return view('mutipleAnswers.index')->with('mutipleAnswers', $mutipleAnswers);
     }
 }
 public function search($input)
 {
     $query = MutipleQuestion::query();
     $columns = Schema::getColumnListing('mutipleQuestions');
     $attributes = array();
     foreach ($columns as $attribute) {
         if (isset($input[$attribute]) and !empty($input[$attribute])) {
             $query->where($attribute, $input[$attribute]);
             $attributes[$attribute] = $input[$attribute];
         } else {
             $attributes[$attribute] = null;
         }
     }
     return [$query->get(), $attributes];
 }
 public function correct($id)
 {
     $multipleAnswer = MutipleAnswer::find($id);
     if ($multipleAnswer) {
         $competitionAnswer = new CompetitionAnswer();
         $multipleQuestion = MutipleQuestion::where('id', $multipleAnswer->mutiple_question_id)->first();
         $competitionAnswer->question_id = $multipleQuestion->question_id;
         $competitionAnswer->competition_group_user_id = $multipleAnswer->user_id;
         $competitionAnswer->mutiple_answer_id = $multipleAnswer->id;
         $competitionAnswer->answer = $multipleAnswer->answer;
         $competitionAnswer->answer_mm = $multipleAnswer->answer;
         $competitionAnswer->status = 1;
         $competitionAnswer->correct = 1;
         $competitionAnswer->save();
         return redirect(URL::previous());
     }
 }
 /**
  * Show the form for editing the specified MutipleOption.
  *
  * @param  int $id
  *
  * @return Response
  */
 public function edit($id)
 {
     $mutipleOption = $this->mutipleOptionRepository->find($id);
     if (empty($mutipleOption)) {
         Flash::error('MutipleOption not found');
         return redirect(route('mutipleOptions.index'));
     }
     $mutipleQuestion = MutipleQuestion::orderBy('id', 'desc')->get();
     $mutipleQuestions = [];
     foreach ($mutipleQuestion as $key => $value) {
         $mutipleQuestions[$value->id] = $value->question;
     }
     return view('mutipleOptions.edit')->with(['mutipleOption' => $mutipleOption, 'mutipleQuestions' => $mutipleQuestions]);
 }
 public function getGroupUser(Request $request)
 {
     $validator = Validator::make($request->all(), ['question_id' => 'required', 'user_id' => 'required']);
     if ($validator->fails()) {
         if ($validator->errors()->has('question_id')) {
             return response()->json($validator->errors()->first('question_id'), 400);
         }
         if ($validator->errors()->has('group_user_id')) {
             return response()->json($validator->errors()->first('user_id'), 400);
         }
     }
     $group_name = CompetitionGroupUser::where('competition_question_id', $request->question_id)->where('user_id', $request->user_id)->pluck('group_name');
     $group_user_ids = CompetitionGroupUser::where('group_name', $group_name)->where('competition_question_id', $request->question_id)->lists('id');
     $group_list = CompetitionGroupUser::with('answer')->where('competition_question_id', $request->question_id)->where('group_name', $group_name)->get();
     $muti_question_count = MutipleQuestion::where('question_id', $request->question_id)->count();
     foreach ($group_list as $key => $value) {
         $profile_img = json_decode($value->profile_img, true);
         if ($profile_img) {
             $group_list[$key]['image_url'] = isset($profile_img['url']) ? $profile_img['url'] : '';
         } else {
             $group_list[$key]['image_url'] = "http://url";
         }
         $group_list[$key]['limited_answer'] = $muti_question_count;
         $group_list[$key]['total_has_answer'] = count($group_list) * $muti_question_count;
         $group_list[$key]['current_has_answer'] = MutipleAnswer::wherein('user_id', $group_user_ids)->count();
         $group_list[$key]['init_answer'] = null;
         foreach ($group_list[$key]['answer'] as $i => $value) {
             if ($i == 0) {
                 $group_list[$key]['init_answer'] = $value;
             }
         }
     }
     return response()->json($group_list);
 }