From bf2222e9001e403ca1ffb592ce45bce0228776f5 Mon Sep 17 00:00:00 2001 From: Ankitashinde0 <53168131+Ankitashinde0@users.noreply.github.com> Date: Wed, 11 Dec 2019 19:09:21 +0530 Subject: [PATCH 1/2] Update mixins.py --- src/auditlog/mixins.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/auditlog/mixins.py b/src/auditlog/mixins.py index 2b69e5ae..139d858b 100644 --- a/src/auditlog/mixins.py +++ b/src/auditlog/mixins.py @@ -5,6 +5,9 @@ from .middleware import AuditlogMiddleware import threading import time +import requests +from auditlog.models import LogEntry +import pytz try: @@ -31,7 +34,7 @@ def disp_remote_addr(self,obj): class LogEntryAdminMixin(object): - #GOIP API used to get user location details. + #GEOIP API used to get user location details. headers = { 'accept': "application/json", 'content-type': "application/json" @@ -48,7 +51,7 @@ def created(self, obj): system_tz = pytz.timezone('UTC') local_tz = pytz.timezone(LogEntryAdminMixin.tz_from_response) #local tz set as timezone from response local_ts = system_tz.localize(new_ts).astimezone(local_tz) #returns datetime in the local timezone - return obj.timestamp.strftime('%b. %d, %Y, %I:%M %p') #Displays date in diff format + return local_ts.strftime('%m/%d/%Y %I:%M %p') #Displays date in diff format created.short_description = 'Date' def entity_type(self,obj): From 08bc5eb7c178b1bf7ad1181a0e58a62dfaaa0c8c Mon Sep 17 00:00:00 2001 From: Ankitashinde0 <53168131+Ankitashinde0@users.noreply.github.com> Date: Thu, 12 Dec 2019 17:34:35 +0530 Subject: [PATCH 2/2] Update mixins.py --- src/auditlog/mixins.py | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/src/auditlog/mixins.py b/src/auditlog/mixins.py index 139d858b..1f4ea81a 100644 --- a/src/auditlog/mixins.py +++ b/src/auditlog/mixins.py @@ -44,14 +44,13 @@ class LogEntryAdminMixin(object): tz_from_response = response_dict["time_zone"] def created(self, obj): - Audit_data = LogEntry.objects.all() - for audit_obj in Audit_data: - new_ts = audit_obj.timestamp.strftime("%m/%d/%Y %I:%M %p") - new_ts = audit_obj.timestamp.strptime(new_ts,"%m/%d/%Y %I:%M %p") - system_tz = pytz.timezone('UTC') - local_tz = pytz.timezone(LogEntryAdminMixin.tz_from_response) #local tz set as timezone from response - local_ts = system_tz.localize(new_ts).astimezone(local_tz) #returns datetime in the local timezone - return local_ts.strftime('%m/%d/%Y %I:%M %p') #Displays date in diff format + new_ts = obj.timestamp.strftime("%m/%d/%Y %I:%M %p") + new_ts = obj.timestamp.strptime(new_ts,"%m/%d/%Y %I:%M %p") + system_tz = pytz.timezone(settings.TIME_ZONE) + local_tz = pytz.timezone(LogEntryAdminMixin.tz_from_response) #local tz set as timezone from response + local_ts = system_tz.localize(new_ts).astimezone(local_tz) #returns datetime in the local timezone + local_ts = local_ts.strftime("%m/%d/%Y %I:%M %p") + return local_ts created.short_description = 'Date' def entity_type(self,obj): @@ -87,9 +86,6 @@ def resource_url(self, obj): link = urlresolvers.reverse(viewname, args=args) except NoReverseMatch: obj_store = obj.object_repr - print('obj_store---- in alice test----',obj_store) - print("type(obj_store-----1st in alice test----",type(obj_store)) - print(obj_store.isnumeric()) return obj.object_repr else: obj_store = str(obj.object_repr) @@ -121,13 +117,17 @@ def msg(self, obj): #changes for last_login field in logging entries if field == 'last_login': for i in range(len(changes[field])): #iterating list + system_tz = pytz.timezone(settings.TIME_ZONE) + local_tz = pytz.timezone(LogEntryAdminMixin.tz_from_response) #local tz set as timezone from response ologin_date = changes[field][0] #storing value at index 0 as old login date - ologin_date = datetime.datetime.strptime(ologin_date, '%Y-%m-%d %H:%M:%S.%f') #converting string into datetime obj - ologin_date = ologin_date.strftime("%m/%d/%Y %I:%M %p") #converting date into string type - nlogin_date = changes[field][1] #storing value at index 1 as new login date - nlogin_date = datetime.datetime.strptime(nlogin_date, '%Y-%m-%d %H:%M:%S.%f') #converting string into datetime obj - nlogin_date = nlogin_date.strftime("%m/%d/%Y %I:%M %p") #converting date into string type - value = [i,field] + [ologin_date,nlogin_date] + ologin_date = datetime.datetime.strptime(ologin_date, "%Y-%m-%d %H:%M:%S.%f") #from str to dt obj + local_ologin_date = system_tz.localize(ologin_date).astimezone(local_tz) #returns datetime in the local timezone + local_ologin_date = local_ologin_date.strftime("%m/%d/%Y %I:%M %p") #converting date into string type + nlogin_date = changes[field][1] #storing value at index 0 as old login date + nlogin_date = datetime.datetime.strptime(nlogin_date, "%Y-%m-%d %H:%M:%S.%f") #from str to dt obj + local_nlogin_date = system_tz.localize(nlogin_date).astimezone(local_tz) #returns datetime in the local timezone + local_nlogin_date = local_nlogin_date.strftime("%m/%d/%Y %I:%M %p") #converting date into string type + value = [i,field] + [local_ologin_date,local_nlogin_date] msg += '