Adding removeAvatar action to users service

remotes/origin/enhancement/email-actions
Jesús Espino 2014-08-01 12:36:56 +02:00
parent 58cc11e3d4
commit fa150250c9
2 changed files with 12 additions and 0 deletions

View File

@ -188,6 +188,17 @@ class UsersViewSet(ModelCrudViewSet):
return Response(user_data, status=status.HTTP_200_OK)
@list_route(methods=["POST"])
def remove_avatar(self, request):
"""
Remove the avatar of current logged user.
"""
self.check_permissions(request, "remove_avatar", None)
request.user.photo = None
request.user.save(update_fields=["photo"])
user_data = serializers.UserSerializer(request.user).data
return Response(user_data, status=status.HTTP_200_OK)
@detail_route(methods=["GET"])
def starred(self, request, pk=None):
user = self.get_object()

View File

@ -36,4 +36,5 @@ class UserPermission(ResourcePermission):
change_password_from_recovery_perms = AllowAny()
change_password_perms = IsAuthenticated()
change_avatar_perms = IsAuthenticated()
remove_avatar_perms = IsAuthenticated()
starred_perms = AllowAny()