diff --git a/src/components/ProjectTasksList.js b/src/components/ProjectTasksList.js
index 2632385..e461a1b 100644
--- a/src/components/ProjectTasksList.js
+++ b/src/components/ProjectTasksList.js
@@ -16,15 +16,18 @@ import {
} from "date-fns";
import { formatDate } from "@/lib/utils";
import { useTranslation } from "@/lib/i18n";
+import { useSession } from "next-auth/react";
export default function ProjectTasksList() {
const { t } = useTranslation();
+ const { data: session } = useSession();
const [allTasks, setAllTasks] = useState([]);
const [loading, setLoading] = useState(true);
const [searchTerm, setSearchTerm] = useState("");
const [groupBy, setGroupBy] = useState("none");
const [selectedTask, setSelectedTask] = useState(null);
const [showCommentsModal, setShowCommentsModal] = useState(false);
+ const [mine, setMine] = useState(true);
useEffect(() => {
const fetchAllTasks = async () => {
@@ -201,14 +204,25 @@ export default function ProjectTasksList() {
const taskGroups = groupTasksByStatus();
// Filter tasks based on search term
const filterTasks = (tasks) => {
- if (!searchTerm) return tasks;
- return tasks.filter(
- (task) =>
- task.task_name.toLowerCase().includes(searchTerm.toLowerCase()) ||
- task.project_name.toLowerCase().includes(searchTerm.toLowerCase()) ||
- task.city?.toLowerCase().includes(searchTerm.toLowerCase()) ||
- task.address?.toLowerCase().includes(searchTerm.toLowerCase())
- );
+ let filtered = tasks;
+
+ // Apply mine filter
+ if (mine && session?.user?.id) {
+ filtered = filtered.filter(task => task.assigned_to === session.user.id);
+ }
+
+ // Apply search term
+ if (searchTerm) {
+ filtered = filtered.filter(
+ (task) =>
+ task.task_name.toLowerCase().includes(searchTerm.toLowerCase()) ||
+ task.project_name.toLowerCase().includes(searchTerm.toLowerCase()) ||
+ task.city?.toLowerCase().includes(searchTerm.toLowerCase()) ||
+ task.address?.toLowerCase().includes(searchTerm.toLowerCase())
+ );
+ }
+
+ return filtered;
};
// Group tasks by task name when groupBy is set to "task_name"
@@ -552,6 +566,33 @@ export default function ProjectTasksList() {
+ {session?.user && (
+
+ )}
}
/>{" "}
diff --git a/src/lib/i18n.js b/src/lib/i18n.js
index 95e4f66..0196299 100644
--- a/src/lib/i18n.js
+++ b/src/lib/i18n.js
@@ -382,6 +382,7 @@ const translations = {
sortBy: "Sortuj według",
allTasks: "Wszystkie zadania",
myTasks: "Moje zadania",
+ mine: "Moje",
overdue: "Przeterminowane",
dueSoon: "Niedługo termin",
high: "Wysoki",