protected function ValidateUser($aUserData)
    {
        $bValid = false;
        $oActiveUser = self::getExtranetUserProvider()->getActiveUser();
        if ($oActiveUser && is_array($oActiveUser->sqlData) && array_key_exists('customer_number', $oActiveUser->sqlData)) {
            $aUserData['customer_number'] = $oActiveUser->sqlData['customer_number'];
        }
        $oUser = TdbDataExtranetUser::GetNewInstance($aUserData);

        $bValid = $oUser->ValidateData();

        if ('register' == TShopStepUserDataV2::GetUserMode()) {
            $bValid = ($oUser->ValidateLoginData($aUserData) && $bValid);
        } elseif ('guest' == TShopStepUserDataV2::GetUserMode()) {
            if (TdbDataExtranet::GetInstance()->fieldLoginIsEmail) {
                $bValid = ($this->validateUserEMail($aUserData['name']) && $bValid);
            } else {
                $bValid = ($this->validateUserEMail($aUserData['email']) && $bValid);
            }
        }

        return $bValid;
    }