vpnmanager/manager/templatetags/userstatus.py

29 lines
825 B
Python

from django import template
from django.conf import settings
from manager.models import UserStatus
from django.utils import timezone
register = template.Library()
@register.simple_tag
def updateUserStatus(user, sec=False):
if user.is_authenticated:
try:
status = UserStatus.objects.filter(user=user)[0]
status.last_action = timezone.now()
status.save()
return ""
except IndexError:
if not sec:
UserStatus.objects.create(user=user)
return "<!-- %s -->" % updateUserStatus(user, True)
return "Unresolved IndexError"
except Exception as e:
return "<!-- %s -->" % str(e)
return ""
@register.simple_tag(takes_context=True)
def setUser(context):
return context.request.user