password check
This commit is contained in:
parent
5cdd35ea82
commit
3d994ae121
@ -6,18 +6,20 @@ from api.models import GuiSettings
|
||||
|
||||
|
||||
class UserSerializer(serializers.ModelSerializer):
|
||||
confirm_password = serializers.CharField(write_only=False, required=False)
|
||||
new_password = serializers.CharField(write_only=True, required=False)
|
||||
old_password = serializers.CharField(write_only=True, required=False)
|
||||
|
||||
class Meta:
|
||||
model = User
|
||||
fields = ['username', 'old_password',
|
||||
'new_password', 'confirm_password', 'email']
|
||||
fields = ['id', 'username', 'old_password',
|
||||
'new_password', 'email']
|
||||
|
||||
def update(self, instance, validated_data):
|
||||
print(validated_data)
|
||||
instance.password = validated_data.get('password', instance.password)
|
||||
|
||||
if 'new_password' in validated_data and \
|
||||
'old_password' in validated_data:
|
||||
if not validated_data['new_password']:
|
||||
raise serializers.ValidationError({'new_password': 'not found'})
|
||||
|
||||
@ -28,18 +30,16 @@ class UserSerializer(serializers.ModelSerializer):
|
||||
raise serializers.ValidationError(
|
||||
{'old_password': 'wrong password'})
|
||||
|
||||
if validated_data['new_password'] != \
|
||||
validated_data['confirm_password']:
|
||||
raise serializers.ValidationError(
|
||||
{'passwords': 'passwords do not match'})
|
||||
|
||||
if validated_data['new_password'] == \
|
||||
validated_data['confirm_password'] and \
|
||||
if validated_data['new_password'] and \
|
||||
instance.check_password(validated_data['old_password']):
|
||||
# instance.password = validated_data['new_password']
|
||||
instance.set_password(validated_data['new_password'])
|
||||
instance.save()
|
||||
return instance
|
||||
elif 'email' in validated_data:
|
||||
instance.email = validated_data['email']
|
||||
instance.save()
|
||||
return instance
|
||||
return instance
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user