diff --git a/digital-course-file/src/user/Deletefolder.js b/digital-course-file/src/user/Deletefolder.js index a9a3ea5aa2db923ffb3cf14dc13c5b8ea42d92ce..3aa94ad81c1e3b72b4088eb13d36e6503d3ff1be 100644 --- a/digital-course-file/src/user/Deletefolder.js +++ b/digital-course-file/src/user/Deletefolder.js @@ -5,7 +5,7 @@ import { faAlignCenter, faFolderMinus } from "@fortawesome/free-solid-svg-icons" import { database } from '../fire.js' import firebase from 'firebase' import { Link } from "react-router-dom"; - +import "firebase/storage"; // {currentFolder} export default function AddFolder( {currentFolder} ){ const [open, setOpen] = useState(false); @@ -22,21 +22,49 @@ export default function AddFolder( {currentFolder} ){ } function handleDelete(){ - var folderdel = database.folders - .where("userId","==", firebase.auth().currentUser.uid) - .where("parents", "array-contains", currentFolder.id); - folderdel.get().then(function(querySnapshot) { - querySnapshot.forEach(function(doc) { - doc.ref.delete(); - }); - }); + var folderdel = database.folders + .where("userId","==", firebase.auth().currentUser.uid) + .where("parents", "array-contains", currentFolder.id); + folderdel.get().then(function(querySnapshot) { + querySnapshot.forEach(function(doc) { + var filedel = database.files + .where("userId","==", firebase.auth().currentUser.uid) + .where("folderId","==",doc.id); + filedel.get().then(function(querySnapshot) { + querySnapshot.forEach(function(docm) { + const storageRef = firebase.storage().ref(); + var path = 'files/'+firebase.auth().currentUser.uid+'/'+docm.data().uniqueid; + console.log(path) + var desertRef = storageRef.child(path); + desertRef.delete(); + docm.ref.delete(); - database.folders.doc(currentFolder.id).delete().then(() => { - console.log("Folder deleted"); - }).catch((error) => { - console.error("Error :", error); + }); + }); + doc.ref.delete(); + }); + }); + + var filedel = database.files + .where("userId","==", firebase.auth().currentUser.uid) + .where("folderId","==",currentFolder.id); + filedel.get().then(function(querySnapshot) { + querySnapshot.forEach(function(doc) { + const storageRef = firebase.storage().ref(); + var path = 'files/'+firebase.auth().currentUser.uid+'/'+doc.data().uniqueid; + console.log(path); + var desertRef1 = storageRef.child(path); + desertRef1.delete(); + doc.ref.delete(); }); - } + }); + + database.folders.doc(currentFolder.id).delete().then(() => { + console.log("Folder deleted"); + }).catch((error) => { + console.error("Error :", error); + }); + } return ( <> @@ -61,4 +89,4 @@ export default function AddFolder( {currentFolder} ){ </Modal> </> ); -} +} \ No newline at end of file