/**
  * Update the specified resource in storage.
  *
  * @param Todo $todo
  * @internal param int $id
  * @return Response
  */
 public function update(Project $project, User $user, Todo $todo)
 {
     $input = array_except(\Input::all(), '_method');
     if (isset($input['completed'])) {
         $input['urgent'] = 0;
         $emails = $project->subscribers()->lists('email');
         if (count($emails)) {
             Mail::send('todos.emails.update', ['name' => $todo->name, 'user' => \Auth::user()->name], function ($message) use($emails, $todo) {
                 $message->from('*****@*****.**');
                 $message->to($emails)->subject("USC Todo App - The " . $todo->project->name . " project has been updated.");
             });
         }
     } else {
         $input['completed'] = 0;
     }
     $todo->update($input);
     Flash::success('Your todo has been updated!');
     return redirect()->route('projects.todos.index', [$project->id]);
 }