mirror of
				https://github.com/Tivix/django-rest-auth.git
				synced 2025-10-30 23:37:32 +03:00 
			
		
		
		
	Merge 4b4d06d0e8 into cdd04aa9be
				
					
				
			This commit is contained in:
		
						commit
						3e78fc4733
					
				|  | @ -51,3 +51,5 @@ Configuration | |||
| - **OLD_PASSWORD_FIELD_ENABLED** - set it to True if you want to have old password verification on password change enpoint (default: False) | ||||
| 
 | ||||
| - **LOGOUT_ON_PASSWORD_CHANGE** - set to False if you want to keep the current user logged in after a password change | ||||
| 
 | ||||
| - **REST_AUTH_ROLL_BACK_REGISTER_ON_ERROR** - set to True to prevent a user being created if an error occurs after writing the user (such as during the sending of the verification email). | ||||
|  |  | |||
|  | @ -17,3 +17,7 @@ def register_permission_classes(): | |||
|     for klass in getattr(settings, 'REST_AUTH_REGISTER_PERMISSION_CLASSES', tuple()): | ||||
|         permission_classes.append(import_callable(klass)) | ||||
|     return tuple(permission_classes) | ||||
| 
 | ||||
| roll_back_register_on_error = getattr(settings, | ||||
|                                       'REST_AUTH_ROLL_BACK_REGISTER_ON_ERROR', | ||||
|                                       False) | ||||
|  |  | |||
|  | @ -1,4 +1,5 @@ | |||
| from django.conf import settings | ||||
| from django.db import transaction | ||||
| from django.utils.decorators import method_decorator | ||||
| from django.utils.translation import ugettext_lazy as _ | ||||
| from django.views.decorators.debug import sensitive_post_parameters | ||||
|  | @ -29,7 +30,9 @@ from rest_auth.registration.serializers import (VerifyEmailSerializer, | |||
|                                                 SocialConnectSerializer) | ||||
| from rest_auth.utils import jwt_encode | ||||
| from rest_auth.views import LoginView | ||||
| from .app_settings import RegisterSerializer, register_permission_classes | ||||
| from .app_settings import (RegisterSerializer, | ||||
|                            register_permission_classes, | ||||
|                            roll_back_register_on_error) | ||||
| 
 | ||||
| sensitive_post_parameters_m = method_decorator( | ||||
|     sensitive_post_parameters('password1', 'password2') | ||||
|  | @ -82,6 +85,12 @@ class RegisterView(CreateAPIView): | |||
|         return user | ||||
| 
 | ||||
| 
 | ||||
| if roll_back_register_on_error: | ||||
|     RegisterView.perform_create = transaction.atomic( | ||||
|         RegisterView.perform_create | ||||
|     ) | ||||
| 
 | ||||
| 
 | ||||
| class VerifyEmailView(APIView, ConfirmEmailView): | ||||
|     permission_classes = (AllowAny,) | ||||
|     allowed_methods = ('POST', 'OPTIONS', 'HEAD') | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	Block a user