diff --git a/pkg/vtiger/modules/CustomerPortal/modules/CustomerPortal/api.php b/pkg/vtiger/modules/CustomerPortal/modules/CustomerPortal/api.php index 8c0dd2613de2baf42ed7b0fdae967818d3da3ad8..9e4ac7e421d681ae36c081303664b48b62412a3e 100644 --- a/pkg/vtiger/modules/CustomerPortal/modules/CustomerPortal/api.php +++ b/pkg/vtiger/modules/CustomerPortal/modules/CustomerPortal/api.php @@ -58,10 +58,12 @@ class CustomerPortal_API_EntryPoint { //setting active user language as Portal user language $current_user = $operationController->getActiveUser(); - $portal_language = $request->getLanguage(); - $current_user->column_fields["language"] = $portal_language; - $current_user->language = $portal_language; - + if ($current_user) { + // ensure user is setActive (ex: not in case of ForgotPassword) + $portal_language = $request->getLanguage(); + $current_user->column_fields["language"] = $portal_language; + $current_user->language = $portal_language; + } $response = $operationController->process($request); } catch (Exception $e) { $response = new CustomerPortal_API_Response(); diff --git a/pkg/vtiger/modules/CustomerPortal/modules/CustomerPortal/apis/AbstractApi.php b/pkg/vtiger/modules/CustomerPortal/modules/CustomerPortal/apis/AbstractApi.php index 920f013eea9978a8540d5516876095a39f81b715..f1c9b3216db6124c5c044b6c5f9b71c085990b7b 100644 --- a/pkg/vtiger/modules/CustomerPortal/modules/CustomerPortal/apis/AbstractApi.php +++ b/pkg/vtiger/modules/CustomerPortal/modules/CustomerPortal/apis/AbstractApi.php @@ -62,7 +62,7 @@ abstract class CustomerPortal_API_Abstract { $num_rows = $adb->num_rows($result); $isAuthenticated = false; - if ($num_rows >= 0) { + if ($num_rows > 0) { for ($i = 0; $i < $num_rows; ++$i) { $customerId = $adb->query_result($result, $i, 'id'); if (Vtiger_Functions::compareEncryptedPassword($password, $adb->query_result($result, $i, 'user_password'), $adb->query_result($result, $i, 'cryptmode'))) {