From b0f5f650bdd5dcbda43755a09ba4e9b9bbc67ea4 Mon Sep 17 00:00:00 2001 From: emile Date: Fri, 12 Jul 2024 09:17:38 +0300 Subject: [PATCH] new --- osinaweb/db.sqlite3 | Bin 1560576 -> 1560576 bytes .../__pycache__/consumers.cpython-310.pyc | Bin 7137 -> 6968 bytes osinaweb/support/consumers.py | 21 ++++-------------- 3 files changed, 4 insertions(+), 17 deletions(-) diff --git a/osinaweb/db.sqlite3 b/osinaweb/db.sqlite3 index d0a7a58d99f4b23a94de09f006fbebc2185d488f..b8f93ba2850f3c80f11f25862da7648e180804c8 100644 GIT binary patch delta 88 zcmV~$$q|A;006;S1mzIqrYOzEK$uYAF@MZplQ0fbvU`u)9=G!u*3au5)&mKW$VF1g eH#o7oT`gdCzJpYz}U|D1n% zch{FgE!Ai=JFJD#R-<*8mOUH<DU1h(UKws zn9Z4{Wr}x=?e&L}nKoA|+SQ8dFI97A99>reyVI$99QfQM%fy1BDlWoNl5suOLWY)LS>t{8r;No ziiKcuO;h>-Zso1QC96+-AN(yU6OEEeM&aG!o6xa(H*Khj(xf)!luL_@AAo?t_tB4x zl1+tSr}XkZ9M)*KDU+wm6x^f!C9hMA3nC+|ZNWqh2jn*4IrudP7cG zxx7=TR`_~&@J|-F?eJ&NY*#m}l10~MKU}S>3^lEhM#HJ>T({_H?M*c0ww-LuigT@{ zmsFx2j*Q*3aePHqRA^MFCNq^A$~9)HwA1F8sm-g`6vvNIQVhtEV$3NRC~}bahexTL zalzEIc+i@vQxW9TK@@Iy`6W_nb|%Qz(wTR~kY{5`G+q+l3kHS&*^$Ye!NEa5Q!<fa&1n20?)V#5+e&r(1o_@OkfTLIdXX?s3f2%enj_$__?hx_$pEKP8-@A zA&!B~djU;~$mpx3diy#?pNIDoZw|@_avYKofP5e=94&0j9yc(RvvZEay+}=QwxfTC z1(A~g9q^c!APvXGrybh|jzUy=TN#%dt5}z_%O5*AS#OI_=jr2TA^!?s4A5xGG`0;J zl9FY|T>G5X@2I~lyAjd(xLE95%g%|fJ9o45?NbQWsA*EYa3btd5g;cVR!Rr|>i^lgoklAVB`vAlo;K zZ3R#TtlGyU`Y49d?d(@^B0Y0x)dpULng44bCx#2=41kNj(nr`Xaky(Zjn;Co|Dz{9 L>Uvu3OZ5E%Zg1S$ delta 2730 zcmaJ@O>9(E6n^*3%$wKw=^xXXc3LD*N*w_~`a{uJi&TY8LE7?DqmN8(EAvz4RNb656{3gP zh8F_+#TMgBnr$uwnC8{5?qPP_0$Xe#ZGBGX6JDd_>)2yQ7WBoY zCCydb=$z!PT8T<4&7`+&sw;7e5n<5Na!Y60oVJ);(&RgZx2=t8nV5J(-#b5+3HXLr z$X#|kUPlS|EuOu$&Y%A+oR>3V-i^WWUH;`1R1Z|RLm|SFZKjeDZd|t{)tr=?2 z^&?QTvbOEmnO4%uRi+)ehsU6UWAodMG38tCh^s)XaIr+6h_C^~*9U*N9iN0m`2@(t%&!S!6RtoIH3&83Q6$X~ZA zl9j8J%TCTKRLXu_CTC462g@4Ih+p;U;PVuGj3rnj zi?FnAups>#%y^s#1zD0PeRUl%Ocwmd48+)MS_O5wQYneM$(>>`Fh0L_rWxkPHynJX zo~Lk1t$;SbnyznDr*R0p1MKa9FklyfAHT#a)oIHvxVbF1c@l!%fIS4uI`5{}L?lnJv1MTyY1SuZjnQZyl#c)g#1F>4`jT7ogRg+ywAwyd&&%c}OHkRAT$npKr*OsT7Zc|1DVax{c4l(6X&2Y(I`@D_M}qM+%^32K`3a~< z7t;1AEKdVA#>9t+R}?LgbL^2QM`q5Qgw7$rn}AV*@-SM@&Z`E1mDST5B-%G~RoAPOaHBXF zsy=TKMGWbS`Pi+3e9CGa9i zJ`lgfi}N~B7(a4i<965>mzu5L)@eqA)~5n;ga+pr2B;jEfe}B2fw68pSd-bZU356_ zB_o-T%4edHV-fFj@Xr&7cN@p-y;vOti~xoJ=o5|_ zbDWcmjbrCJYtpWa+#~^Ry_+B~HItbgX2k3_8wf+@u2>y6#p9L^G2Zm)AXGLVOec79 zEOik@*Gg7$Q{0I1Yti3a=*>eZSeqmq<5%rJ0BX}lWcFa?yXI$D6hYF5!nyiaue{c& zM7CG9qP&UnJ0x4Np0~h|y3yDZp3J&5N4Sc-B<>`hJy?bc`uSW=CoaH#7H|&mHu zvSd~N6iaP0M=!v_)2ez4f?7RlRmIHy1;Sat4KbR2ogEb)rAN}JH;4E?`-I-!6X;3o F`4{nOKP~_O diff --git a/osinaweb/support/consumers.py b/osinaweb/support/consumers.py index 71ab0ec1..d9a19e56 100644 --- a/osinaweb/support/consumers.py +++ b/osinaweb/support/consumers.py @@ -18,27 +18,11 @@ class TicketRoomConsumer(WebsocketConsumer): self.ticket_id = self.scope['url_route']['kwargs']['ticket_id'] self.ticket = get_object_or_404(Ticket, id=self.ticket_id) 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)( self.ticket_number, self.channel_name ) self.accept() - self.modify_online_user() + def disconnect(self, close_code): @@ -170,9 +154,11 @@ class TicketRoomConsumer(WebsocketConsumer): })) def modify_online_user(self): + connections = TicketConnection.objects.filter(ticket=self.ticket, terminated_at__isnull=True) event = { 'type': 'user_connection_handler', 'user': self.user, + 'connections': connections, } async_to_sync(self.channel_layer.group_send)( self.ticket_number, event @@ -180,6 +166,7 @@ class TicketRoomConsumer(WebsocketConsumer): def user_connection_handler(self, event): context = { + 'connections': event['connections'], 'user': event['user'] } html = render_to_string("details_templates/partials/ticket-online-users.html", context=context)