Пример #1
0
 public function realizarExamen($id, Request $request)
 {
     $examen = Examen::find($id);
     $preguntas = Pregunta::where('examen_id', $id)->orderByRaw('RAND()')->get();
     $preguntaNext = [];
     $nota = 0;
     foreach ($preguntas as $pregunta) {
         //comprobamos si las preguntas ya fueron contestadas por el alumno.
         $repuestaUser = RespuestaUser::where('pregunta_id', $pregunta->id)->where('user_id', Auth::user()->id)->count();
         // me traigo todas las respuestas correctas
         $respuestas = Respuesta::where('pregunta_id', $pregunta->id)->where('estado', 1)->get();
         foreach ($respuestas as $respuesta) {
             $correcta = RespuestaUser::where('respuesta_id', $respuesta->id)->where('user_id', Auth::user()->id)->count();
             if ($correcta == 1) {
                 $nota += $pregunta->valor;
             }
         }
         //enviamos todas las preguntas que no han sido contestadas
         if (!$repuestaUser) {
             $preguntaNext = Pregunta::where('id', $pregunta->id)->with('respuestas')->orderByRaw('RAND()')->get();
         }
     }
     $detalles = ['pregunta' => $preguntaNext, 'nota' => $nota];
     if ($request->ajax()) {
         return response()->json($detalles);
     }
     //return view('examen.realizarExamen', compact('preguntaNext', 'examen', 'nota'));
 }
Пример #2
0
 public function postPreguntes()
 {
     $preguntes = Request::input('arr');
     foreach ($preguntes as $preg) {
         $result = Pregunta::where('votacio_id', '=', Request::input('id'))->where('titol', '=', $preg[0])->get();
         if ($result->isEmpty() && $preg[0] != "") {
             $nouPreg = array('titol' => $preg[0]);
             $nouPreg = array_add($nouPreg, 'opcions', $preg[1]);
             $nouPreg = array_add($nouPreg, 'votacio_id', Request::input('id'));
             if ($preg[2] == "true") {
                 $nouPreg = array_add($nouPreg, 'obligatoria', true);
             } else {
                 $nouPreg = array_add($nouPreg, 'obligatoria', false);
             }
             $novaPregunta = Pregunta::create($nouPreg);
         }
     }
 }