From 79ca5e467ab90f515cd6047a8aece486f236bf24 Mon Sep 17 00:00:00 2001
From: Guilherme Eduardo <gegs23@inf.ufpr.br>
Date: Mon, 26 May 2025 10:28:02 -0300
Subject: [PATCH] Issue #336: FIX date invalid on comments and fix bug auto
 follow on collection page

---
 .../components/publisherInfoCollection.js     | 43 ++++++++++++++-----
 src/app/components/EditResourceModal.js       |  2 -
 src/app/components/ShareModal.js              |  3 +-
 .../recurso/[id]/components/actionButtons.js  |  1 -
 .../recurso/[id]/components/printComments.js  |  4 +-
 src/app/recurso/[id]/page.js                  |  2 +-
 6 files changed, 38 insertions(+), 17 deletions(-)

diff --git a/src/app/colecao/[id]/components/publisherInfoCollection.js b/src/app/colecao/[id]/components/publisherInfoCollection.js
index cda07b95..7e88f1cb 100644
--- a/src/app/colecao/[id]/components/publisherInfoCollection.js
+++ b/src/app/colecao/[id]/components/publisherInfoCollection.js
@@ -8,11 +8,30 @@ import { isLoggedIn } from "@/app/handlers/loginHandler";
 export default function PublisherInfoCollection({ publisher, disabledButton = false }) {
   const [followed, setFollowed] = useState(false);
   const [error, setError] = useState(false);
+  const [myCollection, setMyCollection] = useState(false)
 
   const loginBarrier = useLoginBarrier();
   const token = getStoredValue("access_token")
   const client = getStoredValue("client")
   const uid = getStoredValue("uid")
+  const [userData, setUserData] = useState(null)
+
+
+  // PEgar as informações do usuario e fazer a comparação com o que vem do publisher
+  //verificar se os ID são iguais
+  //criar outra variavel para verificar isso para usar no if abaixo
+  useEffect(() => {
+    if (!isLoggedIn()) return;
+    const data = JSON.parse(getStoredValue("user_data"));
+    setUserData(data);
+    if (data?.id === publisher?.id) {
+      setMyCollection(true);
+    } else {
+      setMyCollection(false);
+    }
+  }, [token, publisher]);
+  
+
 
   useEffect(() => {
     setFollowed(publisher?.followed ?? false);
@@ -40,6 +59,7 @@ export default function PublisherInfoCollection({ publisher, disabledButton = fa
     setFollowed((old) => !old);
   };
 
+
   function getRandomBg(id) {
     const colors = [
       "bg-turquoise-HC-white",
@@ -61,7 +81,7 @@ export default function PublisherInfoCollection({ publisher, disabledButton = fa
     <>
       <div className="bg-white-HC-dark  outline outline-1 outline-ice-HC-white shadow-none flex flex-col flex-shrink rounded-xl p-0 my-1 normal-case text-sm font-bold">
         <Button href={`/perfil/${publisher.id}`} >
-          <div className="flex flex-row truncate">
+          <div className="flex flex-row w-full truncate justify-start">
             {publisher?.avatar ? (
               <Avatar
                 fill="true"
@@ -83,21 +103,24 @@ export default function PublisherInfoCollection({ publisher, disabledButton = fa
             </div>
           </div>
         </Button>
-        <div className="flex justify-center flex-grow flex-shrink-0 p-3 truncate max-sm:justify-start">
+        <div className={`flex flex-grow flex-shrink-0 p-3 truncate max-sm:justify-start ${myCollection ? "justify-start" : "justify-center"}`}>
           <Button
             disabled={disabledButton}
             href={`/perfil/${publisher.id}`}
-            className="outline outline-1  flex-grow outline-ice-HC-white hover:bg-lightGray-HC-white  bg-white-HC-dark  h-12 text-darkGray-HC-white border border-solid border-main shadow-none rounded-xl p-3 m-1 mr-3 px-8 normal-case font-bold"
+            className={`outline outline-1 outline-ice-HC-white hover:bg-lightGray-HC-white bg-white-HC-dark h-12 text-darkGray-HC-white border border-solid border-main shadow-none rounded-xl p-3 m-1 mr-3 px-8 normal-case font-bold ${myCollection ? " flex justify-start" : "flex-grow"}`}
           >
             Ver Perfil
           </Button>
-          <Button
-            disabled={disabledButton}
-            onClick={followHandler}
-            className="bg-turquoise h-12 flex-grow text-white-HC-dark-underline hover:bg-turquoise-hover shadow-none rounded-xl m-1 px-2 sm:px-8 normal-case font-bold"
-          >
-            {followed ? "Seguindo" : "Seguir"}
-          </Button>
+          {!myCollection ? (
+            <Button
+              disabled={disabledButton}
+              onClick={followHandler}
+              className="bg-turquoise h-12 flex-grow text-white-HC-dark-underline hover:bg-turquoise-hover shadow-none rounded-xl m-1 px-2 sm:px-8 normal-case font-bold"
+            >
+              {followed ? "Seguindo" : "Seguir"}
+            </Button>
+          ) : null}
+
         </div>
       </div>
     </>
diff --git a/src/app/components/EditResourceModal.js b/src/app/components/EditResourceModal.js
index f2911930..d813d2de 100644
--- a/src/app/components/EditResourceModal.js
+++ b/src/app/components/EditResourceModal.js
@@ -32,8 +32,6 @@ export function EditResourceModal({ open, onClose, resource, setEditOpen }) {
             "name": title,
             "description": description
         }
-        console.log("aa")
-
         try {
             await mecredApi.put(`/learning_objects/${resource?.learning_object.id}.json`, payload, {
                 headers: {
diff --git a/src/app/components/ShareModal.js b/src/app/components/ShareModal.js
index ba6ff02e..a53f0b77 100644
--- a/src/app/components/ShareModal.js
+++ b/src/app/components/ShareModal.js
@@ -31,8 +31,7 @@ export default function ShareModal({ open, onClose, learningObject, title, type,
       .catch((error) => console.error("Erro ao compartilhar:", error));
   }
 
-  //console.log ("teste", learningObject)
-
+  
   return (
     <Modal
       open={open}
diff --git a/src/app/recurso/[id]/components/actionButtons.js b/src/app/recurso/[id]/components/actionButtons.js
index 88a92b85..44e31b6d 100644
--- a/src/app/recurso/[id]/components/actionButtons.js
+++ b/src/app/recurso/[id]/components/actionButtons.js
@@ -189,7 +189,6 @@ export default function ActionButtons({ learningObject, setNeedLoginOpen, state
     </Button>
   );
   
-console.log(learningObject)
   return (
     <>
       <DeleteModal open={deleteOpen} onClose={() => setDeleteOpen(false)} idLogin={userData["id"]} resourceId={learningObject.id}  />
diff --git a/src/app/recurso/[id]/components/printComments.js b/src/app/recurso/[id]/components/printComments.js
index 4f7b0b43..e3059f2a 100644
--- a/src/app/recurso/[id]/components/printComments.js
+++ b/src/app/recurso/[id]/components/printComments.js
@@ -45,8 +45,10 @@ export default function PrintComments({ comment, userData, learningObjectId, com
     else if (((mes = Math.floor(dia / 31)) > 0))
       return <span className="text-sm font-light"> há {mes} {mes === 1 ? "mês" : "meses"}</span>
 
-    if (dia === 0)
+    if (dia <= 0) {
+      dia = 0
       return <span className="text-sm font-light"> hoje</span>
+    }
     return <span className="text-sm font-light"> há {dia} {dia === 1 ? "dia" : "dias"}</span>
   }
 
diff --git a/src/app/recurso/[id]/page.js b/src/app/recurso/[id]/page.js
index 797ee2b1..dbcce3d3 100644
--- a/src/app/recurso/[id]/page.js
+++ b/src/app/recurso/[id]/page.js
@@ -81,7 +81,7 @@ export default function Recurso({ params }) {
 
     return () => window.removeEventListener("resize", checkScreenSize);
   }, []);
-
+  
   return (
     <>
       <Overlay type={isSmallScreen ? "twoColumns" : undefined}>
-- 
GitLab