public function home()
 {
     if ($this->auth->check()) {
         if (in_array($this->auth->user()->role, ['judge', 'observer'])) {
             $applications = Application::whereIn('status', ['submitted', 'review'])->get();
         } else {
             $applications = $this->auth->user()->applications;
         }
         return view('pages/dashboard', compact('applications'));
     } else {
         return view('pages/home');
     }
 }
 public function listApplications()
 {
     if ($this->auth->check()) {
         if (in_array($this->auth->user()->role, ['admin'])) {
             $applications = Application::get();
         } elseif (in_array($this->auth->user()->role, ['judge', 'observer'])) {
             $applications = Application::whereIn('status', ['submitted', 'review'])->get();
         } else {
             // otherwise redirect to home page? (normal users see a list in their dashboard)
             return redirect('');
         }
         return view('pages/applications/list', compact('applications'));
     } else {
         return redirect('');
     }
 }
 public function recalcScores(Request $request)
 {
     $this->authorize('recalculate-scores');
     $applications = Application::whereIn('status', ['submitted', 'review'])->get();
     foreach ($applications as $application) {
         Score::calculateTotals($application);
     }
     $request->session()->flash('success', 'Scores Recalculated.');
     return redirect('applications/');
 }