Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
6bf86b7
sample 1
einartech Jun 21, 2021
2c5efe6
Wireframe
bbenalia Jun 22, 2021
3c4fd2f
sample 1 erased
einartech Jun 22, 2021
28f8475
mkdir in rooot folder
bbenalia Jun 22, 2021
b491d57
menu-search done
einartech Jun 22, 2021
b60bbe5
test#1
einartech Jun 22, 2021
c21ed44
Merge pull request #4 from imalovelyghost/D1/general_styles
bbenalia Jun 22, 2021
f2900f8
Feat: list files and directories in root
bbenalia Jun 22, 2021
d102609
Merge branch 'master' into F3/List_files
bbenalia Jun 22, 2021
5fa8ef1
feat: list files & general styles
bbenalia Jun 23, 2021
39b7639
Merge pull request #5 from imalovelyghost/F3/List_files
einartech Jun 23, 2021
8f78aa2
F#10/Date_Formatted
einartech Jun 23, 2021
5c5b2c3
Merge pull request #11 from imalovelyghost/F10/format_date
bbenalia Jun 23, 2021
2c92848
Feat: handle add button
bbenalia Jun 23, 2021
d943d75
Merge branch 'master' into F8/handle_add_button
bbenalia Jun 23, 2021
e3a955a
Merge pull request #14 from imalovelyghost/F8/handle_add_button
einartech Jun 23, 2021
01088de
F#12/Size_Formatted
einartech Jun 23, 2021
3e674e2
Merge pull request #16 from imalovelyghost/F12/format_size
bbenalia Jun 23, 2021
6d73dd1
fix: error stat creating dirs
bbenalia Jun 24, 2021
0898d94
Merge branch 'master' into F15/handle_error_files
bbenalia Jun 24, 2021
26201ed
Feat: added modules
bbenalia Jun 24, 2021
4e195ec
Feat: modify & delete directories
bbenalia Jun 26, 2021
2cccd9a
feat: uploding files
bbenalia Jun 26, 2021
e9d1ed6
feat: progress bar
bbenalia Jun 26, 2021
51c0077
Merge pull request #17 from imalovelyghost/F15/handle_error_files
einartech Jun 27, 2021
386bc79
Feat: play videos audios and view images
bbenalia Jun 28, 2021
a58e185
feat: change to boostrap icons
bbenalia Jun 28, 2021
fe451bd
added htaccess
bbenalia Jun 28, 2021
e30c7f6
added icons to dropdown
bbenalia Jun 28, 2021
242da4c
script of search files and directories
bbenalia Jun 29, 2021
2badff3
search files and list them without anchor
bbenalia Jun 29, 2021
781ed30
fix: delete files
bbenalia Jun 29, 2021
0cd6e73
fix script php search file simplified
bbenalia Jun 30, 2021
e27004a
highligh searched string
bbenalia Jun 30, 2021
ab83b3e
fix: finished
bbenalia Jun 30, 2021
ea3173e
Merge pull request #23 from imalovelyghost/F20/upload_files
bbenalia Jun 30, 2021
1e33317
added magnific-popup library
bbenalia Jun 30, 2021
3cecf30
Merge branch 'master' into F21/view_media_files
bbenalia Jun 30, 2021
c4c36fd
Merge pull request #24 from imalovelyghost/F21/view_media_files
bbenalia Jun 30, 2021
b715905
Merge branch 'master' into F22/search_feature
bbenalia Jun 30, 2021
752e162
Merge pull request #25 from imalovelyghost/F22/search_feature
bbenalia Jun 30, 2021
f305563
Fix: arrange some js scripts
bbenalia Jun 30, 2021
5edd57d
Merge pull request #27 from imalovelyghost/F26/Arrange_js_scripts
bbenalia Jun 30, 2021
d330c60
Dix: view ext of files
bbenalia Jun 30, 2021
1f9672e
Merge pull request #29 from imalovelyghost/F28/print_extension
bbenalia Jun 30, 2021
dca9f67
some styles
bbenalia Jun 30, 2021
2f0ce57
Merge pull request #31 from imalovelyghost/F30/some_styles
bbenalia Jun 30, 2021
0bdd186
Fix: rename file
bbenalia Jul 1, 2021
863e20b
Merge pull request #33 from imalovelyghost/F32/rename_file_extension
bbenalia Jul 1, 2021
eb1e66e
feat: drag and drop
bbenalia Jul 1, 2021
261daea
Merge pull request #35 from imalovelyghost/F34/drag_and_drop
bbenalia Jul 1, 2021
2d60d2d
doc: Readme
bbenalia Jul 1, 2021
066c3a4
deleted readme copy
bbenalia Jul 1, 2021
5675ea3
Merge pull request #37 from imalovelyghost/D36/readme
bbenalia Jul 1, 2021
fda4137
feat: recent folders & constants
bbenalia Jul 2, 2021
81d3832
Merge pull request #39 from imalovelyghost/F38/recent_folders
bbenalia Jul 2, 2021
8aba3c4
feat: file icons
bbenalia Jul 2, 2021
37c4f70
Merge pull request #41 from imalovelyghost/F40/fille_icons
bbenalia Jul 2, 2021
ca9ec16
Doc: add img to readme and pdf requirements
bbenalia Jul 2, 2021
2eb86c9
Merge pull request #43 from imalovelyghost/F42/docs
bbenalia Jul 2, 2021
108e90b
deleted readme copy
bbenalia Jul 2, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Ignores root directory
root
.vscode
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2021 Assembler School of Software Engineering

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
103 changes: 58 additions & 45 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,74 +3,87 @@
# PHP Local FileSystem explorer <!-- omit in toc -->

<p>
<img alt="Version" src="https://img.shields.io/badge/version-1.0-blue.svg?cacheSeconds=2592000" />
<img alt="Capture" src="./assets/img/capture.png" />
</p>

>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.

>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.


## Index <!-- omit in toc -->

- [Requirements](#requirements)
- [Repository](#repository)
- [Getting started](#getting-started)
- [Prerequisites](#prerequisites)
- [Installing](#installing)
- [Branches naming strategy](#branches-naming-strategy)
- [Tests](#tests)
- [Libraries](#libraries)
- [Technologies used](#technologies-used)
- [Project delivery](#project-delivery)
- [Resources](#resources)
- [License](#license)
- [Contributors ✨](#contributors-)

## Requirements
## Getting started
This project was made to learn how 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.

- 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 > v7
- 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
### Prerequisites
First, you need XAMPP, you can download it from [here](https://www.apachefriends.org/es/index.html).

## Repository
You also need the latest version of PHP. We currently use PHP 8

First of all you must fork this project into your GitHub account.
### Installing
Clone this project in your htdocs folder:

To create a fork on GitHub is as easy as clicking the “fork” button on the repository page.
```
git clone https://github.com/imalovelyghost/filesystem-explorer.git
```

<img src="https://docs.github.com/assets/images/help/repository/fork_button.jpg" alt="Fork on GitHub" width='450'>
## Branches naming strategy
- main: includes the main product
- `F/<number>`: a feature implementation branch
- `D/<number>`: a document branch

## Technologies used
## Tests
There are yet no tests for this project.

\* HTML

\* CSS
## Libraries
\* Magnific-Popup

\* JS
\* Bootstrap

\* PHP
\* Bootstrap Icons

## Project delivery
\* LineIcons

To deliver this project you must follow the steps indicated in the document:
## Technologies used
\* HTML

- [Submitting a solution](https://www.notion.so/Submitting-a-solution-524dab1a71dd4b96903f26385e24cdb6)
\* CSS

- You must include the project documentation in PDF format.
- You must include a presentation in PDF format explaining:
- Comparison of the original design (Wireframe) with the final result of the project
- Comparison of the use case diagram with the actions that the user can finally perform
- Comparison of the original use case diagram with the final user actions
- What lessons you’ve learned during this project
- What problems have you encountered when developing this project?
- How you have organized and distributed the tasks
\* jQuery v3.6

\* PHP v8

## Resources

- [File system](https://es.wikipedia.org/wiki/Administrador_de_archivos)
- [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)

## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details

## Contributors ✨
Thanks goes to these wonderful people([emoji key](https://allcontributors.org/docs/en/emoji-key)):

<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tr>
<td align="center"><a href="https://github.com/imalovelyghost"><img src="https://avatars.githubusercontent.com/u/79602817?v=4" width="100px;" alt=""/><br /><sub><b>imalovelyghost</b></sub></a><br /><a href="https://github.com/imalovelyghost/filesystem-explorer/commits?author=imalovelyghost" title="Code">💻</a> <a href="#design-imalovelyghost" title="Design">🎨</a> <a href="#ideas-imalovelyghost" title="Ideas, Planning, & Feedback">🤔</a> <a href="#projectManagement-imalovelyghost" title="Project Management">📆</a></td>

<td align="center"><a href="https://github.com/bbenalia"><img src="https://avatars.githubusercontent.com/u/65949632?v=4?s=100" width="100px;" alt=""/><br /><sub><b>bbenalia</b></sub></a><br /><a href="https://github.com/imalovelyghost/filesystem-explorer/commits?author=bbenalia" title="Code">💻</a> <a href="#design-bbenalia" title="Design">🎨</a> <a href="#ideas-bbenalia" title="Ideas, Planning, & Feedback">🤔</a> <a href="#projectManagement-bbenalia" title="Project Management">📆</a></td>
</tr>
</table>

<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->

This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
51 changes: 51 additions & 0 deletions assets/css/styles.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
body {
margin-top: 20px;
background-color: #f7f7ff;
}

.card {
position: relative;
display: flex;
flex-direction: column;
min-width: 0;
word-wrap: break-word;
background-color: #fff;
background-clip: border-box;
border: 0px solid rgba(0, 0, 0, 0);
border-radius: 0.25rem;
margin-bottom: 1.5rem;
box-shadow: 0 2px 6px 0 rgb(218 218 253 / 65%),
0 2px 6px 0 rgb(206 206 238 / 54%);
/* min-height: 55vh; */
}

.input-file {
width: 0.1px;
height: 0.1px;
opacity: 0;
overflow: hidden;
position: absolute;
z-index: -1;
}

.side-alert {
position: fixed;
left: 25vw;
bottom: 0;
width: 50vw;
}

.cut-text {
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}

.opacity-8 {
opacity: 0.8;
}

.drag_over {
border: 4px dashed #96c4ea;
color: #96c4ea;
}
Binary file added assets/img/capture.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 14 additions & 0 deletions assets/js/script.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
// fetch("./modules/read_directories.php?file")
// .then(function (response) {
// return response.json();
// })
// .then(function (json) {
// console.log(json);
// })
// .catch(function (err) {
// console.log("Fetch problem: " + err.message);
// });

// $("i[data-file]").click(function () {
// // console.log("Holaaa");
// });
4 changes: 4 additions & 0 deletions constants/path.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?php

define('ROOT_PATH', './root/');
define('ROOT_PATH_BACK', '../root/');
Binary file added docs/PHP Server - File Explorer.pdf
Binary file not shown.
Loading