Merge pull request #5857 from normanjaeckel/HistoryReally
Added information to poll start and stop.
This commit is contained in:
commit
b08948f3e5
@ -1194,6 +1194,14 @@ class MotionPollViewSet(BasePollViewSet):
|
|||||||
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
def extend_history_information(self, information):
|
||||||
|
poll = self.get_object()
|
||||||
|
inform_changed_data(
|
||||||
|
poll.motion,
|
||||||
|
information=information,
|
||||||
|
user_id=self.request.user.pk,
|
||||||
|
)
|
||||||
|
|
||||||
def handle_analog_vote(self, data, poll):
|
def handle_analog_vote(self, data, poll):
|
||||||
option = poll.options.get()
|
option = poll.options.get()
|
||||||
vote, _ = MotionVote.objects.get_or_create(option=option, value="Y")
|
vote, _ = MotionVote.objects.get_or_create(option=option, value="Y")
|
||||||
|
@ -116,6 +116,11 @@ class BasePollViewSet(ModelViewSet):
|
|||||||
poll.state = BasePoll.STATE_FINISHED
|
poll.state = BasePoll.STATE_FINISHED
|
||||||
poll.save()
|
poll.save()
|
||||||
|
|
||||||
|
def extend_history_information(self, information):
|
||||||
|
# Use this method to add history information when a poll is started and stopped.
|
||||||
|
# The implementation can be found in concret view set e. g. MotionPollViewSet.
|
||||||
|
pass
|
||||||
|
|
||||||
@detail_route(methods=["POST"])
|
@detail_route(methods=["POST"])
|
||||||
@transaction.atomic
|
@transaction.atomic
|
||||||
def start(self, request, pk):
|
def start(self, request, pk):
|
||||||
@ -126,6 +131,7 @@ class BasePollViewSet(ModelViewSet):
|
|||||||
|
|
||||||
poll.save()
|
poll.save()
|
||||||
inform_changed_data(poll.get_votes())
|
inform_changed_data(poll.get_votes())
|
||||||
|
self.extend_history_information(["Voting started"])
|
||||||
return Response()
|
return Response()
|
||||||
|
|
||||||
@detail_route(methods=["POST"])
|
@detail_route(methods=["POST"])
|
||||||
@ -146,6 +152,7 @@ class BasePollViewSet(ModelViewSet):
|
|||||||
poll.save()
|
poll.save()
|
||||||
inform_changed_data(poll.get_votes())
|
inform_changed_data(poll.get_votes())
|
||||||
inform_changed_data(poll.get_options())
|
inform_changed_data(poll.get_options())
|
||||||
|
self.extend_history_information(["Voting stopped"])
|
||||||
return Response()
|
return Response()
|
||||||
|
|
||||||
@detail_route(methods=["POST"])
|
@detail_route(methods=["POST"])
|
||||||
@ -181,6 +188,7 @@ class BasePollViewSet(ModelViewSet):
|
|||||||
raise ValidationError({"detail": "You can just anonymize named polls."})
|
raise ValidationError({"detail": "You can just anonymize named polls."})
|
||||||
|
|
||||||
poll.pseudoanonymize()
|
poll.pseudoanonymize()
|
||||||
|
self.extend_history_information(["Voting anonymized"])
|
||||||
return Response()
|
return Response()
|
||||||
|
|
||||||
@detail_route(methods=["POST"])
|
@detail_route(methods=["POST"])
|
||||||
@ -188,6 +196,7 @@ class BasePollViewSet(ModelViewSet):
|
|||||||
def reset(self, request, pk):
|
def reset(self, request, pk):
|
||||||
poll = self.get_object()
|
poll = self.get_object()
|
||||||
poll.reset()
|
poll.reset()
|
||||||
|
self.extend_history_information(["Voting reset"])
|
||||||
return Response()
|
return Response()
|
||||||
|
|
||||||
@detail_route(methods=["POST"])
|
@detail_route(methods=["POST"])
|
||||||
|
Loading…
Reference in New Issue
Block a user