fix: make query check account for spaces

This commit is contained in:
Stavros
2025-02-16 21:14:09 +02:00
parent 0da82ae3fe
commit 0f8d2e7fde
4 changed files with 9 additions and 5 deletions

View File

@@ -4,6 +4,7 @@ import { Navigate } from "react-router";
import { useUserContext } from "../context/user-context";
import { Layout } from "../components/layouts/layout";
import { ReactNode } from "react";
import { isQueryValid } from "../utils/utils";
export const ContinuePage = () => {
const queryString = window.location.search;
@@ -16,7 +17,7 @@ export const ContinuePage = () => {
return <Navigate to={`/login?redirect_uri=${redirectUri}`} />;
}
if (redirectUri === "null" || redirectUri === "") {
if (!isQueryValid(redirectUri)) {
return <Navigate to="/" />;
}

View File

@@ -20,6 +20,7 @@ import { GoogleIcon } from "../icons/google";
import { GithubIcon } from "../icons/github";
import { OAuthIcon } from "../icons/oauth";
import { TailscaleIcon } from "../icons/tailscale";
import { isQueryValid } from "../utils/utils";
export const LoginPage = () => {
const queryString = window.location.search;
@@ -70,7 +71,7 @@ export const LoginPage = () => {
color: "green",
});
setTimeout(() => {
if (redirectUri === "null" || redirectUri === "") {
if (isQueryValid(redirectUri)) {
window.location.replace("/");
} else {
window.location.replace(`/continue?redirect_uri=${redirectUri}`);

View File

@@ -1,6 +1,7 @@
import { Button, Code, Paper, Text } from "@mantine/core";
import { Layout } from "../components/layouts/layout";
import { Navigate } from "react-router";
import { isQueryValid } from "../utils/utils";
export const UnauthorizedPage = () => {
const queryString = window.location.search;
@@ -8,7 +9,7 @@ export const UnauthorizedPage = () => {
const username = params.get("username") ?? "";
const resource = params.get("resource") ?? "";
if (username === "null" || username === "") {
if (!isQueryValid(username)) {
return <Navigate to="/" />;
}
@@ -20,7 +21,7 @@ export const UnauthorizedPage = () => {
</Text>
<Text>
The user with username <Code>{username}</Code> is not authorized to{" "}
{resource !== "null" && resource !== "" ? (
{isQueryValid(resource) ? (
<span>
access the <Code>{resource}</Code> resource.
</span>

View File

@@ -1 +1,2 @@
export const capitalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1);
export const isQueryValid = (value: string) => value.trim() !== "" && value !== "null";