From 03829fff364743ee3f2b9e7e538677636d63b186 Mon Sep 17 00:00:00 2001 From: emile Date: Fri, 12 Jul 2024 09:06:21 +0300 Subject: [PATCH] new --- osinaweb/db.sqlite3 | Bin 1560576 -> 1560576 bytes .../__pycache__/consumers.cpython-310.pyc | Bin 7137 -> 6435 bytes osinaweb/support/consumers.py | 57 +----------------- 3 files changed, 3 insertions(+), 54 deletions(-) diff --git a/osinaweb/db.sqlite3 b/osinaweb/db.sqlite3 index 1c46c3b7dd45c4741eb18550aeeb6977edeff614..e30013d15ec8abd116942ed51147f83f0becfef8 100644 GIT binary patch delta 841 zcmaKoO-lkn7{^_;b#>L<)g3!%Aat_OW?y`VNV*4o0j-O-sBh3ppai8GlmijEhv?EN zg0@2^p%37(TX^ea(X~U5%_-dV@SB0>$A9=gV^|HtYM4nzyhv>`;=|s4hUuS-GM!O| z0la_@@B>Q#3j_cT2m&F12g3F!6Zw8kaX}TUdKMS6ikilS3eH#Zr5wgZRnt1-X#|J@ zf<2y!n&p>-Qx6d>cGX@trMiGvALC7W`t-V@*JWoglz^B$7{;6Lkh%7d)DZ_6Lp~J9 z&kNIhGG+g#PvR#eV4xK?To0%DiM?i^Xa2a_O0b?96RgcO)3hAcaY<8?bLy|Oo-dcH zE##KQxq_mUmHfiAyy+O%D;Vc=y@-pYh4DDq?IM{xo}q;N??Y*~7}Z}cTB3U6+&L{$ zec+-6s_$KNlAq(f9sTy&7?bk8}>QC)Y@0jh6Y VG&|EWdFwgt*)~zzOx&5vTfaE3*x&#F delta 823 zcmZ{f%}X0W7>8$?WRn=(P2!FPn@D<+6|$X=-Ry@KrI1r86ucE0+k@ai$gS6?#Za`m z#lu`e%t3moms05V;w8{Oz@vC6-aOgTf1qz1ghF?DdFF+A-rs!mMxEZM6FtKCW9=!% zU)En+_;`10^~V+l9sn623*-O|$O8qS2uuMbU^*UKGk<>6iUm%&)1+RLu?7o5?uVS( zo zs`2n-cH<``&ycKj3-#Q411etXnO&p0*}j{9(?&ZGd)Y?YQa{IQ-y$>nE2B>jWWGo0 zTFIIeM9BBjV#^l{q3k?b#d!7p@ziNB9y&a9J)3!)3n8EFlZD5btK>1qx0!Gm4erK* z%phe<*uGEQ7Sr1Q-Xucmgu+?go|P{Si7CGxkU5hzXe;DS=mxeB)Sc+6(!W!5Md>FW zlGA0Sw^FpB^yd_yeVw9np crRcoUgA}bzv?(u-lK#0Dk-cc{Q}l4OK%%h6!x7NPsVS@X`I@jfmYPSM9>mSn!Z4#4+KOmByQ`vO)bZFlGsV?%O*CzVLux3O7LpP3pAH`*|kemF24_6 zT=jzXHM{PX-0RD>XUw}xiyO=fxb|CaiPXwj%M0hLl?B^9ugt`53ghW>wkrZe2@{`& zW7oN7)SO1$^YiA?vXeE%Q;_(TbMYKhp8-4%7z1P#q<~Koc+suA=F4@yXp1rVPN={f z`CDjZb`)}xGOX6;#35K5CfG1kba4!f=R?!E~5_Y-bRvUE@fosi+ zxT?XWb^|=C(j*T{wxFnI;T745SD>p4FtX0@^WnPl1?rRdZ*|);{>j+#%fy2SJOG; z+AZxS<2rpAEyj&?{if#n>C3G3tTFm;wX`*j`M8f()St^!Q)A>p#0lizvD9c*_YCZ% zs?Q5m8uhxZI_G2qVgRbDT(v{WG9Z7khK^F3)C%OFq4wa>35g5|uF-Q4DZw<&U>Y<3 z3i{7sOi|E2y|EoFtie8L%VO3F5s?Po-*VCNm#|4U5v%Sp0z; z>3x=kWU==^`X$(63gR^2bpXl~6Y{g(y~zZTmd|3=V^+|L(eqpT!l66&dl`FA{+g(= z3v!}wl-=H3?fZlsQcI?eGz=GN$)chkbZ5VM=F3jmbwzvmre&djICB*$*wlZ!%!j)r zKkYwawog<3-v1=~PzIA1UVQ^*ZvrL(BY=Z|DxlLAMd64=p5R@2e^>;nIxB37yxd6c zVN>#Ma-5z2U||37Md%g)9Vf~jA-)Fx62Xnf<-O#94D{_C6Gi&YYB{k8;bp)9zz%aH z_bvEW2yX0y`Q}dp8m|N19AF->HJG9F2>U_4mR>pepM!Cs t-f4=WRAU!N@D+qLz=HfUeU=@Urv`H-Mn;U=gBdm?zZ=|R#8-D^{sDQ(YzP1V delta 2364 zcmaJ?O>7%Q6y8~{*Zb$6#BQCIlr~YCcBz2Umi|E@5e3=bjSvTVNK|pCgoIFp#0d!w9OwmcTuum8^oUf6Q$=}i)=okNNwnX*dGp?z z_czbC5Bzo{RZk`j3I1OH@sq2c@A*1)hL8z9lHSdi$X<)~z9&tZG&?TYxz(@8U8QY- zs0!aJ@Oe)XN%Ey-5|9WG(ErGKqU}o z&%<$;_1f#KuI6OA*`SW^7MSZ4{ZhRaYHO6ihwSJCUw0c zD>WiZS4$Q5tmDtvN~k%Mx@}sRT3|1rbQ&QGV9R0BFBNB9zYtv)>Zn#|fL@sDc+d&c zme((}dqbt{fxq!e-JxC>n|6JcL#qjdL4eShX7y&H;JG!*wgRIaS`*@`^CD)}hmubq zp!1PW{YdQq2s4rFsP8+)nJSbZR6J+iWhpqcEw%?`bl<)17a)PoWNM8ppkM4cJdcao zMF~14wSl8d)#*ZLti|YsRup~|Dtj5#dO8_#*6wCD@FRE%B@)anx}|ydFl@Xl00uFL zCd;x$)V~cyCE6n`rpU@8BNovb(a3Q)Co&M~Lqip81!$rGPk~i^sHu1^3lp*oypE~G z?R>!65*Ih}syZ7Nb?3jU7q3KdDl>kya)+=};EAoVS7C{=i!VLOF1~xnAl70O$vACR z8=kF-M6%N;Cz|PLq|PFo;{(ZTd<4h}|0QvWJmCAZxfjpi(E)@v5yk=TC=9K$2?R9G z&PQCVQDl1EpnedTH{g4~WqochmWg2&g(W-oxDmPIpYY`f$i2UMS5J}4>y4iTCUoXY zu!LH%3Gc4zGBAXUsPb>2L`-CA!-GN3?PQdk4GH6;=FooeqPC*}(VqVf3=+H^SmX!) z)I6cG
%zh_qXw>fLt8-gvxVJT4=h79qMmdi0QK$U=W2dEtz3-e9SWrbqBR&&J| z=)QAy2)&F)UMA2Xd|B)y0zN4=35m(~d!oBD;f!6vY$ppqeuLY~0DLa>46*of>e-<&*afdLIj95f!z1x-9K@N$g zIERKXrl>PgYzxw2W?)x`i5bU(2O14uR^^}d?j5e72$uW58gi{}{9f-dwbPM9*&*^X zKb^g>^Bq)k5T+3JA?!z3KoAk-DUjd8_W(l^5owmnD8HZGL5f_>9VIS*Ik#J#MwJ;% zLK^Md$88BqQ|xz`GOF`p%W@sIO!|DXLOp)68~Q{xZZE+X9EBYm%t lQT{>Sn2L1)#;<+DL%V>qBnzgjMy$?%m(IkbcIIGi_#a%S4GsVR diff --git a/osinaweb/support/consumers.py b/osinaweb/support/consumers.py index 71ab0ec1..b87fe0fc 100644 --- a/osinaweb/support/consumers.py +++ b/osinaweb/support/consumers.py @@ -51,60 +51,6 @@ class TicketRoomConsumer(WebsocketConsumer): ) self.modify_online_user() - def receive(self, text_data): - text_data_json = json.loads(text_data) - event_type = text_data_json.get('event_type') - - if event_type == 'typing': - event = { - 'type': 'typing_handler', - 'user': self.scope['user'] - } - async_to_sync(self.channel_layer.group_send)( - self.ticket_number, event - ) - elif event_type == 'stop_typing': - event = { - 'type': 'stop_typing_handler', - } - async_to_sync(self.channel_layer.group_send)( - self.ticket_number, event - ) - elif event_type == 'update_reaction': - reaction = text_data_json['reaction'] - update_id = text_data_json['update_id'] - event = { - 'type': 'reaction_handler', - 'update_id': update_id, - 'reaction': reaction, - 'user': self.scope['user'] - } - async_to_sync(self.channel_layer.group_send)( - self.ticket_number, event - ) - else: - body = text_data_json['description'] - file_paths = text_data_json['filePath'] - ticketupdate = TicketUpdate.objects.create( - added_by=self.user, - description=body, - ticket=self.ticket, - date_added=datetime.now() - ) - for file_path in file_paths: - ticket_attachment = TicketAttachment( - ticket_update=ticketupdate, - file_path=file_path - ) - ticket_attachment.save() - event = { - 'type': 'update_handler', - 'update_id': ticketupdate.id - } - async_to_sync(self.channel_layer.group_send)( - self.ticket_number, event - ) - def update_handler(self, event): update_id = event['update_id'] update = TicketUpdate.objects.get(id=update_id) @@ -170,9 +116,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 +128,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)