Пример #1
0
    def delete(self, request, pk, subject, *args, **kwargs):
        try:
            subject = self.s_rh.get(id=subject)
            protocol = Protocol.objects.get(pk=pk)
            self.s_rh.delete(id=subject.id)
            SubjectUtils.delete_protocol_subject_record_group(protocol, subject)
        except:
            return Response({'error': 'Unable to delete subject'}, status=400)

        return Response({'info': 'Subject deleted'}, status=200)
Пример #2
0
    def delete(self, request, pk, subject, *args, **kwargs):
        try:
            subject = self.s_rh.get(id=subject)
            protocol = Protocol.objects.get(pk=pk)
            self.s_rh.delete(id=subject.id)
            SubjectUtils.delete_protocol_subject_record_group(
                protocol, subject)
        except:
            return Response({'error': 'Unable to delete subject'}, status=400)

        return Response({'info': 'Subject deleted'}, status=200)
Пример #3
0
    def delete(self, request, pk, subject, *args, **kwargs):
        if request.user.is_superuser:
            try:
                subject = self.s_rh.get(id=subject)
                protocol = Protocol.objects.get(pk=pk)
                group_id = self.get_group_id(protocol.immutable_key.key)
                # instead of deleting a subject - we want to just remove them from the subject group
                # self.s_rh.delete(id=subject.id)
                self.remove_sub_from_ehb_group(subject.id, group_id)
                SubjectUtils.delete_protocol_subject_record_group(
                    protocol, subject)
            except:
                return Response({'error': 'Unable to delete subject'},
                                status=400)

            return Response({'info': 'Subject deleted'}, status=200)
        else:
            return Response(
                {
                    "detail":
                    "You are not authorized to view subjects in this protocol"
                },
                status=403)