From 2c29597f1d4b1c6e770cc4837337a64ca6abea7c Mon Sep 17 00:00:00 2001
From: Atharva Ombase <94031822+atharvaombase@users.noreply.github.com>
Date: Sat, 19 Apr 2025 20:06:25 +0530
Subject: [PATCH] {new_commit_message}
---
Frontend/src/components/FileUploadModal.jsx | 3 +-
Frontend/src/pages/Authentication/SignUp.jsx | 145 +++++--------------
2 files changed, 40 insertions(+), 108 deletions(-)
diff --git a/Frontend/src/components/FileUploadModal.jsx b/Frontend/src/components/FileUploadModal.jsx
index b4aa557..54ac590 100644
--- a/Frontend/src/components/FileUploadModal.jsx
+++ b/Frontend/src/components/FileUploadModal.jsx
@@ -6,7 +6,6 @@ import { setIsUploading } from "../store/UploadStatusSlice";
const FileUploadModal = ({ show, onClose, onUploadSuccess }) => {
const currentPath = useSelector((state) => state.path.currentPath);
const dispatch = useDispatch();
- const isUploading = useSelector((state) => state.upload.isUploading);
const [file, setFile] = useState(null);
const [uploading, setUploading] = useState(false);
const [uploadMessage, setUploadMessage] = useState("");
@@ -14,7 +13,7 @@ const FileUploadModal = ({ show, onClose, onUploadSuccess }) => {
const [creatingFolder, setCreatingFolder] = useState(false);
const [folderMessage, setFolderMessage] = useState("");
const username = localStorage.getItem("username");
- const API_URL = import.meta.env.VITE_API_URL || "http://localhost:8080";
+ const API_URL = import.meta.env.VITE_API_URL;
useEffect(() => {
const handleEsc = (e) => {
diff --git a/Frontend/src/pages/Authentication/SignUp.jsx b/Frontend/src/pages/Authentication/SignUp.jsx
index 788340b..3c75291 100644
--- a/Frontend/src/pages/Authentication/SignUp.jsx
+++ b/Frontend/src/pages/Authentication/SignUp.jsx
@@ -1,12 +1,13 @@
import { useState } from "react";
import { FiEye, FiEyeOff } from "react-icons/fi";
-import { Link } from "react-router-dom";
+import { Link, useNavigate } from "react-router-dom";
import toast, { Toaster } from "react-hot-toast";
-// const API_BASE_URL = process.env.REACT_APP_API_URL;
-const API_BASE_URL = import.meta.env.VITE_API_URL;
+const API_URL = import.meta.env.VITE_API_URL;
const SignUp = () => {
+ const navigate = useNavigate();
+
const [formData, setFormData] = useState({
firstname: "",
lastname: "",
@@ -14,7 +15,6 @@ const SignUp = () => {
password: "",
confirmPassword: "",
});
-
const [showPassword, setShowPassword] = useState(false);
const [showConfirmPassword, setShowConfirmPassword] = useState(false);
const [loading, setLoading] = useState(false);
@@ -34,11 +34,12 @@ const SignUp = () => {
return;
}
- try {
- setLoading(true);
- const toastId = toast.loading("Registering...");
+ setLoading(true);
+ const toastId = toast.loading("Registering...");
- const response = await fetch(`${API_BASE_URL}/api/signup`, {
+ try {
+ // 1️⃣ Sign up the user
+ const signupRes = await fetch(`${API_URL}/api/signup`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
@@ -48,17 +49,37 @@ const SignUp = () => {
password: formData.password,
}),
});
+ const signupData = await signupRes.json();
- const data = await response.json();
-
- if (response.ok) {
- toast.success("Successfully registered!", { id: toastId });
- // Optionally redirect to login
- } else {
- toast.error(data.message || "Signup failed.", { id: toastId });
+ if (!signupRes.ok) {
+ toast.error(signupData.message || "Signup failed.", { id: toastId });
+ return;
}
+
+ // 2️⃣ Build username and create HDFS folder
+ const username =
+ `${formData.firstname}${formData.lastname}`.toLowerCase();
+ const folderRes = await fetch(
+ `${API_URL}/api/hdfs/createFolder?hdfsPath=/${username}`,
+ { method: "POST" }
+ );
+
+ if (!folderRes.ok) {
+ // you might choose to roll back user creation or just notify
+ toast.error("Failed to create user folder.", { id: toastId });
+ } else {
+ toast.success("Successfully registered and folder created!", {
+ id: toastId,
+ });
+ }
+
+ // 3️⃣ Redirect to login after a short delay
+ setTimeout(() => {
+ navigate("/login");
+ }, 1500);
} catch (error) {
- toast.error("An error occurred. Please try again.", error);
+ console.error(error);
+ toast.error("An error occurred. Please try again.", { id: toastId });
} finally {
setLoading(false);
}
@@ -69,7 +90,6 @@ const SignUp = () => {