emile 10 months ago
parent 300ba4587d
commit 37209efb39

@ -19,6 +19,20 @@ class TicketRoomConsumer(WebsocketConsumer):
self.ticket = get_object_or_404(Ticket, id=self.ticket_id) self.ticket = get_object_or_404(Ticket, id=self.ticket_id)
self.ticket_number = self.ticket.ticket_number self.ticket_number = self.ticket.ticket_number
existing_connection = TicketConnection.objects.filter(ticket=self.ticket, user=self.user, terminated_at__isnull=True).delete()
TicketConnection.objects.create(
ticket=self.ticket,
user=self.user,
date=datetime.now()
)
staff_profile = StaffProfile.objects.filter(user=self.user).first()
if staff_profile:
if not TicketStaff.objects.filter(staff=staff_profile, ticket=self.ticket).exists():
TicketStaff.objects.create(
staff=staff_profile,
ticket=self.ticket,
date_added=datetime.now()
)
async_to_sync(self.channel_layer.group_add)( async_to_sync(self.channel_layer.group_add)(
self.ticket_number, self.channel_name self.ticket_number, self.channel_name
@ -156,11 +170,9 @@ class TicketRoomConsumer(WebsocketConsumer):
})) }))
def modify_online_user(self): def modify_online_user(self):
connections = TicketConnection.objects.filter(ticket=self.ticket, terminated_at__isnull=True)
event = { event = {
'type': 'user_connection_handler', 'type': 'user_connection_handler',
'user': self.user, 'user': self.user,
'connections': connections,
} }
async_to_sync(self.channel_layer.group_send)( async_to_sync(self.channel_layer.group_send)(
self.ticket_number, event self.ticket_number, event
@ -168,7 +180,6 @@ class TicketRoomConsumer(WebsocketConsumer):
def user_connection_handler(self, event): def user_connection_handler(self, event):
context = { context = {
'connections': event['connections'],
'user': event['user'] 'user': event['user']
} }
html = render_to_string("details_templates/partials/ticket-online-users.html", context=context) html = render_to_string("details_templates/partials/ticket-online-users.html", context=context)

Loading…
Cancel
Save