From 9907417fa6c8d04bcaea0711de6cd0fe61e2bd1c Mon Sep 17 00:00:00 2001
From: nathaniacalista01 <nathania.calista01@gmail.com>
Date: Fri, 17 Nov 2023 01:31:13 +0700
Subject: [PATCH] feat : material details

---
 app/controllers/PremiumController.php |  32 ++++++-
 app/views/premium/detailCourse.php    |  12 +--
 app/views/premium/detailModule.php    | 116 ++++++++++++++++++++++++++
 3 files changed, 154 insertions(+), 6 deletions(-)
 create mode 100644 app/views/premium/detailModule.php

diff --git a/app/controllers/PremiumController.php b/app/controllers/PremiumController.php
index 4282e12..8ed22cf 100644
--- a/app/controllers/PremiumController.php
+++ b/app/controllers/PremiumController.php
@@ -35,8 +35,38 @@
             $data_course = json_decode($raw_course,true);
             $course = $data_course["data"];
             $modules = $data["data"];
-
             return $this->view('premium','detailCourse',["course"=>$course,"modules"=>$modules]);
         }
+
+        public function module($params){
+            // Menerima parameter berupa module_id
+            if(!$params){
+                header("Location: /notfound");
+            }
+            $middleware = $this->middleware("LoginMiddleware");
+            $middleware->hasLoggedIn();
+
+            $raw_materials = file_get_contents("http://host.docker.internal:8000/api/material/module/".$params);
+            $data_materials = json_decode($raw_materials,true);
+            $materials = $data_materials["data"];
+
+            
+            $raw_modul = file_get_contents("http://host.docker.internal:8000/api/modul/".$params);
+            $data_modul = json_decode($raw_modul,true);
+            $modul = $data_modul["data"];
+
+            $course_id = $modul["course_id"];
+            
+            $raw_modul2 = file_get_contents("http://host.docker.internal:8000/api/modul/course/".$course_id);
+            $data_modul2 = json_decode($raw_modul2,true);
+            $modul2 = $data_modul2["data"];
+
+
+            $raw_course = file_get_contents("http://host.docker.internal:8000/api/course/".$course_id);
+            $data_course = json_decode($raw_course,true);
+            $course = $data_course["data"];
+            
+            return $this->view('premium','detailModule',["course"=>$course,"module"=>$modul,"materials"=>$materials,"modules"=>$modul2]);            
+        }
     }
 ?>
\ No newline at end of file
diff --git a/app/views/premium/detailCourse.php b/app/views/premium/detailCourse.php
index 2a61345..2deca0c 100644
--- a/app/views/premium/detailCourse.php
+++ b/app/views/premium/detailCourse.php
@@ -32,14 +32,16 @@
                                 foreach ($modules as $module) { ?>
                                     <tr>
                                         <td>
-                                            <div class='row-container'>
-                                                <div class='module-title' onclick='navigateToMaterials(<?php echo $module["module_id"] ?>)'>
-                                                    <span><?php echo $module['title'] ?></span>
+                                            <a href='/premium/module/<?php echo $module["id"]; ?>' style='text-decoration: none; cursor: pointer;  display: block; width: 100%;'>
+                                                <div class='row-container'>
+                                                    <div class='module-title'>
+                                                        <span><?php echo $module['title'] ?></span>
+                                                    </div>
                                                 </div>
-                            
-                                            </div>
+                                            </a>
                                         </td>
                                     </tr>
+
                                 <?php } ?>
                             </tbody>
                         </table>
diff --git a/app/views/premium/detailModule.php b/app/views/premium/detailModule.php
new file mode 100644
index 0000000..0f650cb
--- /dev/null
+++ b/app/views/premium/detailModule.php
@@ -0,0 +1,116 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>Document</title>
+    <link rel="stylesheet" href="../../public/css/course/detail.css">
+    <script src="../../public/js/details.js" defer></script>
+    <script src="../../public/js/detailsModule.js" defer></script>
+</head>
+<body>
+    <?php include __DIR__ . '/../navbar/navbar.php' ?>
+    <section class="home-section">
+        <div class="wrapper">
+            <div class="header">
+                <?php
+                $course = $data["course"];
+                echo "<h1 class='course'>$course[title]</h1>";
+                ?>
+            </div>
+            <div class="course-section">
+                <div class="modules">
+                    <div class="header-intro">
+                        <p>Modules</p>
+                    </div>
+                    <div class="table-container">
+                        <table class="table-module">
+                            <tbody>
+                                <?php
+                                $modules = $data["modules"];
+                                $course = $data["course"];
+                                foreach ($modules as $module) {?>
+                                    <tr>
+                                        <td>
+                                            <a href='/premium/module/<?php echo $module["id"]; ?>' style='text-decoration: none; cursor: pointer;  display: block; width: 100%;'>
+                                                <div class='row-container'>
+                                                    <div class='module-title'>
+                                                        <span><?php echo $module['title'] ?></span>
+                                                    </div>
+                                                </div>
+                                            </a>
+                                        </td>
+                                    </tr>
+                                <?php } ?>
+                            </tbody>
+                        </table>
+                    </div>
+                </div>
+                <div class="module-material-container">
+                    <div class="material-box">
+                        <div class="titles">
+                            <?php
+                            $module = $data["module"];
+                            echo "<h3 id='course-title'>$module[title]</h3>";
+                            ?>
+                        </div>
+                        <div class="material-content">
+                            <div class="material-text">
+                                <p id="course-desc">
+                                <?php
+                                    $module = $data["module"];
+                                    echo "<h3 id='course-title'>$module[description]</h3>";
+                                ?>
+                                </p>
+                            </div>
+
+                            <?php
+                            $materials = $data["materials"];
+                            foreach ($materials as $material) {
+                            echo"
+                            <div class='accordion'>
+                                <div class='accordion-content' style='display: flex; justify-content: space-between;'>
+                                    <div class='judul' style='width:94%'>
+                                        <header>
+                                            <span class='title'>$material[title]</span>
+                                            <i class='fa-solid fa-plus'></i>
+                                        </header>
+                                        ";
+                                        if ($material['source_type'] == "pdf"){
+                                            echo "
+                                        <div class='description'>
+                                            <span>$material[description]<span>
+                                            <br>
+                                            <br>
+                                            <object data='$material[material_path]' type='application/pdf' width='100%' height='800'>
+                                                <p>It appears your web browser doesn't support embedding PDFs.</p>
+                                            </object>
+                                        </div>
+                                    </div>
+                                    
+                                ";
+                            } else{ ?>
+                                <div class='description'>
+                                    <span><?php echo $material["description"] ?><span>
+                                    <br>
+                                    <br>
+                                    <video width='100%' height=auto controls>
+                                        <source src=<?php echo $material["material_path"]?> type='video/mp4'>
+                                        Your browser does not support the video tag.
+                                    </video>
+                                </div>
+                                </div>
+                                <?php } ?>
+                              
+                                    
+                                </div>
+                            </div>
+                            <?php } ?>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </section>
+</body>
+</html>
\ No newline at end of file
-- 
GitLab