mirror of
https://github.com/Sendouc/sendou.ink.git
synced 2026-09-09 20:56:02 -05:00
isTestUser
This commit is contained in:
@@ -27,11 +27,12 @@ import {
|
||||
uniteGroupInfo,
|
||||
} from "~/core/play/utils";
|
||||
import { canUniteWithGroup, isGroupAdmin } from "~/core/play/validators";
|
||||
import { usePolling } from "~/hooks/common";
|
||||
import { usePolling, useUser } from "~/hooks/common";
|
||||
import * as LFGGroup from "~/models/LFGGroup.server";
|
||||
import * as LFGMatch from "~/models/LFGMatch.server";
|
||||
import styles from "~/styles/play-looking.css";
|
||||
import {
|
||||
isTestUser,
|
||||
makeTitle,
|
||||
parseRequestFormData,
|
||||
requireUser,
|
||||
@@ -326,6 +327,7 @@ export default function LookingPage() {
|
||||
|
||||
const isPolling = !lookingOver(data.type, data.ownGroup);
|
||||
const lastUpdated = usePolling(isPolling);
|
||||
const user = useUser();
|
||||
|
||||
if (lookingOver(data.type, data.ownGroup)) {
|
||||
return <FinishedGroup />;
|
||||
@@ -367,7 +369,7 @@ export default function LookingPage() {
|
||||
invariant(data.ownGroup.members, "!data.ownGroup.members");
|
||||
return (
|
||||
<>
|
||||
{data.ownGroup.members.length > 1 && (
|
||||
{data.ownGroup.members.length > 1 && isTestUser(user?.id) && (
|
||||
<Chat
|
||||
id={data.ownGroup.id}
|
||||
userInfos={Object.fromEntries(
|
||||
|
||||
@@ -40,6 +40,7 @@ import * as LFGMatch from "~/models/LFGMatch.server";
|
||||
import styles from "~/styles/play-match.css";
|
||||
import {
|
||||
getUser,
|
||||
isTestUser,
|
||||
listToUserReadableString,
|
||||
makeTitle,
|
||||
parseRequestFormData,
|
||||
@@ -373,16 +374,18 @@ export default function LFGMatchPage() {
|
||||
|
||||
return (
|
||||
<>
|
||||
{data.isOwnMatch && matchStartedInTheLastHour() && (
|
||||
<Chat
|
||||
id={params.id}
|
||||
userInfos={Object.fromEntries(
|
||||
data.groups
|
||||
.flatMap((g) => g.members)
|
||||
.flatMap((m) => (m.friendCode ? [[m.id, m.friendCode]] : []))
|
||||
)}
|
||||
/>
|
||||
)}
|
||||
{data.isOwnMatch &&
|
||||
matchStartedInTheLastHour() &&
|
||||
isTestUser(user?.id) && (
|
||||
<Chat
|
||||
id={params.id}
|
||||
userInfos={Object.fromEntries(
|
||||
data.groups
|
||||
.flatMap((g) => g.members)
|
||||
.flatMap((m) => (m.friendCode ? [[m.id, m.friendCode]] : []))
|
||||
)}
|
||||
/>
|
||||
)}
|
||||
<div>
|
||||
{actionData?.error === "DIFFERENT_SCORE" && (
|
||||
<div className="play-match__error">
|
||||
|
||||
@@ -3,6 +3,7 @@ import type { CSSProperties } from "react";
|
||||
import { json, useLocation } from "remix";
|
||||
import type { EventTargetRecorder } from "server/events";
|
||||
import { z } from "zod";
|
||||
import { ADMIN_UUID } from "~/constants";
|
||||
import { LoggedInUserSchema } from "~/utils/schemas";
|
||||
|
||||
export function flipObject<
|
||||
@@ -56,6 +57,13 @@ export function requireEvents(ctx: unknown) {
|
||||
}
|
||||
}
|
||||
|
||||
export function isTestUser(userId?: string) {
|
||||
// latter is N-ZAP
|
||||
return (
|
||||
userId === ADMIN_UUID || userId === "6cd9d01d-b724-498a-b706-eb70edd8a773"
|
||||
);
|
||||
}
|
||||
|
||||
// https://stackoverflow.com/a/57888548
|
||||
export function fetchTimeout(url: string, ms: number, options: RequestInit) {
|
||||
const controller = new AbortController();
|
||||
|
||||
Reference in New Issue
Block a user