From a0318f76f40deaeba367badf18af6141325d29e9 Mon Sep 17 00:00:00 2001 From: HombreLaser Date: Thu, 25 May 2023 19:53:48 -0600 Subject: Añade redirecciones faltantes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/forms/login_form.tsx | 4 ++- src/components/user_account_dropdown_menu.tsx | 45 ++++++++++++++++++--------- src/lib/redirect_to.ts | 6 ++++ 3 files changed, 39 insertions(+), 16 deletions(-) create mode 100644 src/lib/redirect_to.ts (limited to 'src') diff --git a/src/components/forms/login_form.tsx b/src/components/forms/login_form.tsx index b1a2296..74557e2 100644 --- a/src/components/forms/login_form.tsx +++ b/src/components/forms/login_form.tsx @@ -1,9 +1,10 @@ import { Modal } from "flowbite"; -import UserAccountButton from "../user_account_button"; +import RedirectTo from '../../lib/redirect_to'; import { useEffect, useState } from "react"; import { ApiClient } from "../../clients/api_client"; import Token from "../../lib/token"; import "../stylesheets/shared.css" +import redirectTo from "../../lib/redirect_to"; export function LoginForm() { const [error_message, setErrorMessage] = useState(''); @@ -43,6 +44,7 @@ export function LoginForm() { const token = new Token(); token.set(response.data.token); token.setRefresh(response.data.refresh); + redirectTo('/products'); } catch(error) { setErrorMessage(error.response.data.errors.auth); } diff --git a/src/components/user_account_dropdown_menu.tsx b/src/components/user_account_dropdown_menu.tsx index 495f3c8..2bd0d28 100644 --- a/src/components/user_account_dropdown_menu.tsx +++ b/src/components/user_account_dropdown_menu.tsx @@ -1,22 +1,37 @@ import { PersonFill, DoorOpenFill, CardList } from "react-bootstrap-icons"; +import { BrowserRouter, Form } from "react-router-dom"; +import RedirectTo from '../lib/redirect_to'; +import Token from "../lib/token"; +import redirectTo from "../lib/redirect_to"; export default function UserAccountDropdownMenu() { + function logout() { + const token = new Token(); + token.logout(); + + redirectTo('/products'); + } + return( -
- -
- - Cerrar sesión + +
+ +
+ + +
-
+ ); } \ No newline at end of file diff --git a/src/lib/redirect_to.ts b/src/lib/redirect_to.ts new file mode 100644 index 0000000..e31e235 --- /dev/null +++ b/src/lib/redirect_to.ts @@ -0,0 +1,6 @@ +export default function redirectTo(route: string) { + const split_location = window.location.href.split('/') + const hostname = split_location.slice(0, split_location.length - 1).join('/'); + + window.location.href = hostname + route; +} \ No newline at end of file -- cgit v1.2.3