added loggin for state actions

This commit is contained in:
Thomas Nahuel Rusiecki 2024-12-09 17:26:31 -03:00
parent 56ed49ec4c
commit d305448e63

View file

@ -30,9 +30,7 @@ class NewActionView(View):
institution=request.user.institution, institution=request.user.institution,
) )
#TODO: also change logger for full fledged table #TODO: also change logger for full fledged table
device_logger.info( device_logger.info(f"Updated State to (key='{state_definition.state}', for device value='{snapshot_uuid}') by user {self.request.user}.")
f"Updated State to (key='{state_definition.state}', for device value='{snapshot_uuid}') by user {self.request.user}."
)
messages.success(request, f"Action to '{state_definition.state}' has been added.") messages.success(request, f"Action to '{state_definition.state}' has been added.")
return redirect(request.META.get('HTTP_REFERER')) return redirect(request.META.get('HTTP_REFERER'))
@ -42,13 +40,19 @@ class NewActionView(View):
class ActionUndoView(DeleteView): class ActionUndoView(DeleteView):
model = State model = State
success_url = reverse_lazy('state_list')
def delete(self, request, *args, **kwargs): def delete(self, request, *args, **kwargs):
self.object = self.get_object() self.object = self.get_object()
time_since_creation = timezone.now() - self.object.date time_since_creation = timezone.now() - self.object.date
if time_since_creation.total_seconds() <= 3600: # 1 hour is 3600 seconds if time_since_creation.total_seconds() <= 3600: # 1 hour is 3600 seconds
return super().delete(request, *args, **kwargs) device_logger.info(f"Action to state'{self.object.state}' has been deleted.")
data_to_return= super().delete(request, *args, **kwarg)
messages.success(request, f"Action to state'{self.object.state}' has been deleted.")
return data_to_return
else: else:
messages.error(request, "You can undo an action within one hour of its creation.") messages.error(request, "You can undo an action within one hour of its creation.")
return redirect(request.META.get('HTTP_REFERER')) return reverse_lazy(self.get_success_url())
def get_success_url(self):
return self.request.META.get('HTTP_REFERER', reverse_lazy('device:details', args=[self.object.snapshot_uuid]))