mirror of
https://github.com/nikdoof/test-auth.git
synced 2025-12-14 14:52:15 +00:00
Fix date/time fuctions for timezone information
This commit is contained in:
@@ -1,7 +1,10 @@
|
|||||||
from urllib import urlencode
|
from urllib import urlencode
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
from django.http import HttpResponseForbidden
|
from django.http import HttpResponseForbidden
|
||||||
from django.contrib.auth.models import AnonymousUser
|
from django.contrib.auth.models import AnonymousUser
|
||||||
|
from django.utils.timezone import now
|
||||||
|
|
||||||
from api.models import AuthAPIKey, AuthAPILog
|
from api.models import AuthAPIKey, AuthAPILog
|
||||||
|
|
||||||
|
|
||||||
@@ -21,7 +24,7 @@ class APIKeyAuthentication(object):
|
|||||||
url = "%s?%s" % (request.path, urlencode(params))
|
url = "%s?%s" % (request.path, urlencode(params))
|
||||||
else:
|
else:
|
||||||
url = request.path
|
url = request.path
|
||||||
AuthAPILog(key=keyobj, access_datetime=datetime.utcnow(), url=url).save()
|
AuthAPILog(key=keyobj, access_datetime=now(), url=url).save()
|
||||||
request.user = AnonymousUser()
|
request.user = AnonymousUser()
|
||||||
request.api_key = keyobj
|
request.api_key = keyobj
|
||||||
return True
|
return True
|
||||||
|
|||||||
@@ -5,17 +5,16 @@ from operator import itemgetter
|
|||||||
|
|
||||||
from django.contrib.auth import login, logout, authenticate
|
from django.contrib.auth import login, logout, authenticate
|
||||||
from django.contrib.auth.models import User
|
from django.contrib.auth.models import User
|
||||||
|
|
||||||
from django.http import HttpResponse
|
from django.http import HttpResponse
|
||||||
from django.core.urlresolvers import reverse
|
from django.core.urlresolvers import reverse
|
||||||
from django.shortcuts import get_object_or_404
|
from django.shortcuts import get_object_or_404
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
from django.utils.timezone import now, utc
|
||||||
|
|
||||||
from piston.handler import BaseHandler
|
from piston.handler import BaseHandler
|
||||||
from piston.utils import rc, throttle
|
from piston.utils import rc, throttle
|
||||||
|
|
||||||
from api.models import AuthAPIKey, AuthAPILog
|
from api.models import AuthAPIKey, AuthAPILog
|
||||||
|
|
||||||
from eve_proxy.models import CachedDocument
|
from eve_proxy.models import CachedDocument
|
||||||
from eve_proxy.exceptions import *
|
from eve_proxy.exceptions import *
|
||||||
from eve_api.app_defines import *
|
from eve_api.app_defines import *
|
||||||
@@ -54,12 +53,10 @@ class OAuthOpTimerHandler(BaseHandler):
|
|||||||
|
|
||||||
for node in dom.getElementsByTagName('rowset')[0].childNodes:
|
for node in dom.getElementsByTagName('rowset')[0].childNodes:
|
||||||
if node.nodeType == 1:
|
if node.nodeType == 1:
|
||||||
ownerID = node.getAttribute('ownerID')
|
ownerID = node.getAttribute('ownerID')
|
||||||
if ownerID != '1':
|
if ownerID != '1':
|
||||||
date = node.getAttribute('eventDate')
|
dt = datetime.strptime(node.getAttribute('eventDate'), '%Y-%m-%d %H:%M:%S').replace(tzinfo=utc)
|
||||||
dt = datetime.strptime(date, '%Y-%m-%d %H:%M:%S')
|
startsIn = int(dt.strftime('%s')) - int(now().strftime('%s'))
|
||||||
now = datetime.utcnow()
|
|
||||||
startsIn = int(dt.strftime('%s')) - int(now.strftime('%s'))
|
|
||||||
duration = int(node.getAttribute('duration'))
|
duration = int(node.getAttribute('duration'))
|
||||||
|
|
||||||
fid = re.search('topic=[\d]+', node.getAttribute('eventText'))
|
fid = re.search('topic=[\d]+', node.getAttribute('eventText'))
|
||||||
@@ -84,7 +81,7 @@ class OAuthOpTimerHandler(BaseHandler):
|
|||||||
'isImportant': int(node.getAttribute('importance')),
|
'isImportant': int(node.getAttribute('importance')),
|
||||||
'eventText': node.getAttribute('eventText'),
|
'eventText': node.getAttribute('eventText'),
|
||||||
'endsIn':endsIn,
|
'endsIn':endsIn,
|
||||||
'forumLink': forumlink}
|
'forumLink': forumlink}
|
||||||
events.append(event)
|
events.append(event)
|
||||||
|
|
||||||
if len(events) == 0:
|
if len(events) == 0:
|
||||||
@@ -101,7 +98,7 @@ class OAuthOpTimerHandler(BaseHandler):
|
|||||||
'forumLink': ''}]}
|
'forumLink': ''}]}
|
||||||
else:
|
else:
|
||||||
events.sort(key=itemgetter('startsIn'))
|
events.sort(key=itemgetter('startsIn'))
|
||||||
return {'ops': events, 'doc_time': cached_doc.time_retrieved, 'cache_until': cached_doc.cached_until, 'current_time': datetime.utcnow() }
|
return {'ops': events, 'doc_time': cached_doc.time_retrieved, 'cache_until': cached_doc.cached_until, 'current_time': now() }
|
||||||
|
|
||||||
|
|
||||||
class OAuthCharacterHandler(BaseHandler):
|
class OAuthCharacterHandler(BaseHandler):
|
||||||
|
|||||||
@@ -4,11 +4,11 @@ from xml.dom import minidom
|
|||||||
from operator import itemgetter
|
from operator import itemgetter
|
||||||
|
|
||||||
from django.contrib.auth.models import User
|
from django.contrib.auth.models import User
|
||||||
|
|
||||||
from django.http import HttpResponse
|
from django.http import HttpResponse
|
||||||
from django.core.urlresolvers import reverse
|
from django.core.urlresolvers import reverse
|
||||||
from django.shortcuts import get_object_or_404
|
from django.shortcuts import get_object_or_404
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
from django.utils.timezone import now
|
||||||
|
|
||||||
from BeautifulSoup import BeautifulSoup
|
from BeautifulSoup import BeautifulSoup
|
||||||
from piston.handler import BaseHandler
|
from piston.handler import BaseHandler
|
||||||
@@ -194,12 +194,10 @@ class OpTimerHandler(BaseHandler):
|
|||||||
events = []
|
events = []
|
||||||
for node in dom.getElementsByTagName('rowset')[0].childNodes:
|
for node in dom.getElementsByTagName('rowset')[0].childNodes:
|
||||||
if node.nodeType == 1:
|
if node.nodeType == 1:
|
||||||
ownerID = node.getAttribute('ownerID')
|
ownerID = node.getAttribute('ownerID')
|
||||||
if ownerID != '1':
|
if ownerID != '1':
|
||||||
date = node.getAttribute('eventDate')
|
dt = datetime.strptime(node.getAttribute('eventDate'), '%Y-%m-%d %H:%M:%S').replace(tzinfo=utc)
|
||||||
dt = datetime.strptime(date, '%Y-%m-%d %H:%M:%S')
|
startsIn = int(dt.strftime('%s')) - int(now().strftime('%s'))
|
||||||
now = datetime.utcnow()
|
|
||||||
startsIn = int(dt.strftime('%s')) - int(now.strftime('%s'))
|
|
||||||
duration = int(node.getAttribute('duration'))
|
duration = int(node.getAttribute('duration'))
|
||||||
|
|
||||||
fid = re.search('topic=[\d]+', node.getAttribute('eventText'))
|
fid = re.search('topic=[\d]+', node.getAttribute('eventText'))
|
||||||
@@ -224,7 +222,7 @@ class OpTimerHandler(BaseHandler):
|
|||||||
'isImportant': int(node.getAttribute('importance')),
|
'isImportant': int(node.getAttribute('importance')),
|
||||||
'eventText': ' '.join(BeautifulSoup(node.getAttribute('eventText')).findAll(text=True)),
|
'eventText': ' '.join(BeautifulSoup(node.getAttribute('eventText')).findAll(text=True)),
|
||||||
'endsIn':endsIn,
|
'endsIn':endsIn,
|
||||||
'forumLink': forumlink}
|
'forumLink': forumlink}
|
||||||
events.append(event)
|
events.append(event)
|
||||||
if len(events) == 0:
|
if len(events) == 0:
|
||||||
return {'ops':[{
|
return {'ops':[{
|
||||||
@@ -240,7 +238,7 @@ class OpTimerHandler(BaseHandler):
|
|||||||
'forumLink': ''}]}
|
'forumLink': ''}]}
|
||||||
else:
|
else:
|
||||||
events.sort(key=itemgetter('startsIn'))
|
events.sort(key=itemgetter('startsIn'))
|
||||||
return {'ops': events, 'doc_time': cached_doc.time_retrieved, 'cache_until': cached_doc.cached_until, 'current_time': datetime.utcnow() }
|
return {'ops': events, 'doc_time': cached_doc.time_retrieved, 'cache_until': cached_doc.cached_until, 'current_time': now() }
|
||||||
|
|
||||||
|
|
||||||
class BlacklistHandler(BaseHandler):
|
class BlacklistHandler(BaseHandler):
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ from django.forms.extras.widgets import SelectDateWidget
|
|||||||
from django.views.generic import TemplateView, DetailView, FormView, CreateView, ListView
|
from django.views.generic import TemplateView, DetailView, FormView, CreateView, ListView
|
||||||
from django.views.generic.detail import BaseDetailView
|
from django.views.generic.detail import BaseDetailView
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
from django.utils.timezone import now
|
||||||
|
|
||||||
from gargoyle import gargoyle
|
from gargoyle import gargoyle
|
||||||
|
|
||||||
@@ -354,7 +355,7 @@ class HrBlacklistUser(FormView):
|
|||||||
self.source = BlacklistSource.objects.get(id=1)
|
self.source = BlacklistSource.objects.get(id=1)
|
||||||
self.expiry = form.cleaned_data.get('expiry_date', None)
|
self.expiry = form.cleaned_data.get('expiry_date', None)
|
||||||
if not self.expiry:
|
if not self.expiry:
|
||||||
self.expiry = datetime.utcnow() + timedelta(days=50*365) # 50 year default
|
self.expiry = now() + timedelta(days=50*365) # 50 year default
|
||||||
self.level = form.cleaned_data.get('level', 0)
|
self.level = form.cleaned_data.get('level', 0)
|
||||||
self.reason = form.cleaned_data.get('reason', 'No reason provided')
|
self.reason = form.cleaned_data.get('reason', 'No reason provided')
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
from django.db import IntegrityError
|
from django.db import IntegrityError
|
||||||
from django.contrib.auth import logout
|
from django.contrib.auth import logout
|
||||||
|
from django.utils.timezone import utc, now
|
||||||
|
|
||||||
class InactiveLogoutMiddleware(object):
|
class InactiveLogoutMiddleware(object):
|
||||||
"""
|
"""
|
||||||
@@ -59,7 +60,5 @@ class IPTrackingMiddleware(object):
|
|||||||
|
|
||||||
if request.user and not request.user.is_anonymous():
|
if request.user and not request.user.is_anonymous():
|
||||||
ip, created = SSOUserIPAddress.objects.get_or_create(user=request.user, ip_address=request.META['REMOTE_ADDR'])
|
ip, created = SSOUserIPAddress.objects.get_or_create(user=request.user, ip_address=request.META['REMOTE_ADDR'])
|
||||||
if created:
|
ip.last_seen = now()
|
||||||
ip.first_seen = datetime.utcnow()
|
|
||||||
ip.last_seen = datetime.utcnow()
|
|
||||||
ip.save()
|
ip.save()
|
||||||
|
|||||||
Reference in New Issue
Block a user