diff --git a/digital-course-file/public/digital-course-file - Shortcut.lnk b/digital-course-file/public/digital-course-file - Shortcut.lnk new file mode 100644 index 0000000000000000000000000000000000000000..f4d26b442236687f029ee2e66cfef5f1fb78545b Binary files /dev/null and b/digital-course-file/public/digital-course-file - Shortcut.lnk differ diff --git a/digital-course-file/src/hooks/useFolder.js b/digital-course-file/src/hooks/useFolder.js index 0012fb7ba56eb85c6f2a15082e903b31442d3d90..ab56f941ee81f1ac37f20b79a2d008d514a592cd 100644 --- a/digital-course-file/src/hooks/useFolder.js +++ b/digital-course-file/src/hooks/useFolder.js @@ -2,7 +2,7 @@ import { useState,useReducer, useEffect } from "react"; import { database } from '../fire.js' import firebase from 'firebase' -export const ROOT_FOLDER = {name: 'Root', id : null , path : [] }; +export const ROOT_FOLDER = {name: 'Root', id : null , path : [] , parents : []}; export function useFolder( folderId = null, folder= null) { diff --git a/digital-course-file/src/user/AddFolder.js b/digital-course-file/src/user/AddFolder.js index 046bb1022374ce9d721f2c932253a7562e739d8f..3cd1a5b292724c86c8b1e978f2cf7109b7945e78 100644 --- a/digital-course-file/src/user/AddFolder.js +++ b/digital-course-file/src/user/AddFolder.js @@ -28,13 +28,19 @@ export default function AddFolder( {currentFolder} ){ path.push( { name : currentFolder.name , id : currentFolder.id} ) } + const parents = [...currentFolder.parents]; + if(currentFolder!== ROOT_FOLDER){ + parents.push(currentFolder.id) + } + e.preventDefault(); database.folders.add({ name : name, parentId : currentFolder.id, userId: firebase.auth().currentUser.uid, path : path, - createdAt : database.getTime() + createdAt : database.getTime(), + parents : parents, }) setName(""); closeModal(); diff --git a/digital-course-file/src/user/Hero.js b/digital-course-file/src/user/Hero.js index 092821e8a541d6cc12a0392bd73db45324a49cdc..a8e9a37c96de0d8c9ae410785538f7bd2e054a4e 100644 --- a/digital-course-file/src/user/Hero.js +++ b/digital-course-file/src/user/Hero.js @@ -2,12 +2,13 @@ import React from 'react' import AddFolder from './AddFolder' import AddFile from './AddFile' import { Container, Button, Navbar, Nav } from 'react-bootstrap' -import { useFolder } from '.././hooks/useFolder' +import { ROOT_FOLDER, useFolder } from '.././hooks/useFolder' import Folder from './Folder' import FolderNav from './FolderNav' import Deffolders from './Deffolders' -import { useParams,useLocation } from 'react-router-dom' -import copyright from './copyright' +import DeleteFolder from './DeleteFolder' +import { useParams } from 'react-router-dom' +import copyright from './copyright' import { Link } from 'react-router-dom' import File from './File' import FontAwesomeIcon from '@fortawesome/react-fontawesome'; @@ -36,8 +37,10 @@ const Hero = ({ handleLogout }) => { <div className='d-flex align-items-center'> <FolderNav currentFolder={folder} /> <AddFolder currentFolder={folder} /> - <AddFile currentFolder={folder}/> - {childFolders.length == 0 && <Deffolders currentFolder={folder} />} + + {childFolders.length == 0 && folder.parentId == null && ( + <Deffolders currentFolder={folder} /> + )} </div> {childFolders.length > 0 && (