users are now only showns general tests and tests from their groups and test info is now stored in testdetails or failure or completion

This commit is contained in:
mwalbeck 2016-09-12 14:51:03 +02:00
parent a3dca2142e
commit 8fb7e8576f
10 changed files with 121 additions and 13 deletions

View file

@ -26,7 +26,7 @@ class HomeController extends Controller
*/
public function index()
{
$tests = Test::all();
$tests = Auth::user()->getTests();
return view('home', compact('tests'));
}

View file

@ -6,6 +6,7 @@ use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use App\Http\Requests;
use App\Test;
use App\Testdetail;
class TestController extends Controller
{
@ -15,12 +16,13 @@ class TestController extends Controller
//insert session flash
return redirect('/home');
}
session(['questions' => $test->randomizeQuestions(), 'question_counter' => 1, 'test' => $test, 'wrong_answers' => 0, 'is_correct' => false, 'has_failed' => false, 'last_question' => false]);
session(['questions' => $test->randomizeQuestions(), 'question_counter' => 0, 'test' => $test, 'wrong_answers' => 0, 'is_correct' => false, 'has_failed' => false, 'last_question' => false]);
return redirect()->action('TestController@showQuestion');
}
public function showQuestion()
{
session(['question_counter' => session('question_counter')+1]);
$question = session('questions')->get(session('question_counter')-1);
$options = $question->options->shuffle();
session(['options' => $options]);
@ -59,7 +61,20 @@ class TestController extends Controller
{
$question = session('questions')->get(session('question_counter')-1);
$options = session('options');
session(['question_counter' => session('question_counter')+1]);
return view('tests.answer', compact("question"), compact("options"));
}
public function testRetry(Test $test)
{
Auth::user()->storeTestdetails($test, session("has_failed"));
$test->sessionPurge();
return redirect("/test/$test->id");
}
public function testEnd(Test $test)
{
Auth::user()->storeTestdetails($test, session("has_failed"));
$test->sessionPurge();
return redirect("/home");
}
}