Advertisement
summonagus

Untitled

May 29th, 2018
329
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.09 KB | None | 0 0
  1. from django.contrib.auth.models import User
  2. from django.http import JsonResponse
  3.  
  4.  
  5. def check_user_online(request):
  6.     if request.method == 'POST':
  7.         user_id = request.POST.get('user_id')
  8.         user = User.objects.filter(id=user_id).first()
  9.         if user:
  10.             if user in request.online_now:
  11.                 return JsonResponse({'is_online': True})
  12.             return JsonResponse({'is_online': False})
  13.     return JsonResponse({'is_online': None})
  14.  
  15.  
  16.  
  17. urlpatterns = [
  18.     ....
  19.     path('check-user-online/', check_user_online, name='check_user_online'),
  20. ]
  21.  
  22.  
  23.  
  24. <script>
  25.   setInterval(checkUserOnline, 5000); // every 5 seconds
  26.  
  27.   var checkUserOnline = function() {
  28.     $.ajax({
  29.         type: 'POST',
  30.         url: '{% url "check_user_online" %}',
  31.         success: function(response) {
  32.           if(response['is_online']) {
  33.              // do something if user online
  34.           }else if(response['is_online'] == false) {
  35.              // do somehitng if user offline
  36.           }else {
  37.              // do something if 'null'
  38.           }
  39.         }
  40.     });
  41.   }
  42. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement