/**
  * handle login post request
  *
  * @param Request $request
  * @param Throttle $throttle
  * @param User $user
  * @param Dispatcher $dispatcher
  * @return $this|\Illuminate\Http\RedirectResponse
  */
 public function postLogin(Request $request, Throttle $throttle, User $user, Dispatcher $dispatcher)
 {
     $credentials = $request->only('email', 'password');
     $result = $this->dispatchFromArray('Darryldecode\\Backend\\Components\\Auth\\Commands\\AuthenticateCommand', $credentials);
     // if authentication is good
     if ($result->isSuccessful()) {
         $dispatcher->fire('backend.auth.success', array($result->getData()));
         if ($request->get('ru') != '') {
             return redirect()->intended($request->get('ru'));
         }
         return redirect()->intended(Helpers::getDashboardRoute());
     }
     return redirect()->back()->withInput($request->only('email', 'remember'))->withErrors(array('errors' => $result->getMessage()));
 }