From ea743ccac0f71ec94dc75a99bbfbb17740af28b0 Mon Sep 17 00:00:00 2001 From: NotBigGhost Date: Wed, 9 Sep 2026 20:20:33 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=B0=D1=80=D1=82=D0=B8=D1=8F:=20=D1=83?= =?UTF-8?q?=D0=B1=D1=80=D0=B0=D1=82=D1=8C=20=D0=B4=D1=83=D0=B1=D0=BB=D0=B8?= =?UTF-8?q?=D1=80=D1=83=D1=8E=D1=89=D0=B8=D0=B9=20=D1=82=D0=BE=D1=81=D1=82?= =?UTF-8?q?=20=D0=BE=20=D1=87=D1=83=D0=B6=D0=BE=D0=BC=20=D0=B7=D0=B0=D0=B2?= =?UTF-8?q?=D0=B5=D1=80=D1=88=D0=B5=D0=BD=D0=B8=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Тот, кто был в форме завершения, но не нажимал «Завершить», получал сразу два сообщения об одном событии: штатное уведомление сайта сверху (NotificationToaster по match_finished) и технический тост снизу. Нижний убран — сверху сказано то же самое, и там на него можно нажать, чтобы перейти к партии. Вместе с тостом ушли refs, которые обслуживали только его. #38 Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01BoiJK9ux8peeyjLb8TYjFf --- frontend/src/pages/MatchDetailPage.tsx | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/frontend/src/pages/MatchDetailPage.tsx b/frontend/src/pages/MatchDetailPage.tsx index 2ad8878..9988193 100644 --- a/frontend/src/pages/MatchDetailPage.tsx +++ b/frontend/src/pages/MatchDetailPage.tsx @@ -63,8 +63,6 @@ export function MatchDetailPage() { const draftPayload = useRef(null); const lastLocalEdit = useRef(0); const appliedDraftAt = useRef(null); - const iFinished = useRef(false); - const prevStatus = useRef(null); const sendDraft = () => { draftTimer.current = null; @@ -101,15 +99,6 @@ export function MatchDetailPage() { appliedDraftAt.current = incoming.updated_at; }, [incoming, match?.status, me?.id]); - // Партию завершил кто-то другой — форма исчезает, и без этого молча. - useEffect(() => { - if (!match) return; - if (prevStatus.current === "in_progress" && match.status === "finished" && !iFinished.current) { - toast.show("Партию завершил другой участник — показаны его результаты"); - } - prevStatus.current = match.status; - }, [match, toast]); - if (isLoading) return ; if (!match) return
Партия не найдена.
; @@ -146,7 +135,6 @@ export function MatchDetailPage() { clearTimeout(draftTimer.current); sendDraft(); } - iFinished.current = true; const commentOf = (uid: number) => (finishComments[uid] ?? "").trim() || null; let place = 1; const survivors = finishBlocks.flatMap((ids) => { -- 2.54.0