From 412d3d2ecbe35dac9dd6e2c3d704fe2baf7f493c Mon Sep 17 00:00:00 2001
From: FahrianAfdholi <16521492@mahasiswa.itb.ac.id>
Date: Mon, 9 Oct 2023 11:39:39 +0700
Subject: [PATCH] add: EditFact.php

---
 app/views/editfact/index.php            | 57 ++++++++++++-------------
 server/controller/auth/cms/EditFact.php | 52 ++++++++++++++++++++++
 2 files changed, 80 insertions(+), 29 deletions(-)
 create mode 100644 server/controller/auth/cms/EditFact.php

diff --git a/app/views/editfact/index.php b/app/views/editfact/index.php
index 831613e..6d3c14f 100644
--- a/app/views/editfact/index.php
+++ b/app/views/editfact/index.php
@@ -2,7 +2,7 @@
 <html lang="en">
 <head>
     <meta charset="UTF-8">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0">\
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
     <link rel="stylesheet" href="../../../public/css/editfact.css">
     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css">
     <script defer src="../../../public/js/editfact.js"></script>
@@ -12,11 +12,12 @@
     ?>
     <script>
         window.onload = function() {loadpage(<?php echo $id; ?>);};
-
     </script>
 </head>
 <body>
-<div class="overlay" id="confirmationBox">
+    <form action="../../../server/controller/auth/cms/AddMeal.php" method="POST" enctype="multipart/form-data">
+    <input hidden="hidden" name="id_fact" value=<?php echo $id ?>;>
+    <div class="overlay" id="confirmationBox">
         <div class="confirmation-dialog">
             <p id="message">Are you sure you want to continue?</p>
             <div class="confirmbtn">
@@ -25,34 +26,32 @@
             </div>
         </div>
     </div>
-    <div class="content" id="content">
-        <div class="imagecontainer">
-            <img src="../../../assets/Nopict.png" alt="defaultProfPic" class="photoProfile" id ="imagevideo">
-            <div class="editPhotoButton">
-                <label for="file" class="labelFile">Upload File</label>
-                <input type="file" name="file" id="file" class="file" accept="image/*,video/*">
-            </div>
-        </div>
-        <div class="editcontainer">
-            <div class="factinformation">
-                <h2 class="facttitle">Fact Information</h2>
-                <div class="videotitle">
-                    <p class="labeldescription">Video Title</p>
-                    <input type="text" placeholder="Title" class="inputtitle" id="edittitle" name="facttitle">
-                </div>
-                <div class="videotitle">
-                    <p class="labeldescription">Video Highlight</p>
-                    <input type="text" placeholder="Highlight" class="inputtitle" id="edithighlight" name="facthiglight">
+        <div class="content" id="content">
+            <div class="imagecontainer">
+                <img src="../../../assets/Nopict.png" alt="defaultProfPic" class="photoProfile" id ="imagevideo">
+                <div class="editPhotoButton">
+                    <label for="file" class="labelFile">Upload File</label>
+                    <input type="file" name="file" id="file" class="file" accept="image/*,video/*">
                 </div>
-                <div class="factdescription">
-                    <p class="labeldescription">Fact Description</p>
-                    <textarea name="factdescription" id="editdescription"class="inputdescription" placeholder="Description"></textarea>
+            </div>
+            <div class="editcontainer">
+                <div class="factinformation">
+                    <h2 class="facttitle">Fact Information</h2>
+                    <div class="videotitle">
+                        <p class="labeldescription">Video Title</p>
+                        <input type="text" placeholder="Title" class="inputtitle" id="edittitle" name="facttitle">
+                    </div>
+                    <div class="videotitle">
+                        <p class="labeldescription">Video Highlight</p>
+                        <input type="text" placeholder="Highlight" class="inputtitle" id="edithighlight" name="facthiglight">
+                    </div>
+                    <div class="factdescription">
+                        <p class="labeldescription">Fact Description</p>
+                        <textarea name="factdescription" id="editdescription"class="inputdescription" placeholder="Description"></textarea>
+                    </div>
                 </div>
-                
+                <button type="button" class="submitButton" name="submit"id="submitbtn" onclick="showConfirmationfact()">Save Change</button>
             </div>
-
-    
-            <button type="button" class="submitButton" name="submit"id="submitbtn" onclick="showConfirmationfact()">Save Change</button>
-        </div>
+    </form>
 </body>
 </html>
\ No newline at end of file
diff --git a/server/controller/auth/cms/EditFact.php b/server/controller/auth/cms/EditFact.php
new file mode 100644
index 0000000..3957074
--- /dev/null
+++ b/server/controller/auth/cms/EditFact.php
@@ -0,0 +1,52 @@
+<?php
+
+
+require_once "../../../../server/handler/data/File.php";
+require_once "../../../../server/handler/data/Content.php";
+
+use data\File;
+use data\Content;
+
+
+if (isset($_POST['submit'])){
+    $file = new File();
+    $content = new Content();
+    $get_content = $content->FindById($_GET['id_fact'])[0];
+
+    $targetDirectory = "../../../../assets/content/";
+    if (!empty($_FILES['file']['name'])){
+        $fileCount = count($_FILES['file']['name']);
+        if ($fileCount==2){
+            for ($i = 0; $i < $fileCount; $i++) {
+                $fileType = explode("/",$_FILES['file']['type'][$i]);
+                if ($fileType[0]=="image"){
+                    $file_name = $_FILES['file']['name'][$i];
+                    $tmp_name = $_FILES['file']['tmp_name'][$i];
+                    $extension = pathinfo($file_name, PATHINFO_EXTENSION);
+                    $file_up_name = time() . "." . $extension;
+                    move_uploaded_file($tmp_name, $targetDirectory . $file_name);
+                    $file->Update($get_content['id_video'],$file_name,'../../assets/content/'.$file_up_name,'photo');
+                }else{
+                    $file_video = $_FILES['file']['name'][$i];
+                    $tmp_video = $_FILES['file']['tmp_name'][$i];
+                    $extension = pathinfo($file_video, PATHINFO_EXTENSION);
+                    $file_up_video = time() . "." . $extension;
+                    move_uploaded_file($tmp_video, $targetDirectory . $file_video);
+                    $file->Update($get_content['id_file'],$file_video,'../../assets/content/'.$file_up_video,'video');
+                }
+            }
+        }
+    }
+
+    if (isset($_POST['facttitle'])){
+        $title = $_POST['facttitle'];
+    }
+    if (isset($_POST['facthighlight'])){
+        $highlight = $_POST['facthighlight'];
+    }
+    if (isset($_POST['factdescription'])){
+        $description = $_POST['factdescription'];
+    }
+
+    $content->Update($get_content['id'],$title,$description,$get_content['id_file'],$get_content['id_photo'],$highlight);
+}
\ No newline at end of file
-- 
GitLab