2
votes

I am facing a problem in joomla 3.0 when i go to reset page after verify code url is ../index.php/registration?view=reset&layout=complete.

The scenario is: fill different values in password and conform password. Then submit form, the error is:

Notice Completing reset password failed: exception 'UnexpectedValueException' with message 'The passwords you entered do not match. Please enter your desired password in the password field and confirm your entry by entering it in the confirm password field.' in /home/fiable/public_html/projects/canvasfast/libraries/joomla/form/form.php:1872 Stack trace: #0 /home/fiable/public_html/projects/canvasfast/libraries/joomla/form/form.php(1105): JForm->validateField(Object(SimpleXMLElement), '', 'dfdefsdfdfdfdf', Object(JRegistry)) #1 /home/fiable/public_html/projects/canvasfast/components/com_users/models/reset.php(122): JForm->validate(Array) #2 /home/fiable/public_html/projects/canvasfast/components/com_users/controllers/reset.php(156): UsersModelReset->processResetComplete(Array) #3 /home/fiable/public_html/projects/canvasfast/libraries/legacy/controller/legacy.php(722): UsersControllerReset->complete() #4 /home/fiable/public_html/projects/canvasfast/components/com_users/users.php(15): JControllerLegacy->execute('complete') #5 /home/fiable/public_html/projects/canvasfast/libraries/legacy/component/helper.php(359): require_once('/home/fiable/pu...') #6 /home/fiable/public_html/projects/canvasfast/libraries/legacy/component/helper.php(339): JComponentHelper::executeComponent('/home/fiable/pu...') #7 /home/fiable/public_html/projects/canvasfast/includes/application.php(205): JComponentHelper::renderComponent('com_users') #8 /home/fiable/public_html/projects/canvasfast/index.php(52): JSite->dispatch() #9 {main}

1

1 Answers

1
votes

tested in joomla 3.0 go to the line 130 components\com_users\models\reset.php

replace bellow code:

 // Check the validation results.
        if ($return === false) {
            // Get the validation messages from the form.
            foreach ($form->getErrors() as $message) {
                $this->setError($message);
            }
            return false;
        }

to:

     // Check the validation results.
      if ($return === false) {
   $errors = $form->getErrors();
   for ($i = 0, $n = count($errors); $i < $n && $i < 3; $i++) {
    if ($errors[$i] instanceof Exception) {
     $this->setError($errors[$i]->getMessage());
    } else {
     $this->setError($errors[$i]);
    }
   }

   return false;
  }