Record actor for the user/group create/edit events
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
@@ -30,6 +30,7 @@ class GroupEventsTestCase(GroupTestMixin, GroupViewTestMixin, UserTestMixin, Gen
|
||||
)
|
||||
self._request_test_group_create_view()
|
||||
|
||||
self.assertEqual(Action.objects.last().actor, self._test_case_user)
|
||||
self.assertEqual(Action.objects.last().target, self.test_group)
|
||||
self.assertEqual(Action.objects.last().verb, event_group_created.id)
|
||||
|
||||
@@ -55,6 +56,9 @@ class GroupEventsAPITestCase(GroupAPITestMixin, GroupTestMixin, GroupViewTestMix
|
||||
)
|
||||
self._request_test_group_create_api_view()
|
||||
|
||||
# TODO: Future improvement, find method to record the user who
|
||||
# commited the event. Will required custom serializer .create method
|
||||
self.assertEqual(Action.objects.last().actor, self.test_group)
|
||||
self.assertEqual(Action.objects.last().target, self.test_group)
|
||||
self.assertEqual(Action.objects.last().verb, event_group_created.id)
|
||||
|
||||
@@ -67,6 +71,9 @@ class GroupEventsAPITestCase(GroupAPITestMixin, GroupTestMixin, GroupViewTestMix
|
||||
)
|
||||
self._request_test_group_edit_patch_api_view()
|
||||
|
||||
# TODO: Future improvement, find method to record the user who
|
||||
# commited the event. Will required custom serializer .update method
|
||||
self.assertEqual(Action.objects.last().actor, self.test_group)
|
||||
self.assertEqual(Action.objects.last().target, self.test_group)
|
||||
self.assertEqual(Action.objects.last().verb, event_group_edited.id)
|
||||
|
||||
@@ -80,6 +87,7 @@ class UserEventsTestCase(UserAPITestMixin, UserTestMixin, UserViewTestMixin, Gen
|
||||
)
|
||||
self._request_test_user_create_view()
|
||||
|
||||
self.assertEqual(Action.objects.last().actor, self._test_case_user)
|
||||
self.assertEqual(Action.objects.last().target, self.test_user)
|
||||
self.assertEqual(Action.objects.last().verb, event_user_created.id)
|
||||
|
||||
@@ -92,6 +100,7 @@ class UserEventsTestCase(UserAPITestMixin, UserTestMixin, UserViewTestMixin, Gen
|
||||
)
|
||||
self._request_test_user_edit_view()
|
||||
|
||||
self.assertEqual(Action.objects.last().actor, self._test_case_user)
|
||||
self.assertEqual(Action.objects.last().target, self.test_user)
|
||||
self.assertEqual(Action.objects.last().verb, event_user_edited.id)
|
||||
|
||||
@@ -105,6 +114,9 @@ class UserEventsAPITestCase(UserAPITestMixin, UserTestMixin, UserViewTestMixin,
|
||||
)
|
||||
self._request_test_user_create_api_view()
|
||||
|
||||
# TODO: Future improvement, find method to record the user who
|
||||
# commited the event. Will required custom serializer .create method
|
||||
self.assertEqual(Action.objects.last().actor, self.test_user)
|
||||
self.assertEqual(Action.objects.last().target, self.test_user)
|
||||
self.assertEqual(Action.objects.last().verb, event_user_created.id)
|
||||
|
||||
@@ -117,5 +129,8 @@ class UserEventsAPITestCase(UserAPITestMixin, UserTestMixin, UserViewTestMixin,
|
||||
)
|
||||
self._request_test_user_edit_patch_api_view()
|
||||
|
||||
# TODO: Future improvement, find method to record the user who
|
||||
# commited the event. Will required custom serializer .update method
|
||||
self.assertEqual(Action.objects.last().actor, self.test_user)
|
||||
self.assertEqual(Action.objects.last().target, self.test_user)
|
||||
self.assertEqual(Action.objects.last().verb, event_user_edited.id)
|
||||
|
||||
@@ -66,6 +66,9 @@ class GroupCreateView(SingleObjectCreateView):
|
||||
)
|
||||
view_permission = permission_group_create
|
||||
|
||||
def get_save_extra_data(self):
|
||||
return {'_user': self.request.user}
|
||||
|
||||
|
||||
class GroupEditView(SingleObjectEditView):
|
||||
fields = ('name',)
|
||||
@@ -81,6 +84,9 @@ class GroupEditView(SingleObjectEditView):
|
||||
'title': _('Edit group: %s') % self.get_object(),
|
||||
}
|
||||
|
||||
def get_save_extra_data(self):
|
||||
return {'_user': self.request.user}
|
||||
|
||||
|
||||
class GroupListView(SingleObjectListView):
|
||||
model = Group
|
||||
@@ -185,22 +191,19 @@ class UserCreateView(SingleObjectCreateView):
|
||||
view_permission = permission_user_create
|
||||
|
||||
def form_valid(self, form):
|
||||
user = form.save(commit=False)
|
||||
user.set_unusable_password()
|
||||
user.save()
|
||||
messages.success(
|
||||
message=_('User "%s" created successfully.') % user,
|
||||
request=self.request
|
||||
)
|
||||
super(UserCreateView, self).form_valid(form=form)
|
||||
return HttpResponseRedirect(
|
||||
reverse(
|
||||
viewname='user_management:user_set_password', kwargs={
|
||||
'pk': user.pk
|
||||
}
|
||||
viewname='user_management:user_set_password',
|
||||
kwargs={'pk': self.object.pk}
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
def get_save_extra_data(self):
|
||||
return {'_user': self.request.user}
|
||||
|
||||
|
||||
class UserDeleteView(MultipleObjectConfirmActionView):
|
||||
object_permission = permission_user_delete
|
||||
queryset = get_user_model().objects.filter(
|
||||
@@ -291,6 +294,9 @@ class UserEditView(SingleObjectEditView):
|
||||
'title': _('Edit user: %s') % self.get_object(),
|
||||
}
|
||||
|
||||
def get_save_extra_data(self):
|
||||
return {'_user': self.request.user}
|
||||
|
||||
|
||||
class UserGroupsView(AssignRemoveView):
|
||||
decode_content_type = True
|
||||
|
||||
Reference in New Issue
Block a user