diff --git a/CRUD/create.php b/CRUD/create.php new file mode 100644 index 00000000..a07551b4 --- /dev/null +++ b/CRUD/create.php @@ -0,0 +1,66 @@ + + + + + + + + + + + + Swal.fire({ + position: 'center', + icon: 'success', + title: 'Folder created!', + showConfirmButton: false, + timer: 1500 + }) + "; + } else { + echo "An error occurred while creating the directory"; + } + } elseif (is_dir($_SESSION["absPath"])) { + $create2 = mkdir($altRoute, 0777); + var_dump($_SESSION["absPath"]); + if ($create2) { + } else { + echo "An error occurred while creating the directory"; + } + } + + } else { + echo ""; + } + +} + diff --git a/CRUD/delete.php b/CRUD/delete.php new file mode 100644 index 00000000..d631227d --- /dev/null +++ b/CRUD/delete.php @@ -0,0 +1,18 @@ + \ No newline at end of file diff --git a/CRUD/edit.php b/CRUD/edit.php new file mode 100644 index 00000000..a7184845 --- /dev/null +++ b/CRUD/edit.php @@ -0,0 +1,15 @@ + diff --git a/CRUD/element-info.php b/CRUD/element-info.php new file mode 100644 index 00000000..94e6e8f7 --- /dev/null +++ b/CRUD/element-info.php @@ -0,0 +1,56 @@ +' . basename($file) . PHP_EOL . "
"; + if ($sizeInKb < 1024) { + echo "
"; + echo 'Size: ' . round($sizeInKb, 1) . " KB"; + echo '

Creation date:
' . date("F d Y H:i:s.", filectime($file)) . '

'; + echo '

Updating date:
' . date("F d Y H:i:s.", fileatime($file)) . '

'; + } else { + echo round($sizeInMb, 1) . " MB"; + echo '

Creation date:
' . date("F d Y H:i:s.", filectime($file)) . '

'; + echo '

Updating date:
' . date("F d Y H:i:s.", fileatime($file)) . '

'; + } + echo 'Extension: ' . $file = pathinfo($file, PATHINFO_EXTENSION); +} + +$dir = $_SESSION['absPath']; + +function showFolderInfo($dir) +{ + + $path = $dir; + $Directory = new RecursiveDirectoryIterator($path); + $Iterator = new RecursiveIteratorIterator($Directory); + + $totalFilesize = 0; + foreach ($Iterator as $file) { + if ($file->isFile()) { + $totalFilesize += $file->getSize(); + } + } + + $FilesizeInKb = $totalFilesize / 1024; + $FilesizeInMb = $FilesizeInKb / 1024; + echo '

' . basename($dir) . PHP_EOL . "



"; + if ($FilesizeInKb < 1024) { + echo "Size: " . round($FilesizeInKb, 1) . " KB"; + } else { + echo "Size: " . round($FilesizeInMb, 1) . " MB"; + } + echo '

Creation date:
' . date("F d Y H:i:s.", filectime($path)) . '

'; + echo '

Updating date:
' . date("F d Y H:i:s.", fileatime($path)) . '

'; + +} + +?> + diff --git a/CRUD/folder-list.php b/CRUD/folder-list.php new file mode 100644 index 00000000..ba08aedf --- /dev/null +++ b/CRUD/folder-list.php @@ -0,0 +1,74 @@ +"; + + while (($file = readdir($manager)) !== false) { + + $complete_route = $root . "/" . $file; + + if ($file != "." && $file != "..") { + if (is_dir($complete_route)) { + echo "
  • " . $file . "
  • "; + viewFolderStructure($complete_route); + + } else { + echo "
  • " . $file . "
  • "; + } + } + } + + closedir($manager); + echo ""; + } else { + echo "Not a valid directory path
    "; + } + } + + if (isset($_REQUEST["route"])) { + $completeRoot = $_REQUEST["route"]; + + } + + + function viewFolderElements($root ) { + if (is_dir($root )) { + + $manager = opendir($root ); + echo ""; + } else { + echo "Not a valid directory path
    "; + + } + + } + + +?> diff --git a/CRUD/search.php b/CRUD/search.php new file mode 100644 index 00000000..56baefc3 --- /dev/null +++ b/CRUD/search.php @@ -0,0 +1,75 @@ +"; +// } +// } +// } + + +?> \ No newline at end of file diff --git a/CRUD/showContent.php b/CRUD/showContent.php new file mode 100644 index 00000000..f41b5713 --- /dev/null +++ b/CRUD/showContent.php @@ -0,0 +1,82 @@ +
    " . $file . "
    "; + } else { + $extension = pathinfo($file, PATHINFO_EXTENSION); + if ($extension == 'jpg') { + $image = $directory. 'jpg.png'; + echo "

    " . $file . "
    "; + } elseif ($extension == 'png') { + $image = $directory. 'png.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'doc') { + $image = $directory. 'doc.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'csv') { + $image = $directory. 'csv.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'exe') { + $image = $directory. 'exe.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'mp3') { + $image = $directory. 'mp3.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'mp4') { + $image = $directory. 'mp4.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'odt') { + $image = $directory. 'odt.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'pdf') { + $image = $directory. 'pdf.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'png') { + $image = $directory. 'png.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'ppt') { + $image = $directory. 'ppt.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'rar') { + $image = $directory. 'rar.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'svg') { + $image = $directory. 'svg.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'txt') { + $image = $directory. 'txt.png'; + echo "

    " . $file . "
    "; + }elseif ($extension == 'zip') { + $image = $directory. 'zip.png'; + echo "

    " . $file . "
    "; + } + } + } + } + + closedir($manager); + + } else { + echo "Not a valid directory path
    "; + } +} + + + +?> \ No newline at end of file diff --git a/CRUD/showSidebar.php b/CRUD/showSidebar.php new file mode 100644 index 00000000..3dcce84f --- /dev/null +++ b/CRUD/showSidebar.php @@ -0,0 +1,83 @@ +"; + + while (($file = readdir($manager)) !== false) { + + $complete_route = $root . "/" . $file; + + if ($file != "." && $file != "..") { + if (is_dir($complete_route)) { + $image = $directory. 'folder.png'; + echo "
  • " . $file . "
  • "; + viewFolderStructure($complete_route); + } else { + $extension = pathinfo($file, PATHINFO_EXTENSION); + if ($extension == 'jpg') { + $image = $directory. 'jpg.png'; + echo "
  • " . $file . "
  • "; + } elseif ($extension == 'png') { + $image = $directory. 'png.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'doc') { + $image = $directory. 'doc.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'csv') { + $image = $directory. 'csv.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'exe') { + $image = $directory. 'exe.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'mp3') { + $image = $directory. 'mp3.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'mp4') { + $image = $directory. 'mp4.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'odt') { + $image = $directory. 'odt.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'pdf') { + $image = $directory. 'pdf.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'png') { + $image = $directory. 'png.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'ppt') { + $image = $directory. 'ppt.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'rar') { + $image = $directory. 'rar.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'svg') { + $image = $directory. 'svg.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'txt') { + $image = $directory. 'txt.png'; + echo "
  • " . $file . "
  • "; + }elseif ($extension == 'zip') { + $image = $directory. 'zip.png'; + echo "
  • " . $file . "
  • "; + } + + } + } + } + + closedir($manager); + echo ""; + } else { + echo "Not a valid directory path
    "; + } +} + +?> \ No newline at end of file diff --git a/CRUD/upload.php b/CRUD/upload.php new file mode 100644 index 00000000..74d6f12f --- /dev/null +++ b/CRUD/upload.php @@ -0,0 +1,33 @@ + diff --git a/README.md b/README.md index 46e02398..715f2651 100644 --- a/README.md +++ b/README.md @@ -1,56 +1,91 @@ -`#html` `#css` `#js` `#php` `#master-in-software-development` - # PHP Local FileSystem explorer -

    - Version -

    ->In this project you will have to create a system file explorer that allows the user to navigate, create directories and upload files in the same way as he would in his usual operating system. +## Details ->The file explorer is a tool that allows you to directly view and manipulate the files and directories associated with a path, so you must take into account from which path the user starts and which path they can access. +>DESCRIPTION: +>We have developed this project using the POST method in HTML forms in order to better understand how it works. We've tried to FETCH requests from JS but we've run out of time to understand all the issues we're running into. We made a view of nested folders so that the user would know in which directory he is at any moment. Our file system is capable of browsing and creating folders and subfolders, creating new folders, and uploading folders and files with the required extensions.Shows information related to the date of creation of folders and files, date of last access along with the weight and type of extension of each file. We have also implemented a button to delete both files and folders and the ability to rename them. Secondly we have not had time to implement the function of searching for folders and files and being able to understand the fetch requests in order to implement them. Because of this we have all used the POST method in the HTML forms for development. -## Index -- [Requirements](#requirements) -- [Repository](#repository) -- [Technologies used](#technologies-used) -- [Project delivery](#project-delivery) -- [Resources](#resources) -## Requirements +>Challenges: + +>This project has been a real challenge for us and we have tried to solve most of them by our own means, such as paths, recursive functions, sessions, specific PHP functions. + + + +>Organization and distribution of tasks: + + +>We have tried to distribute the work in the most equitable way possible, solving each problem point by point and doing a lot of peercoding. +>We have done a lot of fusion of ideas and debated different ways to achieve the objectives + + +>In the future: + +>Later, we would like to finish implementing all the necessary features for this project such as the search bar, understand more in depth the fetch requests in order to give it more dynamism. We would also like to implement a nested accordion menu and make a recycle bin. On the other hand, we are very happy with the result obtained and we have worked a lot on logic and teamwork. + + + +## How to Use the Project + +>To visualize the project you need to simulate a local server through XAAMP to visualize the content: www.apachefriends.org v8 -- Create a clear and orderly directory structure -- Both the code and the comments must be written in English -- Use the camelCase code style to define variables and functions -- In the case of using HTML, never use inline styles -- In the case of using different programming languages ​​always define the implementation in separate terms -- Remember that it is important to divide the tasks into several sub-tasks so that in this way you can associate each particular step of the construction with a specific commit -- You should try as much as possible that the commits and the planned tasks are the same -Delete files that are not used or are not necessary to evaluate the project -## Repository -First of all you must fork this project into your GitHub account. +## Wireframe -To create a fork on GitHub is as easy as clicking the “fork” button on the repository page. +>Before: -Fork on GitHub +>1-idea +![This is an image](./assets/src/minimal-blue.jpg) + + +>2-idea +![This is an image](./assets/src/Web%201920%20%E2%80%93%206.jpg) + + +>Final result +![This is an image](./assets/src/minimal-blue%20%E2%80%93%201.jpg) + + +## Diagram + +![This is an image](./assets/src/Diagram%20file_system.JPG) + + + +## Requirements + +- You cannot use file third-party libraries ✔ +- You will not be able to use global variables in PHP. ✔ +- You must use GIT ✔ +- You must use the PHP > v8 ✔ +- Create a clear and orderly directory structure ✔ +- Both the code and the comments must be written in English ✔ +- Use the camelCase code style to define variables and functions ✔ +- In the case of using HTML, never use inline styles ✔ +- In the case of using different programming languages ​​always define the implementation in separate terms ✔ +- Remember that it is important to divide the tasks into several sub-tasks so that in this way you can associate each particular step of the construction with a specific commit ✔ +- You should try as much as possible that the commits and the planned tasks are the same ✔ +- Delete files that are not used or are not necessary to evaluate the project ✔ + +## Repository + +https://github.com/88jose/filesystem-explorer.git ## Technologies used -\* HTML +\* HTML ✔ + +\* CSS ✔ -\* CSS +\* JS ✔ -\* JS +\* PHP ✔ -\* PHP +\* We have yet to understand the FETCH requests in more depth to be able to implement the functionalities in a more dynamic way. ## Resources @@ -58,3 +93,4 @@ To create a fork on GitHub is as easy as clicking the “fork” button on the r - [PHP FileSystem W3C](https://www.w3schools.com/php/php_ref_filesystem.asp) - [PHP FileSystem Oficial](https://www.php.net/manual/es/book.filesystem.php) - [README Guidelines Example](https://gist.github.com/PurpleBooth/109311bb0361f32d87a2) +- [++] (https://www.youtube.com/ - https://stackoverflow.com/ - https://stackoverflow.es/ ) diff --git a/assets/css/styles.css b/assets/css/styles.css new file mode 100644 index 00000000..4cd81611 --- /dev/null +++ b/assets/css/styles.css @@ -0,0 +1,213 @@ +*{ + padding: 0; + margin: 0; + box-sizing: border-box; +} +:root{ + --colorWhite: #FFFFFF; + --colorDark:#8690FA; + --colorSemiLight: #8690FA; + --colorLight:#E8ECFF; + --border: 12px; + --font: 'Montserrat', sans-serif; +} +@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;700;900&display=swap'); +ul{ + padding-left: 1em; +} +li{ + list-style: none; +} +a{ + text-decoration: none; +} +a:active, a:focus{ + font-weight: 600; + color: var(--colorDark); +} + + +#container-all{ + min-height: 100vh; + background-color: var(--colorLight); + padding: 0; +} +.sidebar-heading { + min-width: 20vw; + padding: 1em; + border-right: none; +} +.sidebar-heading a h1{ + padding-left: 0.2em; + margin-top: 15px; + color: var(--colorDark); + font-weight: 600; +} +.logo{ + display: flex; + align-items: center; + border-bottom: 1px solid var(--colorDark); + padding-bottom: 1.5em; + justify-content: center; +} +.logo img{ + width: 4rem; + margin-left: -4rem; +} +#sidebar{ + font-family: var(--font); + color: var(--colorDark); + background-color: var(--colorWhite); +} +.list-group{ + padding-left: 4.3em; + padding-top: 30px; +} +.list-group-item{ + border:none; + padding: 0.3em; +} + +.navbar{ + padding-top: 2em; +} +.icon-content{ + text-align: center; +} +.icon-content img{ + width: 5rem; +} +/* .file-sidebar{ + display: none; +} */ + +/* inputs */ +.open-modal{ + font-family: var(--font); + font-weight: 600; + font-size: 18px; + background-color:var(--colorDark); + color: var(--colorWhite); + border:1px solid var(--colorDark); + padding: 8px; + width: 120px; + border-radius: var(--border); + -webkit-border-radius: var(--border); + -moz-border-radius: var(--border); + -ms-border-radius: var(--border); + -o-border-radius: var(--border); +} +.input-file{ + position: relative; + display: inline-block; + } + .input-file::before { + font-family: var(--font); + font-weight: 600; + font-size: 18px; + background-color: var(--colorSemiLight); + color: var(--colorWhite); + display: flex; + justify-content: center; + align-items: center; + border-radius: var(--border); + -webkit-border-radius: var(--border); + -moz-border-radius: var(--border); + -ms-border-radius: var(--border); + -o-border-radius: var(--border); + border:1px solid var(--colorDark); + content: 'Select File'; + position: absolute; + left: 0; + right: 0; + top: 0; + bottom: -10px; +} + .input-file input[type="file"] { + opacity: 0; + width: 150px; + height: 32px; + display: inline-block; + padding: 8px; + } + #input-file::before { + content: 'Seleccionar Archivo 1'; + } + + .submit-upload{ + font-family: var(--font); + font-weight: 600; + font-size: 18px; + background-color:var(--colorWhite); + color: var(--colorDark); + border:none; + padding: 8px; + width: 120px; + border-radius: var(--border); + -webkit-border-radius: var(--border); + -moz-border-radius: var(--border); + -ms-border-radius: var(--border); + -o-border-radius: var(--border); +} + +#infoArchive{ + padding: 2em; + max-height: 50vh; + background-color: var(--colorSemiLight); + border-radius: var(--border); + -webkit-border-radius: var(--border); + -moz-border-radius: var(--border); + -ms-border-radius: var(--border); + -o-border-radius: var(--border); +} + +.edit-delete{ + display: flex; + justify-content: end; + align-items: center; + margin-left: auto; +} +.open-modal.edit{ + max-width: 2rem;; + position: absolute; + opacity: 0; +} + +.icon-delete{ + max-width: 2rem; + z-index: 0; +} +.delete{ + text-align: end; + padding: 0; +} + +.link-list:hover{ + font-weight: 600; + color:var(--colorDark) +} + +.search{ + font-family: var(--font); + font-weight: 500; + font-size: 18px; + background-color: var(--colorWhite); + color: var(--colorDark); + border: none; + padding: 8px; + border-radius: var(--border); + -webkit-border-radius: var(--border); +} + +.btn-search{ + font-family: var(--font); + font-weight: 600; + font-size: 18px; + background-color: var(--colorDark); + /* color: var(--colorWhite); */ + border: 1px solid var(--colorDark); + padding: 8px; + width: 120px; + border-radius: var(--border); + -webkit-border-radius: var(--border); +} \ No newline at end of file diff --git a/assets/icons/csv.png b/assets/icons/csv.png new file mode 100644 index 00000000..95ccc639 Binary files /dev/null and b/assets/icons/csv.png differ diff --git a/assets/icons/delete.png b/assets/icons/delete.png new file mode 100644 index 00000000..8f3dc349 Binary files /dev/null and b/assets/icons/delete.png differ diff --git a/assets/icons/doc.png b/assets/icons/doc.png new file mode 100644 index 00000000..ec6afbdd Binary files /dev/null and b/assets/icons/doc.png differ diff --git a/assets/icons/edit.png b/assets/icons/edit.png new file mode 100644 index 00000000..c490787c Binary files /dev/null and b/assets/icons/edit.png differ diff --git a/assets/icons/exe.png b/assets/icons/exe.png new file mode 100644 index 00000000..d8ba424d Binary files /dev/null and b/assets/icons/exe.png differ diff --git a/assets/icons/folder.png b/assets/icons/folder.png new file mode 100644 index 00000000..fb91113e Binary files /dev/null and b/assets/icons/folder.png differ diff --git a/assets/icons/jpg.png b/assets/icons/jpg.png new file mode 100644 index 00000000..c0a167b2 Binary files /dev/null and b/assets/icons/jpg.png differ diff --git a/assets/icons/mp3.png b/assets/icons/mp3.png new file mode 100644 index 00000000..b8cc2a3b Binary files /dev/null and b/assets/icons/mp3.png differ diff --git a/assets/icons/mp4.png b/assets/icons/mp4.png new file mode 100644 index 00000000..6dd07b56 Binary files /dev/null and b/assets/icons/mp4.png differ diff --git a/assets/icons/odt.png b/assets/icons/odt.png new file mode 100644 index 00000000..d8f7f269 Binary files /dev/null and b/assets/icons/odt.png differ diff --git a/assets/icons/open-folder.png b/assets/icons/open-folder.png new file mode 100644 index 00000000..7816a7a0 Binary files /dev/null and b/assets/icons/open-folder.png differ diff --git a/assets/icons/pdf.png b/assets/icons/pdf.png new file mode 100644 index 00000000..8bb6a644 Binary files /dev/null and b/assets/icons/pdf.png differ diff --git a/assets/icons/png.png b/assets/icons/png.png new file mode 100644 index 00000000..ffe63d68 Binary files /dev/null and b/assets/icons/png.png differ diff --git a/assets/icons/ppt.png b/assets/icons/ppt.png new file mode 100644 index 00000000..7b2ac94b Binary files /dev/null and b/assets/icons/ppt.png differ diff --git a/assets/icons/rar.png b/assets/icons/rar.png new file mode 100644 index 00000000..34f04a8f Binary files /dev/null and b/assets/icons/rar.png differ diff --git a/assets/icons/search.png b/assets/icons/search.png new file mode 100644 index 00000000..322c2717 Binary files /dev/null and b/assets/icons/search.png differ diff --git a/assets/icons/svg.png b/assets/icons/svg.png new file mode 100644 index 00000000..b2254fd5 Binary files /dev/null and b/assets/icons/svg.png differ diff --git a/assets/icons/txt.png b/assets/icons/txt.png new file mode 100644 index 00000000..a2ebb256 Binary files /dev/null and b/assets/icons/txt.png differ diff --git a/assets/icons/zip.png b/assets/icons/zip.png new file mode 100644 index 00000000..3c0aab26 Binary files /dev/null and b/assets/icons/zip.png differ diff --git a/assets/src/Diagram file_system.JPG b/assets/src/Diagram file_system.JPG new file mode 100644 index 00000000..b6f33fc0 Binary files /dev/null and b/assets/src/Diagram file_system.JPG differ diff --git "a/assets/src/Web 1920 \342\200\223 5.jpg" "b/assets/src/Web 1920 \342\200\223 5.jpg" new file mode 100644 index 00000000..f8b72bf4 Binary files /dev/null and "b/assets/src/Web 1920 \342\200\223 5.jpg" differ diff --git "a/assets/src/Web 1920 \342\200\223 6.jpg" "b/assets/src/Web 1920 \342\200\223 6.jpg" new file mode 100644 index 00000000..dc74ce3b Binary files /dev/null and "b/assets/src/Web 1920 \342\200\223 6.jpg" differ diff --git "a/assets/src/minimal-blue \342\200\223 1.jpg" "b/assets/src/minimal-blue \342\200\223 1.jpg" new file mode 100644 index 00000000..4239f30e Binary files /dev/null and "b/assets/src/minimal-blue \342\200\223 1.jpg" differ diff --git a/assets/src/minimal-blue.jpg b/assets/src/minimal-blue.jpg new file mode 100644 index 00000000..4f59e50c Binary files /dev/null and b/assets/src/minimal-blue.jpg differ diff --git a/index.php b/index.php new file mode 100644 index 00000000..99bdbe2d --- /dev/null +++ b/index.php @@ -0,0 +1,178 @@ + + + + + + + + + + File System Explorer + + + + + + + + +
    + + +
    + + +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + +
    +
    + + + +
    + icon-delete + + +
    + +
    +
    + +
    +
    +
    + +
    +
    + + + + + \ No newline at end of file diff --git a/root/2/40000 b/root/2/40000 new file mode 100644 index 00000000..985d37eb Binary files /dev/null and b/root/2/40000 differ diff --git a/root/2/Captura test.JPG b/root/2/Captura test.JPG new file mode 100644 index 00000000..91bf2fdd Binary files /dev/null and b/root/2/Captura test.JPG differ diff --git a/root/4/40000 b/root/4/40000 new file mode 100644 index 00000000..3f75c750 Binary files /dev/null and b/root/4/40000 differ diff --git "a/root/7/V\303\255deos cortos y graciosos.mp4" "b/root/7/V\303\255deos cortos y graciosos.mp4" new file mode 100644 index 00000000..611a6a05 Binary files /dev/null and "b/root/7/V\303\255deos cortos y graciosos.mp4" differ diff --git a/root/7/pm4-Archivo.mp4 b/root/7/pm4-Archivo.mp4 new file mode 100644 index 00000000..e69de29b diff --git a/root/7/png-Archivo.png b/root/7/png-Archivo.png new file mode 100644 index 00000000..e69de29b diff --git a/root/7/prueba.csv b/root/7/prueba.csv new file mode 100644 index 00000000..e69de29b diff --git a/root/7/rar-Archivo.rar b/root/7/rar-Archivo.rar new file mode 100644 index 00000000..e69de29b diff --git a/root/8/carpeta-2/exe-Archivo.exe b/root/8/carpeta-2/exe-Archivo.exe new file mode 100644 index 00000000..e69de29b diff --git a/root/8/carpeta-2/pdf-Archivo.pdf b/root/8/carpeta-2/pdf-Archivo.pdf new file mode 100644 index 00000000..e69de29b diff --git a/root/exe-Archivo.exe b/root/exe-Archivo.exe new file mode 100644 index 00000000..e69de29b diff --git a/root/jpg-Archivo.jpg b/root/jpg-Archivo.jpg new file mode 100644 index 00000000..e69de29b diff --git a/root/mp3-Archivo.mp3 b/root/mp3-Archivo.mp3 new file mode 100644 index 00000000..e69de29b diff --git a/root/odt-Archivo.odt b/root/odt-Archivo.odt new file mode 100644 index 00000000..e69de29b diff --git a/root/pdf-Archivo.pdf b/root/pdf-Archivo.pdf new file mode 100644 index 00000000..e69de29b diff --git a/root/pm4-Archivo.mp4 b/root/pm4-Archivo.mp4 new file mode 100644 index 00000000..e69de29b diff --git a/root/png-Archivo.png b/root/png-Archivo.png new file mode 100644 index 00000000..e69de29b diff --git a/root/ppt-Archivo.ppt b/root/ppt-Archivo.ppt new file mode 100644 index 00000000..e69de29b diff --git a/script.js b/script.js new file mode 100644 index 00000000..139597f9 --- /dev/null +++ b/script.js @@ -0,0 +1,2 @@ + +