Merge branch 'memberpage' of WrenchBoard/Users-Wrench into master
This commit is contained in:
@@ -0,0 +1,32 @@
|
|||||||
|
import React from "react";
|
||||||
|
import GetMyPageLoad from "./getMyPageLoad";
|
||||||
|
|
||||||
|
|
||||||
|
const LoadedPage = () => {
|
||||||
|
const { loading, data, error } = GetMyPageLoad();
|
||||||
|
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div className="w-full border border-gray-400 rounded-md p-4 flex flex-col h-72 gap-2 overflow-y-auto">
|
||||||
|
{loading ? (
|
||||||
|
<>
|
||||||
|
<h1 className="text-xl font-bold tracking-wide">...</h1>
|
||||||
|
<p>...</p>
|
||||||
|
</>
|
||||||
|
) : error ? (
|
||||||
|
<>
|
||||||
|
<h1 className="text-xl font-bold tracking-wide">Unable to load</h1>
|
||||||
|
</>
|
||||||
|
) : (
|
||||||
|
<>
|
||||||
|
<h1 className="text-xl font-bold tracking-wide">
|
||||||
|
{!data.intro ? "Introduction" : data.intro}
|
||||||
|
</h1>
|
||||||
|
<p>{!data.description ? "Brief Details" : data.description}</p>
|
||||||
|
</>
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default LoadedPage;
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
import { useEffect, useState } from "react";
|
||||||
|
import usersService from "../../services/UsersService";
|
||||||
|
import { useSelector } from "react-redux";
|
||||||
|
|
||||||
|
|
||||||
|
const GetMyPageLoad = () => {
|
||||||
|
const { yourPageTable } = useSelector((state) => state.tableReload);
|
||||||
|
|
||||||
|
const [response, setResponse] = useState({
|
||||||
|
loading: true,
|
||||||
|
data: null,
|
||||||
|
error: null,
|
||||||
|
});
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
const fetchData = async () => {
|
||||||
|
let api = new usersService();
|
||||||
|
try {
|
||||||
|
const res = await api.MyPageLoad();
|
||||||
|
|
||||||
|
setResponse({ loading: false, data: res.data, error: null });
|
||||||
|
|
||||||
|
console.log(response.data)
|
||||||
|
} catch (error) {
|
||||||
|
setResponse({ loading: false, data: null, error: error.message });
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
fetchData();
|
||||||
|
}, [yourPageTable]);
|
||||||
|
|
||||||
|
return response;
|
||||||
|
};
|
||||||
|
|
||||||
|
export default GetMyPageLoad;
|
||||||
@@ -2,8 +2,12 @@ import React, { useState } from "react";
|
|||||||
import Layout from "../Partials/Layout";
|
import Layout from "../Partials/Layout";
|
||||||
import usersService from "../../services/UsersService";
|
import usersService from "../../services/UsersService";
|
||||||
import YourPageForm from "./YourPageForm";
|
import YourPageForm from "./YourPageForm";
|
||||||
|
import LoadedPage from "./LoadedPage";
|
||||||
|
import { useDispatch } from "react-redux";
|
||||||
|
import { tableReload } from "../../store/TableReloads";
|
||||||
|
|
||||||
const YourPage = () => {
|
const YourPage = () => {
|
||||||
|
const dispatch = useDispatch;
|
||||||
const [pageValues, setPageValues] = useState({
|
const [pageValues, setPageValues] = useState({
|
||||||
intro: "",
|
intro: "",
|
||||||
description: "",
|
description: "",
|
||||||
@@ -22,6 +26,8 @@ const YourPage = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const updateYourPageDetails = async () => {
|
const updateYourPageDetails = async () => {
|
||||||
|
if (!pageValues.intro || !pageValues.description) return;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
setResponse({ loading: true, error: "", msg: "" });
|
setResponse({ loading: true, error: "", msg: "" });
|
||||||
|
|
||||||
@@ -35,6 +41,8 @@ const YourPage = () => {
|
|||||||
msg: "Page updated successfully",
|
msg: "Page updated successfully",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
dispatch(tableReload({ type: "YourPageTable" }));
|
||||||
|
|
||||||
// Clear form after successful update
|
// Clear form after successful update
|
||||||
setPageValues({ intro: "", description: "" });
|
setPageValues({ intro: "", description: "" });
|
||||||
}, 2000);
|
}, 2000);
|
||||||
@@ -52,7 +60,7 @@ const YourPage = () => {
|
|||||||
<Layout>
|
<Layout>
|
||||||
<div className="notification-page w-full mb-10">
|
<div className="notification-page w-full mb-10">
|
||||||
<div className="notification-wrapper w-full">
|
<div className="notification-wrapper w-full">
|
||||||
<div className="update-table w-full h-full p-4 bg-white dark:bg-dark-white overflow-y-auto rounded-2xl section-shadow min-h-[520px]">
|
<div className="update-table w-full h-full p-4 bg-white dark:bg-dark-white overflow-y-auto rounded-2xl section-shadow min-h-[650px]">
|
||||||
<h1 className="text-26 font-bold text-dark-gray dark:text-white tracking-wide mb-2">
|
<h1 className="text-26 font-bold text-dark-gray dark:text-white tracking-wide mb-2">
|
||||||
My page
|
My page
|
||||||
</h1>
|
</h1>
|
||||||
@@ -63,6 +71,7 @@ const YourPage = () => {
|
|||||||
onSubmit={updateYourPageDetails}
|
onSubmit={updateYourPageDetails}
|
||||||
loading={response.loading}
|
loading={response.loading}
|
||||||
/>
|
/>
|
||||||
|
<LoadedPage />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -15,6 +15,16 @@ class usersService {
|
|||||||
return this.postAuxEnd("/mypageintro", postData);
|
return this.postAuxEnd("/mypageintro", postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MyPageLoad() {
|
||||||
|
var postData = {
|
||||||
|
uid: localStorage.getItem("uid"),
|
||||||
|
member_id: localStorage.getItem("member_id"),
|
||||||
|
sessionid: localStorage.getItem("session_token"),
|
||||||
|
action: 11070
|
||||||
|
};
|
||||||
|
return this.postAuxEnd("/mypageload", postData);
|
||||||
|
}
|
||||||
|
|
||||||
CreateUser(reqData) {
|
CreateUser(reqData) {
|
||||||
localStorage.setItem("session_token", ``);
|
localStorage.setItem("session_token", ``);
|
||||||
return this.postAuxEnd("/createuser", reqData);
|
return this.postAuxEnd("/createuser", reqData);
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ const initialState = {
|
|||||||
couponTable: false,
|
couponTable: false,
|
||||||
walletTable: false,
|
walletTable: false,
|
||||||
uploadsTable: false,
|
uploadsTable: false,
|
||||||
|
yourPageTable: false,
|
||||||
};
|
};
|
||||||
|
|
||||||
export const tableReloadSlice = createSlice({
|
export const tableReloadSlice = createSlice({
|
||||||
@@ -37,6 +38,9 @@ export const tableReloadSlice = createSlice({
|
|||||||
case "UPLOADSTABLE":
|
case "UPLOADSTABLE":
|
||||||
state.uploadsTable = !state.uploadsTable;
|
state.uploadsTable = !state.uploadsTable;
|
||||||
return;
|
return;
|
||||||
|
case "YourPageTable":
|
||||||
|
state.yourPageTable = !state.yourPageTable;
|
||||||
|
return;
|
||||||
default:
|
default:
|
||||||
return state;
|
return state;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user