emile 1 year ago
parent e9291f6bfb
commit a75c7d2d70

@ -2,6 +2,7 @@ from .models import *
from django.contrib.auth.models import AnonymousUser
from datetime import datetime, timedelta
from django.shortcuts import get_object_or_404
from django.db.models import Max, F
def calculate_time_ago(status):
@ -21,14 +22,18 @@ def calculate_time_ago(status):
def utilities(request):
last_connections = Connection.objects.order_by('user', '-date').distinct('user')
latest_connections = Connection.objects.filter(
user__staffprofile__isnull=False
).values('user').annotate(
latest_connection=Max('date')
)
online_staff_profiles = []
for connection in last_connections:
if connection.status == 'Online':
# Add user staff profile to online_staff_profiles
online_staff_profiles.append(connection.user.staffprofile)
for connection in latest_connections:
user_id = connection['user']
latest_connection = connection['latest_connection']
last_connection = Connection.objects.filter(user_id=user_id, date=latest_connection).first()
if last_connection.status == 'Online':
online_staff_profiles.append(last_connection.user.staffprofile)
notes = None
recent_note = None
if request.user.is_authenticated:

@ -18,6 +18,6 @@ celery_app.autodiscover_tasks()
celery_app.conf.beat_schedule = {
'set-offline-every-minute': {
'task': 'osinacore.tasks.set_offline', # Assuming your task is in tasks.py in your_app
'schedule': crontab(second='*'), # Run every secon
'schedule': crontab(minute='1'), # Run every secon
},
}

Loading…
Cancel
Save