diff --git a/src/auditlog/mixins.py b/src/auditlog/mixins.py index 2b69e5ae..1f4ea81a 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" @@ -41,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 obj.timestamp.strftime('%b. %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): @@ -84,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) @@ -118,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 += '