Make everything case sensitive and also add a existing check for splash text thing

This commit is contained in:
2026-01-31 13:59:49 -07:00
parent 4383695846
commit acddabb7aa
3 changed files with 53 additions and 35 deletions

View File

@@ -3,7 +3,7 @@
-- https://www.phpmyadmin.net/
--
-- Host: localhost
-- Generation Time: Jan 31, 2026 at 04:12 AM
-- Generation Time: Jan 31, 2026 at 08:57 PM
-- Server version: 12.1.2-MariaDB
-- PHP Version: 8.5.2
@@ -31,7 +31,7 @@ CREATE TABLE `chatroom_reports` (
`id` bigint(20) NOT NULL,
`chatId` bigint(20) NOT NULL,
`userId` bigint(20) NOT NULL,
`reason` longtext NOT NULL,
`reason` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`timestamp` bigint(20) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=COMPRESSED;
@@ -44,7 +44,7 @@ CREATE TABLE `chatroom_reports` (
CREATE TABLE `chats` (
`id` bigint(20) NOT NULL,
`userId` bigint(20) NOT NULL,
`content` longtext NOT NULL,
`content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`timestamp` bigint(20) NOT NULL,
`deleted_at` bigint(20) NOT NULL DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=COMPRESSED;
@@ -56,14 +56,14 @@ CREATE TABLE `chats` (
--
CREATE TABLE `marketplaceicons` (
`id` varchar(36) NOT NULL,
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`userId` bigint(20) NOT NULL,
`data` mediumtext NOT NULL,
`hash` varchar(128) NOT NULL,
`data` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`hash` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`timestamp` bigint(20) NOT NULL,
`state` tinyint(1) NOT NULL DEFAULT 0,
`price` bigint(20) NOT NULL DEFAULT 0,
`name` text NOT NULL,
`name` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`place` bigint(20) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=COMPRESSED;
@@ -76,7 +76,7 @@ CREATE TABLE `marketplaceicons` (
CREATE TABLE `splashtexts` (
`id` bigint(20) NOT NULL,
`userId` bigint(20) NOT NULL,
`content` varchar(72) NOT NULL,
`content` varchar(72) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`timestamp` bigint(20) NOT NULL,
`state` tinyint(1) NOT NULL DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=COMPRESSED;
@@ -89,7 +89,7 @@ CREATE TABLE `splashtexts` (
CREATE TABLE `userdata` (
`id` bigint(20) NOT NULL,
`save_data` longtext NOT NULL DEFAULT '{}',
`save_data` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '{}',
`legacy_high_score` bigint(20) NOT NULL DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=COMPRESSED;
@@ -102,10 +102,10 @@ CREATE TABLE `userdata` (
CREATE TABLE `userposts` (
`id` bigint(20) NOT NULL,
`userId` bigint(20) NOT NULL,
`content` text NOT NULL,
`content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`timestamp` bigint(20) NOT NULL,
`deleted_at` bigint(20) NOT NULL DEFAULT 0,
`votes` text NOT NULL DEFAULT '{}'
`votes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '{}'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
--

View File

@@ -3,7 +3,7 @@
-- https://www.phpmyadmin.net/
--
-- Host: localhost
-- Generation Time: Jan 30, 2026 at 02:19 AM
-- Generation Time: Jan 31, 2026 at 08:57 PM
-- Server version: 12.1.2-MariaDB
-- PHP Version: 8.5.2
@@ -29,11 +29,11 @@ SET time_zone = "+00:00";
CREATE TABLE `games` (
`id` bigint(20) NOT NULL,
`name` text NOT NULL,
`name` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`official` tinyint(1) NOT NULL DEFAULT 0,
`verified` tinyint(1) NOT NULL DEFAULT 0,
`developer` varchar(32) DEFAULT NULL,
`categoryNames` text NOT NULL DEFAULT '\'{}\''
`developer` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
`categoryNames` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '{}'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
-- --------------------------------------------------------
@@ -43,13 +43,13 @@ CREATE TABLE `games` (
--
CREATE TABLE `launcherupdates` (
`id` varchar(24) NOT NULL,
`id` varchar(24) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`releaseDate` bigint(20) NOT NULL,
`downloadUrls` text NOT NULL,
`platforms` text NOT NULL,
`downloadUrls` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`platforms` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`hidden` tinyint(1) NOT NULL DEFAULT 1,
`place` bigint(20) NOT NULL DEFAULT 0,
`sha512sums` text NOT NULL DEFAULT '[]'
`sha512sums` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '[]'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=COMPRESSED;
-- --------------------------------------------------------
@@ -59,18 +59,18 @@ CREATE TABLE `launcherupdates` (
--
CREATE TABLE `launcherversionmanifest` (
`id` varchar(24) NOT NULL,
`displayName` text NOT NULL,
`id` varchar(24) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`displayName` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`releaseDate` bigint(20) NOT NULL,
`downloadUrls` text NOT NULL,
`platforms` text NOT NULL,
`executables` text NOT NULL,
`downloadUrls` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`platforms` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`executables` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`hidden` tinyint(1) NOT NULL DEFAULT 1,
`game` bigint(20) NOT NULL DEFAULT 0,
`place` bigint(20) NOT NULL DEFAULT 0,
`sha512sums` text NOT NULL DEFAULT '[]',
`sizes` text NOT NULL DEFAULT '\'[]\'',
`changelog` text DEFAULT NULL,
`sha512sums` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '[]',
`sizes` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '[]',
`changelog` text CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
`category` int(11) NOT NULL DEFAULT -1,
`lastRevision` bigint(20) NOT NULL DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=COMPRESSED;
@@ -82,7 +82,7 @@ CREATE TABLE `launcherversionmanifest` (
--
CREATE TABLE `loaderupdates` (
`id` varchar(24) NOT NULL,
`id` varchar(24) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`releaseDate` bigint(20) NOT NULL,
`hidden` tinyint(1) NOT NULL DEFAULT 1,
`place` bigint(20) NOT NULL DEFAULT 0
@@ -96,9 +96,9 @@ CREATE TABLE `loaderupdates` (
CREATE TABLE `resetcodes` (
`id` bigint(20) NOT NULL,
`code` varchar(64) DEFAULT NULL,
`code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
`userId` bigint(20) NOT NULL,
`ip` varchar(255) DEFAULT NULL,
`ip` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
`timestamp` bigint(20) NOT NULL,
`usedTimestamp` bigint(20) NOT NULL DEFAULT 0,
`type` int(1) NOT NULL
@@ -114,9 +114,9 @@ CREATE TABLE `users` (
`id` bigint(20) NOT NULL,
`username` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`password` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`email` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin NOT NULL,
`token` varchar(512) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin NOT NULL,
`latest_ip` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin DEFAULT NULL,
`email` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`token` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL,
`latest_ip` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
`register_time` bigint(20) NOT NULL,
`leaderboards_banned` tinyint(1) NOT NULL DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=COMPRESSED;
@@ -129,8 +129,8 @@ CREATE TABLE `users` (
CREATE TABLE `verifycodes` (
`id` bigint(20) NOT NULL,
`code` varchar(16) DEFAULT NULL,
`ip` varchar(255) DEFAULT NULL,
`code` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
`ip` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
`timestamp` bigint(20) NOT NULL,
`usedTimestamp` bigint(20) NOT NULL DEFAULT 0
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=COMPRESSED;

View File

@@ -7,6 +7,7 @@ import {
} from '../../../lib/util'
import { checkAuthorization } from '../../../lib/auth'
import { berryDashSplashTexts } from '../../../lib/tables'
import { eq } from 'drizzle-orm'
type Body = {
token: string
@@ -89,6 +90,23 @@ export async function handler (context: Context) {
)
}
const exists = await db1
.select()
.from(berryDashSplashTexts)
.where(eq(berryDashSplashTexts.content, btoa(body.content)))
.limit(1)
.execute()
if (exists[0]) {
return jsonResponse(
{
success: false,
message: 'That splash text already exists, accepted or denied.'
},
409
)
}
const result = await validateTurnstile(body.token, ip)
if (!result.success) {
connection0.end()