/**
  * @return Task[][]
  */
 public function getTaskProgress()
 {
     /** @var Task[][] $tasks */
     $progress = ['completed' => [], 'pending' => [], 'rejected' => []];
     // Get all the tasks for the sticker
     $tasks = $this->sticker->tasks;
     foreach ($tasks as $task) {
         /** @var Task $task */
         $submissions = Submission::where('userId', $this->user->id)->where('taskId', $task->id)->orderBy('approved', 'DESC')->get();
         foreach ($submissions as $submission) {
             /** @var Submission $submission */
             if ($submission->isApproved()) {
                 $progress['completed'][] = $task;
                 break;
             } elseif (!$submission->isRejected()) {
                 $progress['pending'][] = $task;
                 break;
             } elseif ($submission->isRejected()) {
                 $progress['rejected'][] = $task;
                 break;
             }
         }
     }
     return $progress;
 }
 protected function getList()
 {
     if ($this->request->has('task')) {
         $taskId = $this->request->input('task');
         /** @var Task $task */
         $task = Task::findOrFail($taskId);
         $this->pageTitle = ' Submissions for ' . $task->name;
         $this->breadcrumbs = \Breadcrumbs::render('task-submissions', $task);
         return Submission::where('taskId', $taskId)->orderBy('createdAt', 'DESC');
     } else {
         return Submission::orderBy('createdAt', 'DESC');
     }
 }