email superuser

This commit is contained in:
Kuroshini 2020-01-27 21:10:26 +03:00
parent e60f4b817b
commit 1fc0627ca9
2 changed files with 21 additions and 17 deletions

View File

@ -139,22 +139,27 @@ class UserSerializer(serializers.ModelSerializer):
new_email = validated_data.get('email') new_email = validated_data.get('email')
old_email = instance.email old_email = instance.email
instance = super().update(instance, validated_data) instance = super().update(instance, validated_data)
if new_email and new_email != old_email: user = self.context['request'].user
instance.email_confirmed = False if not user.is_superuser or not user.is_staff:
instance.email = old_email """
instance.unconfirmed_email = new_email superuser changes email immediately!
instance.save() """
# Send verification link on user email for change email address if new_email and new_email != old_email:
if settings.USE_CELERY: instance.email_confirmed = False
tasks.change_email_address.delay( instance.email = old_email
user_id=instance.id, instance.unconfirmed_email = new_email
country_code=self.context.get('request').country_code, instance.save()
emails=[validated_data['email'], ]) # Send verification link on user email for change email address
else: if settings.USE_CELERY:
tasks.change_email_address( tasks.change_email_address.delay(
user_id=instance.id, user_id=instance.id,
country_code=self.context.get('request').country_code, country_code=self.context.get('request').country_code,
emails=[validated_data['email'], ]) emails=[validated_data['email'], ])
else:
tasks.change_email_address(
user_id=instance.id,
country_code=self.context.get('request').country_code,
emails=[validated_data['email'], ])
subscriptions_handler(subscriptions_list, instance) subscriptions_handler(subscriptions_list, instance)
return instance return instance

View File

@ -64,7 +64,6 @@ class NewsStatesView(generics.ListAPIView):
'value': state[0], 'value': state[0],
'state_translated': state[1], 'state_translated': state[1],
} for state in models.News.STATE_CHOICES] } for state in models.News.STATE_CHOICES]
print(mutated_for_serializer)
serializer = self.get_serializer(mutated_for_serializer, many=True) serializer = self.get_serializer(mutated_for_serializer, many=True)
return response.Response(serializer.data) return response.Response(serializer.data)