diff --git a/src/hooks/useProjectAccess.js b/src/hooks/useProjectAccess.js
index 8449df82..b8c269c8 100644
--- a/src/hooks/useProjectAccess.js
+++ b/src/hooks/useProjectAccess.js
@@ -14,7 +14,6 @@ export const useProjectAccess = (projectId) => {
const canView = useHasUserPermission(VIEW_PROJECTS);
const loading = isLoading || !isFetched;
- debugger
useEffect(() => {
if (projectId && !loading && !canView) {
showToast("You don't have permission to view project details", "warning");
diff --git a/src/pages/employee/EmployeeList.jsx b/src/pages/employee/EmployeeList.jsx
index fc77ba1c..3ad53572 100644
--- a/src/pages/employee/EmployeeList.jsx
+++ b/src/pages/employee/EmployeeList.jsx
@@ -36,31 +36,30 @@ import GlobalModel from "../../components/common/GlobalModel";
import usePagination from "../../hooks/usePagination";
import { setProjectId } from "../../slices/localVariablesSlice";
import { useHasUserPermission } from "../../hooks/useHasUserPermission";
+import Pagination from "../../components/common/Pagination";
const EmployeeList = () => {
- const selectedProjectId = useSelector(
- (store) => store.localVariables.projectId
- );
- const { projectNames, loading: projectLoading, fetchData } = useProjectName();
+ // const selectedProjectId = useSelector(
+ // (store) => store.localVariables.projectId
+ // );
+ // const { projectNames, loading: projectLoading, fetchData } = useProjectName();
const dispatch = useDispatch();
const [showInactive, setShowInactive] = useState(false);
- const [showAllEmployees, setShowAllEmployees] = useState(false);
+ const [showAllEmployees, setShowAllEmployees] = useState(true);
const Manage_Employee = useHasUserPermission(MANAGE_EMPLOYEES);
const { employees, loading, setLoading, error, recallEmployeeData } =
useEmployeesAllOrByProjectId(
showAllEmployees,
- selectedProjectId,
+ null,
showInactive
);
const [employeeList, setEmployeeList] = useState([]);
const [modelConfig, setModelConfig] = useState();
const [EmpForManageRole, setEmpForManageRole] = useState(null);
- // const [currentPage, setCurrentPage] = useState(1);
- // const [itemsPerPage] = useState(ITEMS_PER_PAGE);
const [isCreateModalOpen, setIsCreateModalOpen] = useState(false);
const [searchText, setSearchText] = useState("");
const [filteredData, setFilteredData] = useState([]);
@@ -78,11 +77,11 @@ const EmployeeList = () => {
}
);
- useEffect(() => {
- if (selectedProjectId === null) {
- dispatch(setProjectId(projectNames[0]?.id));
- }
- }, [selectedProjectId]);
+ // useEffect(() => {
+ // if (selectedProjectId === null) {
+ // dispatch(setProjectId(projectNames[0]?.id));
+ // }
+ // }, [selectedProjectId]);
const navigate = useNavigate();
const applySearchFilter = (data, text) => {
@@ -205,13 +204,9 @@ const EmployeeList = () => {
setCurrentPage((prevPage) => (prevPage !== 1 ? 1 : prevPage));
}
- }, [loading, employees, selectedProjectId, showAllEmployees]);
+ }, [loading, employees, showAllEmployees]);
+
- useEffect(() => {
- if (!showAllEmployees) {
- recallEmployeeData(showInactive, selectedProjectId);
- }
- }, [selectedProjectId, showInactive, showAllEmployees, recallEmployeeData]);
const handler = useCallback(
(msg) => {
@@ -219,11 +214,12 @@ const EmployeeList = () => {
setEmployeeList([]);
recallEmployeeData(
showInactive,
- showAllEmployees ? null : selectedProjectId
- ); // Use selectedProjectId here
+ null,
+ showAllEmployees
+ );
}
},
- [employees, showInactive, showAllEmployees, selectedProjectId] // Add all relevant dependencies
+ [employees, showInactive, showAllEmployees]
);
useEffect(() => {
@@ -304,7 +300,7 @@ const EmployeeList = () => {
{/* Switches: All Employees + Inactive */}
{/* Right side: Search + Export + Add Employee */}
@@ -697,55 +693,12 @@ const EmployeeList = () => {
-
-
- {/* Pagination */}
- {!loading && displayData.length > ITEMS_PER_PAGE && (
-
+ {displayData.length > 0 && (
+
)}
diff --git a/src/pages/project/ProjectDetails.jsx b/src/pages/project/ProjectDetails.jsx
index 8d2f8277..79a630ed 100644
--- a/src/pages/project/ProjectDetails.jsx
+++ b/src/pages/project/ProjectDetails.jsx
@@ -20,7 +20,7 @@ import { setProjectId } from "../../slices/localVariablesSlice";
import ProjectDocuments from "../../components/Project/ProjectDocuments";
import ProjectSetting from "../../components/Project/ProjectSetting";
import DirectoryPage from "../Directory/DirectoryPage";
-import { useProjectAccess } from "../../hooks/useProjectAccess";
+import { useProjectAccess } from "../../hooks/useProjectAccess";
import "./ProjectDetails.css";
import ProjectOrganizations from "../../components/Project/ProjectOrganizations";
@@ -30,8 +30,11 @@ const ProjectDetails = () => {
const dispatch = useDispatch();
const { projectNames } = useProjectName();
- const { projects_Details, loading: projectLoading, refetch } =
- useProjectDetails(projectId);
+ const {
+ projects_Details,
+ loading: projectLoading,
+ refetch,
+ } = useProjectDetails(projectId);
const { canView, loading: permsLoading } = useProjectAccess(projectId);
@@ -47,7 +50,10 @@ const ProjectDetails = () => {
const handler = useCallback(
(msg) => {
- if (msg.keyword === "Update_Project" && projects_Details?.id === msg.response.id) {
+ if (
+ msg.keyword === "Update_Project" &&
+ projects_Details?.id === msg.response.id
+ ) {
refetch();
}
},
@@ -75,13 +81,10 @@ const ProjectDetails = () => {
-
);
diff --git a/src/utils/axiosClient.jsx b/src/utils/axiosClient.jsx
index bf26500e..f1ec2d45 100644
--- a/src/utils/axiosClient.jsx
+++ b/src/utils/axiosClient.jsx
@@ -4,6 +4,7 @@ import axiosRetry from "axios-retry";
import showToast from "../services/toastService";
import { startSignalR, stopSignalR } from "../services/signalRService";
import { BASE_URL } from "./constants";
+import { removeSession } from "./authUtils";
const base_Url = BASE_URL;
export const axiosClient = axios.create({
@@ -77,8 +78,10 @@ axiosClient.interceptors.response.use(
if (
!refreshToken ||
error.response.data?.errors === "Invalid or expired refresh token."
+
) {
redirectToLogin();
+ removeSession()
return Promise.reject(error);
}
@@ -107,6 +110,7 @@ axiosClient.interceptors.response.use(
originalRequest.headers["Authorization"] = `Bearer ${token}`;
return axiosClient(originalRequest);
} catch (refreshError) {
+ removeSession()
redirectToLogin();
return Promise.reject(refreshError);
}