diff --git a/front/package.json b/front/package.json
index b173a0f2..b72b0763 100644
--- a/front/package.json
+++ b/front/package.json
@@ -21,6 +21,7 @@
"@nextui-org/react": "^2.1.13",
"@react-email/link": "0.0.5",
"axios": "^1.5.1",
+ "date-fns": "^2.30.0",
"formik": "^2.4.5",
"framer-motion": "^10.16.4",
"jspdf": "^2.5.1",
diff --git a/front/pages/browser.js b/front/pages/browser.js
index 4630641c..5e3fa047 100644
--- a/front/pages/browser.js
+++ b/front/pages/browser.js
@@ -24,7 +24,7 @@ export default function Browser() {
}, [dispatch]);
const projects = useSelector((state) => state.projectsData.projectsFilter);
console.log(projects);
- /* const allprojects = useSelector((state) => state.projectsData.projects); */
+ // const allprojects = useSelector((state) => state.projectsData.projects);
const categories = useSelector((state) => state.projectsData.categories);
const loading = useSelector((state) => state.projectsData.loading);
@@ -182,7 +182,8 @@ export default function Browser() {
- )}
+ )
+ }
{filtersActives.price !== 15 ? (
)
) : (
- No hay proyectos disponibles{" "}
+ No hay proyectos disponibles
handleClearFilters()}
diff --git a/front/pages/feed/posts.jsx b/front/pages/feed/posts.js
similarity index 97%
rename from front/pages/feed/posts.jsx
rename to front/pages/feed/posts.js
index b51a4f9f..15b45089 100644
--- a/front/pages/feed/posts.jsx
+++ b/front/pages/feed/posts.js
@@ -8,7 +8,7 @@ import Head from "next/head";
import Comments from "../../components/comments/comments";
import { getAllComments } from "../../redux/actions/actionsComment";
-import { comment } from "postcss";
+
const Posts = () => {
const dispatch = useDispatch();
diff --git a/front/pages/profile/analitycs.js b/front/pages/profile/analitycs.js
deleted file mode 100644
index dec7c5ba..00000000
--- a/front/pages/profile/analitycs.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import LayoutUser from "../../components/layout/layoutUser.js";
-import Head from "next/head";
-import ChartsAnalitycs from "../../components/userDashboard/chartsAnalitycs.jsx";
-import FilterAnalitycs from "../../components/userDashboard/filterAnalitycs.jsx";
-import AnalDashUser from "../../components/userDashboard/analDashUser.jsx";
-import { useSelector } from "react-redux";
-
-const Analitycs = () => {
- const sesion = useSelector((state) => state.usersData.sesion);
- console.log(sesion);
- return (
-
-
- ProjUnity | Analiticas {/* {sesion.name} */}
-
-
-
-
Estadisticas
-
-
-
Proyectos mayor rendimiento por promoción
-
Solicitudes con mayor rendimiento
-
-
- );
-};
-
-export default Analitycs;
diff --git a/front/pages/profile/index.js b/front/pages/profile/index.js
index bfa83937..ec2df5f0 100644
--- a/front/pages/profile/index.js
+++ b/front/pages/profile/index.js
@@ -1,72 +1,126 @@
import { useRouter } from "next/router";
+// import ButtonEdit from "../../components/userDashboard/buttonEdit";
import { useDispatch, useSelector } from "react-redux";
-import { useEffect } from "react";
+import { useEffect, useState } from "react";
import LayoutUser from "../../components/layout/layoutUser";
+import Loader from "../../components/layout/loader";
import Head from "next/head";
-import ProjDashUser from "../../components/userDashboard/projDashUser";
-import ButtonCreate from "../../components/userDashboard/buttonCreateProj";
-import ButtonPromotion from "../../components/userDashboard/buttonPromotion";
-import ButtonRequest from "../../components/userDashboard/buttonRequest";
-import Posts from "../../components/userDashboard/posts";
-import Example from "../../components/userDashboard/chartsViews";
-import DownloadCharts from "../../components/userDashboard/downloadCharts";
+// import ProjDashUser from "../../components/userDashboard/projDashUser";
+// import ButtonCreate from "../../components/userDashboard/buttonCreateProj";
+// import ButtonPromotion from "../../components/userDashboard/buttonPromotion";
+// import ButtonRequest from "../../components/userDashboard/buttonRequest";
+// import Posts from "../../components/userDashboard/posts";
+// import Example from "../../components/userDashboard/chartsViews";
+// import DownloadCharts from "../../components/userDashboard/downloadCharts";
import OrdenesCompra from "../../components/userDashboard/OrdenesCompra";
+import { getSesion } from "../../redux/actions/actionsUser";
+import { getProjects, deleteProjects } from "../../redux/actions/actions";
+// import { getOrder } from "../../redux/actions/actionsPayments";
+import {
+ Button,
+ Modal,
+ ModalContent,
+ ModalHeader,
+ ModalFooter,
+ useDisclosure,
+ Link,
+ Image,
+} from "@nextui-org/react";
+import {
+ BarChart,
+ Bar,
+ XAxis,
+ YAxis,
+ CartesianGrid,
+ Tooltip,
+ Legend,
+ ResponsiveContainer,
+} from "recharts";
+import Analitycs from "../../components/userDashboard/analitycs";
+import Buttons from "../../components/userDashboard/Buttons";
+import ProyectosDesactivos from "../../components/userDashboard/ProyectosDesactivos";
const Profile = () => {
- const router = useRouter();
+ // const router = useRouter();
+ const { isOpen, onOpen, onOpenChange } = useDisclosure();
+
+ const dispatch = useDispatch();
+ useEffect(() => {
+ dispatch(getSesion());
+ dispatch(getProjects());
+ }, [dispatch]);
+
const sesion = useSelector((state) => state.usersData.sesion);
- console.log(sesion);
+ const projects = useSelector((state) => state.projectsData.projects);
+ const projectsByUser = projects?.filter((p) => Number(p.Users[0]?.id) === 2); //aca va sesion.id
+console.log(projectsByUser);
+ const viewsByProject = projectsByUser?.map((p) => {
+ return {
+ name: p.name,
+ views: p.views ? (
+ p.views
+ ) : (
+ No se encuentran vistas para este proyecto
+ ),
+ };
+ });
+ console.log(viewsByProject);
- // const userName = useSelector((state) => state.usersData.users);
- // const projects = useSelector((state) => state.projectsData.projectsFilter);
- // console.log(userName);
- // const dispatch = useDispatch();
+ const totalViews = viewsByProject.reduce(
+ (total, item) => total + item.views,
+ 0
+ );
- // useEffect(() => {
- // dispatch(getUserByName(name));
- // }, [dispatch]);
+ const ratingByProject = projectsByUser?.map((p) => {
+ return {
+ name: p.name,
+ rating: p.Ratings[0]?.score ? (
+ p.Ratings[0]?.score
+ ) : (
+ Este proyecto no se encuentra rankeado
+ ),
+ };
+ });
+
+ if (!sesion?.id) return ;
return (
- ProjUnity | {sesion.name}
+ ProjUnity | {sesion?.name}
-
-
-
-
Panel de {sesion.name}
+ Panel de {sesion?.name}
Views
- Downloads
- Followers
+ {/* Downloads
+ Followers */}
- 7
- 45
- 12
+ {totalViews}
+ {/* 45
+ 12 */}
-
-
+
-
-
-
Proyectos
-
-
-
-
Summary
- {/*
View More
*/}
-
Vistas
-
-
Descargas
-
+
+
+
Proyectos
+ {/*
*/}
+
+
+ {projectsByUser.map((proj) => (
+
+
+
+
+
+
{proj.name}
+
+
+ {/* buton edit */}
+
+
+ Editar
+
+
+
+ {(onClose) => (
+ <>
+
+ ¿Quieres editar este proyecto?
+
+
+
+
+ Cerrar
+
+
+ Editar
+
+
+ >
+ )}
+
+
+
+
+
+ {/*
+
+ Estadisticas
+
+ */}
+ {/* */}
+ {/* {active ? "Activar" : "Desactivar"} */}
+ {/* Activar
+
+
+ {active ? "Activar" : "Desactivar"} */}
+ {/* Desactivar
+ */}
+
+
+
+
+
+ ))}
+
+
+ Crear un nuevo proyecto
+
+
+ {/*
*/}
+
+
+
Summary
+
+ {/* GRAFICO DE VISTAS */}
+
Vistas
+
+
+
+
+
+
+
+
+
+
+
+
+ {/* GRAFICO DE RATING */}
+
Rating
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-