diff --git a/atsf_server/router/web-router.go b/atsf_server/router/web-router.go
index 8b485add..1be2f194 100644
--- a/atsf_server/router/web-router.go
+++ b/atsf_server/router/web-router.go
@@ -5,7 +5,6 @@ import (
"atsflare/controller"
"atsflare/middleware"
"embed"
- "fmt"
"github.com/gin-contrib/static"
"github.com/gin-gonic/gin"
"io/fs"
@@ -23,7 +22,6 @@ func setWebRouter(router *gin.Engine, buildFS embed.FS, indexPage []byte) {
router.Use(middleware.GlobalWebRateLimit())
fileDownloadRoute := router.Group("/")
fileDownloadRoute.GET("/upload/:file", middleware.DownloadRateLimit(), controller.DownloadFile)
- registerLegacyWebRedirects(router)
router.Use(middleware.Cache())
router.Use(static.Serve("/", common.EmbedFolder(buildFS, "web/build")))
router.NoRoute(func(c *gin.Context) {
@@ -40,35 +38,6 @@ func setWebRouter(router *gin.Engine, buildFS embed.FS, indexPage []byte) {
})
}
-func registerLegacyWebRedirects(router *gin.Engine) {
- legacyRoutes := map[string]string{
- "/proxy-route": "/proxy-routes",
- "/config-version": "/config-versions",
- "/node": "/nodes",
- "/apply-log": "/apply-logs",
- "/managed-domain": "/managed-domains",
- "/tls-certificate": "/tls-certificates",
- "/file": "/files",
- "/user": "/users",
- "/user/add": "/users?mode=create",
- "/user/edit": "/users",
- "/setting": "/settings",
- }
-
- for source, target := range legacyRoutes {
- router.GET(source, func(target string) gin.HandlerFunc {
- return func(c *gin.Context) {
- c.Redirect(http.StatusFound, target)
- }
- }(target))
- }
-
- router.GET("/user/edit/:id", func(c *gin.Context) {
- target := fmt.Sprintf("/users?edit=%s", c.Param("id"))
- c.Redirect(http.StatusFound, target)
- })
-}
-
func serveExportedPage(c *gin.Context, buildFS fs.FS) bool {
requestPath := strings.Trim(c.Request.URL.Path, "/")
diff --git a/atsf_server/web/app/apply-log/page.tsx b/atsf_server/web/app/apply-log/page.tsx
deleted file mode 100644
index a8ff62d4..00000000
--- a/atsf_server/web/app/apply-log/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacyApplyLogRoute() {
- return ;
-}
diff --git a/atsf_server/web/app/config-version/page.tsx b/atsf_server/web/app/config-version/page.tsx
deleted file mode 100644
index 786ffb1d..00000000
--- a/atsf_server/web/app/config-version/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacyConfigVersionPage() {
- return ;
-}
diff --git a/atsf_server/web/app/file/page.tsx b/atsf_server/web/app/file/page.tsx
deleted file mode 100644
index b7e741a5..00000000
--- a/atsf_server/web/app/file/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacyFilePage() {
- return ;
-}
diff --git a/atsf_server/web/app/managed-domain/page.tsx b/atsf_server/web/app/managed-domain/page.tsx
deleted file mode 100644
index 1263d90e..00000000
--- a/atsf_server/web/app/managed-domain/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacyManagedDomainRoute() {
- return ;
-}
diff --git a/atsf_server/web/app/node/page.tsx b/atsf_server/web/app/node/page.tsx
deleted file mode 100644
index a2743058..00000000
--- a/atsf_server/web/app/node/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacyNodePage() {
- return ;
-}
diff --git a/atsf_server/web/app/proxy-route/page.tsx b/atsf_server/web/app/proxy-route/page.tsx
deleted file mode 100644
index 6293ea5a..00000000
--- a/atsf_server/web/app/proxy-route/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacyProxyRoutePage() {
- return ;
-}
diff --git a/atsf_server/web/app/setting/page.tsx b/atsf_server/web/app/setting/page.tsx
deleted file mode 100644
index e4ada263..00000000
--- a/atsf_server/web/app/setting/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacySettingPage() {
- return ;
-}
diff --git a/atsf_server/web/app/tls-certificate/page.tsx b/atsf_server/web/app/tls-certificate/page.tsx
deleted file mode 100644
index d0395a7a..00000000
--- a/atsf_server/web/app/tls-certificate/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacyTlsCertificateRoute() {
- return ;
-}
diff --git a/atsf_server/web/app/user/add/page.tsx b/atsf_server/web/app/user/add/page.tsx
deleted file mode 100644
index fccf7ae8..00000000
--- a/atsf_server/web/app/user/add/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacyUserAddPage() {
- return ;
-}
diff --git a/atsf_server/web/app/user/edit/page.tsx b/atsf_server/web/app/user/edit/page.tsx
deleted file mode 100644
index 3d9c9762..00000000
--- a/atsf_server/web/app/user/edit/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacyUserEditPage() {
- return ;
-}
diff --git a/atsf_server/web/app/user/page.tsx b/atsf_server/web/app/user/page.tsx
deleted file mode 100644
index c04350c3..00000000
--- a/atsf_server/web/app/user/page.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { LegacyRouteRedirect } from '@/features/shared/components/legacy-route-redirect';
-
-export default function LegacyUserPage() {
- return ;
-}
diff --git a/atsf_server/web/features/shared/components/legacy-route-redirect.tsx b/atsf_server/web/features/shared/components/legacy-route-redirect.tsx
deleted file mode 100644
index 147e0d60..00000000
--- a/atsf_server/web/features/shared/components/legacy-route-redirect.tsx
+++ /dev/null
@@ -1,24 +0,0 @@
-'use client';
-
-import { useRouter } from 'next/navigation';
-import { useEffect } from 'react';
-
-import { LoadingState } from '@/components/feedback/loading-state';
-
-interface LegacyRouteRedirectProps {
- href: string;
-}
-
-export function LegacyRouteRedirect({ href }: LegacyRouteRedirectProps) {
- const router = useRouter();
-
- useEffect(() => {
- router.replace(href);
- }, [href, router]);
-
- return (
-
-
-
- );
-}
diff --git a/atsf_server/web/features/users/components/users-page.tsx b/atsf_server/web/features/users/components/users-page.tsx
index 79577cbd..954b13b5 100644
--- a/atsf_server/web/features/users/components/users-page.tsx
+++ b/atsf_server/web/features/users/components/users-page.tsx
@@ -2,7 +2,6 @@
import { zodResolver } from '@hookform/resolvers/zod';
import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
-import { useSearchParams } from 'next/navigation';
import { useEffect, useMemo, useState } from 'react';
import { useForm } from 'react-hook-form';
import { z } from 'zod';
@@ -95,7 +94,6 @@ function toPayload(values: UserFormValues): UserMutationPayload {
export function UsersPage() {
const queryClient = useQueryClient();
- const searchParams = useSearchParams();
const { user: currentUser } = useAuth();
const [page, setPage] = useState(0);
const [searchInput, setSearchInput] = useState('');
@@ -132,32 +130,12 @@ export function UsersPage() {
useEffect(() => {
if (editingUserQuery.data) {
form.reset({
- username: editingUserQuery.data.username,
- display_name: editingUserQuery.data.display_name || '',
- password: '',
- });
+ username: editingUserQuery.data.username,
+ display_name: editingUserQuery.data.display_name || '',
+ password: '',
+ });
}
}, [editingUserQuery.data, form]);
-
- useEffect(() => {
- const editParam = searchParams?.get('edit');
- const modeParam = searchParams?.get('mode');
-
- if (editParam) {
- const parsedUserId = Number.parseInt(editParam, 10);
- if (!Number.isNaN(parsedUserId) && parsedUserId > 0) {
- setFeedback(null);
- setEditingUserId(parsedUserId);
- }
- return;
- }
-
- if (modeParam === 'create') {
- setFeedback(null);
- setEditingUserId(null);
- form.reset(defaultValues);
- }
- }, [form, searchParams]);
const saveMutation = useMutation({
mutationFn: async (values: UserFormValues) => {