63 lines
2.6 KiB
Plaintext
63 lines
2.6 KiB
Plaintext
[1mdiff --git a/Client/src/Pages/Auth/Register/Register.jsx b/Client/src/Pages/Auth/Register/Register.jsx[m
|
|
[1mindex 1eaa99f..a5db763 100644[m
|
|
[1m--- a/Client/src/Pages/Auth/Register/Register.jsx[m
|
|
[1m+++ b/Client/src/Pages/Auth/Register/Register.jsx[m
|
|
[36m@@ -14,10 +14,12 @@[m [mimport { credentials } from "../../../Validation/validation";[m
|
|
import { createToast } from "../../../Utils/toastUtils";[m
|
|
import Field from "../../../Components/Inputs/Field";[m
|
|
import { register } from "../../../Features/Auth/authSlice";[m
|
|
[32m+[m[32mimport { useParams } from "react-router-dom";[m
|
|
[m
|
|
const Register = ({ isAdmin }) => {[m
|
|
const dispatch = useDispatch();[m
|
|
const navigate = useNavigate();[m
|
|
[32m+[m[32m const { token } = useParams();[m
|
|
const theme = useTheme();[m
|
|
[m
|
|
// TODO If possible, change the IDs of these fields to match the backend[m
|
|
[36m@@ -35,14 +37,14 @@[m [mconst Register = ({ isAdmin }) => {[m
|
|
email: "",[m
|
|
password: "",[m
|
|
confirm: "",[m
|
|
[31m- role: "",[m
|
|
[32m+[m[32m role: [],[m
|
|
});[m
|
|
const [errors, setErrors] = useState({});[m
|
|
[m
|
|
const handleSubmit = async (e) => {[m
|
|
e.preventDefault();[m
|
|
[m
|
|
[31m- const registerForm = { ...form, role: isAdmin ? "admin" : "user" };[m
|
|
[32m+[m[32m const registerForm = { ...form, role: isAdmin ? ["admin"] : [] };[m
|
|
const { error } = credentials.validate(registerForm, {[m
|
|
abortEarly: false,[m
|
|
context: { password: form.password },[m
|
|
[1mdiff --git a/Client/src/Validation/validation.js b/Client/src/Validation/validation.js[m
|
|
[1mindex 779b7c5..00d5a1d 100644[m
|
|
[1m--- a/Client/src/Validation/validation.js[m
|
|
[1m+++ b/Client/src/Validation/validation.js[m
|
|
[36m@@ -68,9 +68,7 @@[m [mconst credentials = joi.object({[m
|
|
}[m
|
|
return value;[m
|
|
}),[m
|
|
[31m- role: joi.string().messages({[m
|
|
[31m- "string.empty": "Role is required",[m
|
|
[31m- }),[m
|
|
[32m+[m[32m role: joi.array().required(),[m
|
|
});[m
|
|
[m
|
|
const monitorValidation = joi.object({[m
|
|
[1mdiff --git a/Server/validation/joi.js b/Server/validation/joi.js[m
|
|
[1mindex a0c5857..ec77363 100644[m
|
|
[1m--- a/Server/validation/joi.js[m
|
|
[1m+++ b/Server/validation/joi.js[m
|
|
[36m@@ -44,7 +44,7 @@[m [mconst registerValidation = joi.object({[m
|
|
/^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$%^&*()])[A-Za-z0-9!@#$%^&*()]+$/[m
|
|
),[m
|
|
profileImage: joi.any(),[m
|
|
[31m- role: joi.string().required(),[m
|
|
[32m+[m[32m role: joi.array().required(),[m
|
|
});[m
|
|
[m
|
|
const editUserParamValidation = joi.object({[m
|