protected function handlePost(CreateNewPasswordForm $form, $instanceConfig, $userId)
 {
     $form->setInputFilter(new CreateNewPasswordInputFilter());
     $form->setData($this->getRequest()->getPost());
     if ($form->isValid()) {
         $formData = $form->getData();
         $newPasswordOne = $formData['password'];
         $newPasswordTwo = $formData['passwordTwo'];
         if ($newPasswordOne != $newPasswordTwo) {
             return $instanceConfig['translate']['passwordsDoNotMatch'];
         }
         $user = $this->rcmUserService->buildNewUser();
         $user->setUsername($userId);
         try {
             $result = $this->rcmUserService->readUser($user);
         } catch (DistributorNotFoundException $e) {
             return $instanceConfig['translate']['systemError'];
         }
         if (!$result->isSuccess()) {
             return $instanceConfig['translate']['invalidLink'];
         }
         $user = $result->getUser();
         $user->setPassword($newPasswordTwo);
         $result = $this->rcmUserService->updateUser($user);
         if (!$result->isSuccess()) {
             throw new \Exception($result->getMessagesString());
         }
     }
     return null;
 }