From db00852000b725130b498852f153cd69105bebf0 Mon Sep 17 00:00:00 2001
From: christinaa21 <16521224@mahasiswa.itb.ac.id>
Date: Sat, 25 Nov 2023 00:16:40 +0700
Subject: [PATCH] =?UTF-8?q?=F0=9F=9B=A0=20FIX=20:=20Nambahin=20role=20owne?=
 =?UTF-8?q?r=20&=20publc=20ke=20ClassDetail=20component?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/components/ClassDetail.tsx | 62 +++++++++++++++++++---------------
 src/pages/ClassOwnerDetail.tsx |  1 +
 2 files changed, 35 insertions(+), 28 deletions(-)

diff --git a/src/components/ClassDetail.tsx b/src/components/ClassDetail.tsx
index 545a712..e1c0094 100644
--- a/src/components/ClassDetail.tsx
+++ b/src/components/ClassDetail.tsx
@@ -15,9 +15,10 @@ interface ClassDetailProps {
   jml_sesi: number;
   deskripsi: string;
   status: boolean;
+  role: string;
 }
 
-const ClassDetail: React.FC<ClassDetailProps> = ({ className, price, vehicle, imageUrl, total_jam, jml_sesi, deskripsi, status }) => {
+const ClassDetail: React.FC<ClassDetailProps> = ({ className, price, vehicle, imageUrl, total_jam, jml_sesi, deskripsi, status, role }) => {
   const [isDeleteDataOpen, setIsDeleteDataOpen] = useState(false);
   const { isOpen: isEditDataOpen, onOpen: handleOpenEditData, onClose: handleCloseEditData } = useDisclosure();
   const [selectedData, setSelectedData] = useState<any>(null);
@@ -82,33 +83,38 @@ const ClassDetail: React.FC<ClassDetailProps> = ({ className, price, vehicle, im
             {className}
             </Heading>
             <Spacer></Spacer>
-            <HStack alignItems={'end'}>
-                {(() => {
-                    if (status === true) {
-                        return (
-                            <Switch id='status' boxSize={35} size={'lg'} colorScheme='yellow' isChecked={true} mr={'7%'}/>
-                        );
-                    } 
-                    else {
-                        return (
-                            <Switch id='status' boxSize={35} colorScheme='yellow' isChecked={false}/>
-                        );
-                }})()}
-                <IconButton
-                ml={"5%"}
-                aria-label="Edit"
-                icon={<Image src={Edit} boxSize={35} />}
-                onClick={handleEditDataClick}
-                size="lg"
-                />
-                <IconButton
-                aria-label="Delete"
-                icon={<Image src={Delete} boxSize={35} />}
-                onClick={handleOpenDeleteData}
-                size="lg"
-                />
-                <Spacer></Spacer>
-            </HStack>
+            {(() => {
+                if (role === 'owner') {
+                    return (
+                        <HStack alignItems={'end'}>
+                            {(() => {
+                                if (status === true) {
+                                    return (
+                                        <Switch id='status' boxSize={35} size={'lg'} colorScheme='yellow' isChecked={true} mr={'7%'}/>
+                                    );
+                                } 
+                                else {
+                                    return (
+                                        <Switch id='status' boxSize={35} size={'lg'} colorScheme='yellow' isChecked={true} mr={'7%'}/>
+                                    );
+                            }})()}
+                            <IconButton
+                            ml={"5%"}
+                            aria-label="Edit"
+                            icon={<Image src={Edit} boxSize={35} />}
+                            onClick={handleEditDataClick}
+                            size="lg"
+                            />
+                            <IconButton
+                            aria-label="Delete"
+                            icon={<Image src={Delete} boxSize={35} />}
+                            onClick={handleOpenDeleteData}
+                            size="lg"
+                            />
+                            <Spacer></Spacer>
+                        </HStack>
+                    );
+            }})()}
         </HStack>
         <HStack
             mt={8}
diff --git a/src/pages/ClassOwnerDetail.tsx b/src/pages/ClassOwnerDetail.tsx
index 27e6386..b12b7fb 100644
--- a/src/pages/ClassOwnerDetail.tsx
+++ b/src/pages/ClassOwnerDetail.tsx
@@ -47,6 +47,7 @@ const ClassData: React.FC = () => {
                     jml_sesi={data.jml_sesi}
                     deskripsi={data.deskripsi}
                     status={data.status}
+                    role={'owner'}
                 />
             ))}
         </Flex>
-- 
GitLab