1
0
mirror of https://github.com/prasathmani/tinyfilemanager.git synced 2025-07-23 18:12:03 +02:00

301 Commits

Author SHA1 Message Date
Prasath Mani
4777022e13 Update SECURITY.md 2024-09-16 11:17:33 +05:30
Randy Garrison
0f58c2ca65 Add powershell file extension to text format for opening in editor. () 2024-09-10 03:39:29 +05:30
Caleb Mazalevskis
b602dcd172 Fix typos. () 2024-08-04 12:08:43 +05:30
Daniel Dias Rodrigues
1bcc240119 Added missing translatable string. Update pt-br translation. () 2024-07-05 04:43:26 +05:30
Awais
8b330b75a4 Update default font size to in jQuery initialization () 2024-06-24 08:13:07 +05:30
Prasath Mani
f120daa607 Update README.md 2024-06-06 09:23:44 +05:30
Prasath Mani
e27e1abeb4 remove email address 2024-06-06 09:20:20 +05:30
Fannie MC
a4d96e0eaf Add JSON Parse Error Handling in Upload Script ()
* Add JSON Parse Error Handling in Upload Script

* Update tinyfilemanager.php

* Update tinyfilemanager.php
2024-05-31 09:45:09 +05:30
Prasath Mani
843e240757 Update tinyfilemanager.php 2024-05-28 06:50:00 +05:30
Prasath Mani
ecec756b71 Update tinyfilemanager.php 2024-05-28 04:51:37 +05:30
Daniel Dias Rodrigues
8366e1bc29 Expanded the list of files recognized as compressed () 2024-05-27 09:29:54 +05:30
Ijor Tengab
d8fceac7dd Fix () 2024-05-27 09:27:33 +05:30
Mahyar Damavand
a306f4f1f7 Add --no-cache to 'apk add' command in order to reduce docker image size () 2024-05-26 10:39:06 +05:30
BANKA2017
a1ae0fa729 fix: Does not respect directory tree while uploading a folder containing sub-folders () 2024-05-01 10:01:27 +05:30
Torusrxxx
ca4b1b1743 Disable excluded extension name from viewing () 2024-03-25 11:09:24 +05:30
Michele Locati
8e87afae5b Fix wrong phpdoc of print_external() () 2023-09-14 15:05:36 +05:30
Tony Ganesh Prajapati
43063e4746 Update tinyfilemanager.php ()
changing String "Filter" to "Search"
2023-08-28 12:29:45 +05:30
AJ.Bassa
47359d3f4e Update translation.json ()
Updated Dutch translation
2023-08-11 01:14:37 +05:30
paponius
eb8f3d80bc random_bytes() only for >PHP7 () 2023-06-29 07:31:24 +05:30
ner0
f380478197 Typo & make text bold ()
* Fix typo

* Make text bold for consistency

Also dropping the plural 's'
2023-05-16 08:17:43 +05:30
divinity76
f7a2f77008 reduce feof() calls ()
micro-optimization: when doing large file copies, this will reduce the number of feof() calls. for example, if copying 100MB, this will save approximately 25,599 feof() calls (255 feof() calls for every MB) - also feofs() may do an actual syscall, and syscalls are relatively expensive/time-consuming.
2023-05-15 09:53:25 +05:30
Bryan
dabc4ea36e Fix highlightjs_style in config.php being ignored ()
highlightjs_style variable is being used before config.php gets parsed, so preview style is always vs. This PR fixes that by moving config.php parsing to be before external resource calls.
2023-05-11 09:55:15 +05:30
ner0
7ec19c1659 Resize preview image and implement zoom in/out ()
* Resize preview image and implement zoom in/out

* Remove redundant class name
2023-05-03 14:11:59 +05:30
DannyDaemonic
8486c7a240 Add configurable path display modes for better privacy and clarity () 2023-04-26 20:46:52 +05:30
xololunatic
8194249b66 login (Redirecting to Main domain of website instead of tfm.php) fix ()
When logged in it takes to the website's main URL. For example, if I have tfm in www.example.com/tfm/index.php (index.php is tfm) then after logging in it redirects to www.example.com and then have to press back on the browser then it takes to www.example.com/tfm/index.php
2023-04-24 07:00:47 +05:30
Caleb Mazalevskis
da77df785a Fix typo. () 2023-04-23 19:59:23 +05:30
Micha Ober
00541fc469 Fix upload of existing files () 2023-04-21 19:21:31 +05:30
Joy Biswas
7ca87c9163 added bengali translation () 2023-04-21 10:06:09 +05:30
divinity76
f6a93653be use stream_copy_to_stream ()
* use stream_copy_to_stream

it's simpler, and should be faster.
For example, stream_copy_to_stream can use sendfile ( https://man7.org/linux/man-pages/man2/sendfile.2.html ) on operating systems supporting it, which is faster and use less RAM than fread()+fwrite() (because it avoids copying data to/from userland, doing the copy entirely in-kernel~)

* fix loop early return, and workaround bug

* use feof

ref https://github.com/prasathmani/tinyfilemanager/issues/1016#issuecomment-1502081506
2023-04-21 10:05:45 +05:30
Micha Ober
85f35bc28f Check if posix_getpwuid/posix_getgrgid calls were successful () 2023-04-21 10:03:20 +05:30
divinity76
3a90a5916a tell git to always commit .php in unix-newlines ()
so hopefully we don't get a repeat of https://github.com/prasathmani/tinyfilemanager/pull/994#issuecomment-1502035505
2023-04-11 07:51:47 +05:30
ner0
6a6eb8abec Prevent logout issue after page was cached ()
Logout may not work otherwise, browser reloads cached page from disk instead of sending GET request ?logout=1 to server.
2023-03-31 04:16:23 +05:30
Prasath Mani
bf024c7c84 Update tinyfilemanager.php 2023-03-17 10:22:19 +05:30
Sergiu Bivol
d705da604c Update Romanian translations () 2023-02-26 21:18:19 +05:30
ssams
94f1c92d80 publish additional docker tags () 2023-02-22 13:06:26 +05:30
Prasath Mani
bbb2114918 Update README.md 2023-02-22 07:20:52 +05:30
Prasath Mani
e071b2372c Add External CDN resources configurable 2023-02-22 07:16:25 +05:30
fwiesweg
ba1b499d2b Allow configuration for strict CSPs and GDPR () 2023-02-22 06:25:35 +05:30
Suyadi
6775bcb176 AceEditor: hide vertical ruler () 2023-02-22 06:24:00 +05:30
Alessandro Marinuzzi
4b2aef8737 Added extensions and removed the duplicated entries ()
added new extensions used in different linux/windows environments and removed duplicate entries
2023-02-16 20:54:55 +05:30
Michael Gebetsroither
1eed63cf1b make upload chunk size configureable ()
nginx supports only 1MB per default
2023-02-16 16:18:40 +05:30
Oreloth
200d9d6d49 Fix french translation ()
Better and native french translation with official terms such as "haché" for hashing, which is the officiel term from PHP.
2023-02-05 10:35:07 +05:30
minghongg
cddd7eaab0 Deploy path traversal fix ()
Co-authored-by: root <root@chevaliers.lan>
2023-01-25 11:46:20 +05:30
Dmitry Efremov
dd1ba6795c Fixes ajax ability to handle requests when auth disabled () 2023-01-25 08:23:45 +05:30
Dmitry Efremov
9c4d30d7b5 Fixes couple issues with confirmDailog ()
* Fixes naming for confirmDailog id, otherwise dialog won't work

* Removes destroying form as browser complains that it can't process request from disconnected form
2023-01-25 08:22:27 +05:30
Dmitry Efremov
12baf03ef5 Removes sed from Dockerfile ()
They were needed before because they changed example config.php so make it workable.
Now we don't have it and running sed against main file just removes a lot of code
and forces data path for directory
2023-01-24 08:04:37 +05:30
Prasath Mani
dc529dd590 Fix save settings not working 2023-01-22 02:06:14 +05:30
fbotp
69ccd952fc Bug fix: Delete confirm dialog will work wrong aflter cancel. ()
* Bug fix: Only delete first file/directory when clicking the delete button multiple times and canceling.

* Add variable name for delete dialog
2023-01-19 21:41:48 +05:30
Catalin
69495db9b4 Subfolder links fix ()
Download and Direct link problems when using with a subfolder, possible simple solution.
2023-01-19 21:41:00 +05:30
Prasath Mani
313acf1b78 Update README.md 2023-01-13 11:09:18 +05:30
Prasath Mani
ac672b832c update screenshot 2022-12-03 12:07:18 +05:30
Prasath Mani
789b98f136 Download and Direct link problems when using with a subfolder. 2022-12-03 06:17:55 +00:00
Prasath Mani
97fd394a0f Update README.md 2022-12-02 08:29:37 +05:30
Prasath Mani
8f2f65b9fc Bug Fix , , 2022-12-02 02:43:24 +00:00
武志伟
31b988db79 Translation supplement ()
* update zh-cn lang

* Translation supplement

* update zh-cn lang
2022-11-30 16:40:57 +05:30
武志伟
d09cc2f445 Complete all Chinese translations () 2022-11-30 11:01:57 +05:30
Nguyễn Trần Chung
5a00707890 Update tinyfilemanager.php () 2022-11-27 20:59:39 +05:30
muink
cfb9a57d5e Fix the problem of login failure when $root_url is defined ()
Fix the problem that `FM_ROOT_URL` and `$_SERVER['REQUEST_URI']` are repeated, causing login redirection to fail when `$root_url` is defined
2022-11-26 18:52:34 +05:30
Prasath Mani
652c05914f Update FUNDING.yml 2022-11-25 16:38:42 +05:30
Prasath Mani
e30ec1dfd2 update download buffer and fix 2022-11-25 07:00:19 +00:00
Prasath Mani
610cea8ecd Fix - , , , , 2022-11-25 03:09:46 +00:00
Michele Locati
d4019e6e10 Update Italian translations () 2022-11-23 22:10:29 +05:30
Michele Locati
f20d3e9e06 Fix phpdoc types () 2022-11-23 22:07:04 +05:30
Julien
c4ab436f6d Complete French translation () 2022-11-22 06:27:33 +05:30
Prasath Mani
e5c78e8ab9 cosmetic changes and dark theme color update 2022-11-20 19:01:08 +05:30
Prasath Mani
f8cedbcf59 Fix Security related issues 2022-11-20 16:59:29 +05:30
Prasath Mani
df80b73436 Refactor Code and Update Doc 2022-11-20 15:04:25 +05:30
Prasath Mani
8de16a4c8a Major update on security, improved UI and bug fix. 2022-11-19 19:55:39 +00:00
Prasath Mani
4d8d4a3aba Update tinyfilemanager.php 2022-11-07 22:48:15 +05:30
Prasath Mani
fce0f5bacb Fix warning message 2022-11-07 22:42:07 +05:30
llcool
59c6b9b26a Downloading file - PHP warning loop "Permission denied" ()
* Bugfix: Stop looping error when downloading a file with no access.

* Delete .history directory

ignore .history
2022-11-07 22:24:56 +05:30
Rizky
be49a13b8e Fixes advanced search not working. ()
Fix 
2022-11-07 22:23:01 +05:30
ririko5834
2c0e6d216e Update tinyfilemanager.php () 2022-10-31 21:19:21 +05:30
Prasath Mani
805308a013 remove latest version checker 2022-09-01 16:25:29 +05:30
Dmitry Efremov
2a2d81ce78 Removes php ext installs as their are already installed in base () 2022-08-31 11:23:19 +05:30
Dmitry Efremov
2eb00ab3de Adds json mime type as text type to allow edit json files () 2022-08-25 09:50:39 +05:30
Agent Smith
74727fe48a Add webm to videos () 2022-08-06 11:17:47 +05:30
Andres Aya
6190ae69e9 word change mistranslated in Spanish () 2022-07-14 09:01:59 +05:30
Sebjugate
3a3033bdce Added .yml, .yaml and .toml extensions. ()
These are common config file extensions.
2022-07-14 07:16:02 +05:30
zedzhen
afe1227caa Update russia translate and fix bug ()
* fix bug

if $calc_folder is enabled and there are insufficient permissions for one of the subfolders, then "PHP Fatal error: Uncaught RuntimeException: SplFileInfo::getSize()"

* lng() update

added lng() and delete unesed

* update russia translate
2022-07-14 07:14:54 +05:30
Saied
cda40e22f1 More accurate ip recognition () () 2022-07-14 07:13:49 +05:30
Michael Horstmann
b24887d4fd Removed unused function ()
To fix: Undefined constant 'FM_EXTENSION'
2022-07-07 12:01:02 +05:30
Prasath Mani
17de8af81b PHP "divide by zero" error when unzipping 0 byte (very small) .zip files 2022-06-29 02:14:35 +00:00
Apichart F
50ccd29623 Fix advanced search issue for read-only user ()
$_POST['type']=="search" not reachable if FM_READONLY is true
2022-05-27 11:06:25 +05:30
Tanner
04c1d45b5f resolve sorting issues, keep back button at top () 2022-05-05 03:51:21 +05:30
Prasath Mani
ca94f23c47 Update tinyfilemanager.php 2022-04-18 12:51:55 +05:30
mclorch
a65f8ff8b5 fix download Content-Type header () 2022-04-11 13:39:51 +05:30
sinth
13b2bd0164 Add missing lines for German translation ()
* added missing lines for German translation

* small correction
2022-04-07 22:16:43 +05:30
luidoc
ccf18947c8 Add Galician language ()
Add Galician language - gl
2022-03-20 12:48:48 +05:30
Rick van Leeuwen
d4d620fe66 Fix Dutch translation ()
* Fix Dutch translation

* fix dutch translation
2022-03-20 12:47:03 +05:30
The-Exterminator
4d7078829d Update translation.json () 2022-03-07 08:47:58 +05:30
AnnAngela
7bd9483728 Fix incorrect path of the version svg () 2022-03-06 19:38:08 +05:30
Agent Smith
179e13c4a6 Add danish language () 2022-02-21 10:47:37 +05:30
Nguyễn Trần Chung
4ff141bb15 Update translation.json () 2022-02-14 08:24:38 +05:30
Michael Milette
9b2bb18acb Optimized and refactored fm_get_directorysize() function, and added validation. () 2022-02-12 23:15:38 +05:30
Prasath Mani
7103691048 Fix - typo error 2022-02-12 13:54:22 +05:30
Prasath Mani
85821736c0 Update version 2022-02-12 13:48:19 +05:30
jicho
e474ade92b Client IP behind proxy ()
Function added for IP filtering when the filemanager is hosted behind a web proxy.

I've added a function for this to the file, not sure how else to implement it since everything is one file.
2022-02-12 13:28:26 +05:30
Daniel Kranich
ad30a3a1f3 Add Global Readonly ()
Added a global readonly variable that will force readonly mode both when
not using the auth system and for all users if the auth system is being
used.

Co-authored-by: Prasath Mani <prasathmani@users.noreply.github.com>
2022-02-12 13:22:56 +05:30
Roni
bb1d1d3801 added name of the file being edited ()
added name of the file being edited and a back button in a better location
2022-02-12 13:17:35 +05:30
Daniele Paganelli
c3a2f1d604 Chunked file upload ()
Removes any PHP or server-side file-upload limits by using file chunks
2022-02-12 13:16:07 +05:30
joaogmauricio
154947ef83 apply fix to path traversal vulnerability ()
Co-authored-by: João Maurício <joao.goncalves.mauricio@pwc.com>
2022-02-12 10:34:05 +05:30
Enyedi Szilárd
bc9096fad3 Update translation.json ()
Improved Romanian translation.
2022-01-28 07:44:37 +05:30
Enyedi Szilárd
3d28d8cb8e Update tinyfilemanager.php ()
Changed "Folder is empty" message to be language-specific.
2022-01-28 07:43:56 +05:30
Roman Steiner
9b85951cfc fix "400 bad request" when saving files () 2022-01-21 08:06:27 +05:30
CornelCotoara
d125c6736b Add Romanian language ()
* Add Romanian language

Add Romanian language w/o diacrytics!
Traducere & adaptare in limba romana fara diacritice!

* Fix typo's
2021-12-21 17:45:58 +05:30
Karel De Smet
f8d4d9cb17 added Dutch translation ()
* added Dutch translation

* fix typo
2021-12-21 11:01:36 +05:30
Suyadi
08cb4b0fce Fix a non well formatted numeric value encountered & Notice: Undefined offset in fm_get_filesize() ()
For non `well formatted numeric value encountered`, see 
For `Notice: Undefined offset 9` (current implementation result) see: https://3v4l.org/1qHit#v5.0.0
For new impementation result, see: https://3v4l.org/d0UBh#v5.0.0
2021-12-13 10:15:09 +05:30
Boris Delev
95d41a9518 Just a little fix with missing " in button HTML ()
Its a little html fix- its about 1787 line- the class value it not closed.
```
<button type="button" class="btn btn-sm btn-outline-primary name="Save"
```
changed to:

```
<button type="button" class="btn btn-sm btn-outline-primary" name="Save"
```
2021-12-03 07:16:32 +05:30
Zain Arbani
6bdc5ccfb3 Update Indonesian translations () 2021-11-22 09:03:41 +05:30
febinrev
2046bbde72 Patched the RCE ()
I have patched the file upload directory traversal to Authenticated Remote Code Execution Vulnerability.
2021-11-12 08:31:02 +05:30
long
c1718ff4c5 Vietnamese translation update ()
I have updated the Vietnamese translation under the code "vi" to be more complete.
2021-09-18 09:59:08 +05:30
Jeffrey-Wang
1db6713019 fix: document docker image name. () 2021-09-05 08:47:26 +05:30
Prasath Mani
c89e1d18de Update README.md 2021-09-03 11:30:25 +05:30
Prasath Mani
d401028eb6 Update README.md 2021-09-03 11:18:41 +05:30
Prasath Mani
f6ac9cc63f Update README.md 2021-09-03 11:14:46 +05:30
Jeffrey-Wang
a22edfca00 feat: add Dockerfile and auto publish. () 2021-09-03 11:13:23 +05:30
Alex
55706b2f8b Adding a Slovenian translation ()
I added a Slovenian translation under the code "sl" and the name "Slovensko".
2021-08-09 20:06:08 +05:30
Agent Smith
09e2b9a107 Fix saving of empty files ()
When you have a file without content, for example when you cleared you were unable to save it because of an incorrect if-statement. This is the fix for that problem.
2021-08-06 07:43:22 +05:30
Agent Smith
9ee41b14d6 Added some missing translations () 2021-08-02 10:39:37 +05:30
schmigz
8158333d93 Update tinyfilemanager.php ()
fm_get_file_mimes() was causing errors for unknown extensions as it was causing an error as array element was not defined and return value was never checked.  According to https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types and several other resources,  application/octet-stream is the default value for all other cases. An unknown file type should use this type.   I put a check in there to use that by default so a valid value is always returned.

It might be useful to replace this function with the  built-in PHP function mime_content_type() but that adds some additional dependencies as it does not always work out of the box with PHP.
2021-06-05 11:57:53 +05:30
sbivol
e843adcf0b Fix function name and add extensions for icons ()
* Set icons for more file extensions

* Fix function name
2021-06-05 08:33:57 +05:30
safraja
f182e378e3 PHP8 fix and few other changes () 2021-06-01 10:11:15 +05:30
Prasath Mani
27d7126767 Typo error fix 2021-05-17 15:05:46 +05:30
Prasath Mani
a62bb38773 PR update and sync 2021-05-17 12:22:16 +05:30
Adrien Bonnel
603f048722 Fix PHP 5.X ()
Arrays cannot be used in "define" functions with PHP versions lower than 7.X
Solution given via my professional account (ArlorNaturalScientific)
2021-05-17 11:59:34 +05:30
Shoyu Vanilla
442843239c 🌐 Update Korean translation () 2021-05-17 11:58:53 +05:30
Julien
b63615a4b8 French translation: sort and complete ()
* French - Apply alpha order

* Add missing translations

* Fix missing help
2021-05-17 11:58:19 +05:30
Simon Nándor
9d78ee8b01 I added the Hungarian language (translation.json) ()
I added support for the Hungarian language.
2021-05-17 11:57:50 +05:30
Roni
9b5d2718ab New translations ()
New translations

Novas Traduções
2021-05-17 11:55:47 +05:30
Roni
a38d8e3934 Portuguese, with new translations ()
Portuguese, with new translations

Português, Com novas traduções
2021-05-17 11:55:02 +05:30
Roni
db3f4c01ea Added in preferences light or dark theme ()
Added in the preferences option to change the light or dark theme,

Now to change the theme will be in the preferences / settings area, along with other settings, and may even have other themes in the future.
2021-05-17 09:24:45 +05:30
William Gilmour
c5d481c5cc Fixed Rename with folder quotes ()
Fixed the Rename functionality to work with folders that contain single quotes in them by calling `addslashes` on the path.
2021-04-30 05:57:10 +05:30
Prasath Mani
a04567d3ba Fix security issues and 2021-04-22 13:41:35 +05:30
huntr.dev | the place to protect open source
03c3f6d7f9 Fixed 3 sinks which caused XSS in filename ()
Co-authored-by: Vaibhav Shinde <vaibhavkshinde20@gmail.com>
2021-03-22 18:26:55 +05:30
Prasath Mani
95147f5828 remove decoded php codes and code cleanup 2021-02-24 13:33:57 +05:30
ccdd13
dd9d7c09a2 Feat/mixed changes ()
* remove trailing whitespace

Signed-off-by: ccdd13 <78702084+ccdd13@users.noreply.github.com>

* safe include config.php with __DIR__

* replace doc url for $datetime_format from function.date.php to datetime.format.php

Signed-off-by: ccdd13 <ccdd13@users.noreply.github.com>

* put $auth_users & $readonly_users together

Signed-off-by: ccdd13 <ccdd13@users.noreply.github.com>

* update $datetime_format

Signed-off-by: ccdd13 <ccdd13@users.noreply.github.com>

Co-authored-by: ammm ccdd12 <mamok43076@dashseat.com>
Co-authored-by: ccdd13 <ccdd13@users.noreply.github.com>
2021-02-24 12:37:38 +05:30
Prasath Mani
a19ff20768 Update vendor CDN versions 2021-02-23 11:47:57 +05:30
HOOP Mediaclinic
b03232775e Added Finnish translation ()
Co-authored-by: Jani Kiviranta <jani.kiviranta@hoop.fi>
2021-01-19 06:37:00 +05:30
Peter Frost
ef09231454 Fix file size display in file viewer () 2020-12-23 20:46:00 +05:30
Adrian B. Hoffsten
6b06fb2532 Norwegian translation[NO] () 2020-12-22 10:52:43 +05:30
Aditya Phra
2512330dee Update Indonesia translation () 2020-12-06 10:11:21 +05:30
KaiserBarbarossa
642cab42cc Update German translation () 2020-12-06 10:10:36 +05:30
tommy1616
c03e601bc3 Update translation.json () 2020-11-11 09:48:26 +05:30
Michele La Forgia
0d0e728c79 Update italian translation () 2020-10-23 05:01:18 +05:30
Алмас
530055df08 Add: Mongolian (cyrillic) language added. ()
Co-authored-by: Davaadorj.U <davaadorju@gmail.com>
2020-09-10 19:57:23 +05:30
Dvash
5d841d6624 Update russian translation ()
* fix(ru): fix russian translation

* style(ru): sort russian translation alphabetically

* feat(ru): update russian translation
2020-08-26 03:57:06 +05:30
Dvash
211568ff4c fix(actions): creating a backup in FM_ROOT_PATH () 2020-08-26 03:55:13 +05:30
Anton Dalmau Mines
44bedb9be0 Update Catalan translation ()
* Update translation.json

Update Catalan translation

* Update translation.json

* Update translation.json

* Update translation.json
2020-08-12 07:20:14 +05:30
DvashVistrame
c8fff90634 fix: prevent double write to file () 2020-08-04 14:00:05 +05:30
safraja
a6a28a6356 Fix sorting by date and size ()
Based on suggestions in https://github.com/prasathmani/tinyfilemanager/issues/197
but uses data-sort attribute (from DataTable wiki https://datatables.net/examples/advanced_init/html5-data-attributes.html) instead of invisible characters and also distinguishes files and folders, so they stay grouped even after sort.
(I am sorry for my bad English.)
2020-07-20 05:39:47 +05:30
Elegary
14ed4fdb92 Update french translation ()
I corrected the french translation
2020-07-20 05:38:12 +05:30
zachlankton
65f7dc448d Fixes , Fixes ()
Fixes setting drop down boxes to the current ace editor mode and theme on page load.
2020-07-20 05:37:41 +05:30
zachlankton
fb31a14873 Added Error Message When File Fails to Write ()
Added error checking and message for when file fails to write on the server side.  Before this change if a write failed on the server side it would still present the user with a misleading "Saved Successfully" Message.
2020-07-20 05:36:47 +05:30
Michael Milette
c741ae2212 Notice: A non well formed numeric value encountered ()
Eliminates the following PHP warnings when error reporting is turned on:

Notice: A non well formed numeric value encountered in tinyfilemanager.php on line 2443
Notice: A non well formed numeric value encountered in tinyfilemanager.php on line 2444

This happens because PHP floor and round are expecting a (float), not an (int).
2020-06-27 16:02:09 +05:30
JHuyVu
e118d650a3 Correct wrong word in Vietnamese language. ()
Co-authored-by: JHuyVu <jhuyvu@gmail.com>
2020-06-21 08:25:28 +05:30
safraja
c260601ef6 Czech translation update ()
Added missing expressions and corrected a few inaccuracies.
2020-06-06 06:09:26 +05:30
Mirco Babini
462566a31b Remove duplicate code block () 2020-06-02 19:27:37 +05:30
Prasath Mani
0a92002919 if exist include config.php 2020-05-24 17:07:17 +05:30
Prasath Mani
1dbe7c5339 dark mode
Request: Dark mode option in the admin section. 
2020-05-24 14:00:27 +05:30
Nicolas Peugnet
8fb1816877 Create a new session if permission denied on current one ()
In a multi-user configuration, the current session file can be unreadable
by the current user. This tries to create a new session in this case.
2020-05-24 08:51:44 +05:30
TheFax
5903849388 Added Optional configuration file ()
* Added optional configuration file loading

* First commit of optional configuration file

This file is OPTIONAL.
If this file is not present in your webserver, tinyfilemanager will works with its internal configuration.

* removed define

define is not a configuration
2020-05-24 08:50:49 +05:30
Nguyen The Anh
0826838917 Add support user customized config file (if exists) ()
* feat(/): add support user customized config file (if exists)

* Show current process ID in Status bar + Make fm_get_filesize function much more concise ()

* Update Simplified Chinese ()

* Feature Font Size Choose Options / Bug Fix Settings not visible in auth=false ()

* Bug fix and PR , , 

Co-authored-by: 刘明野 <898310895@qq.com>
Co-authored-by: B Bharath Kumar Reddy <39063133+bbharathkumarreddy@users.noreply.github.com>
Co-authored-by: Prasath Mani <prasath.mani@publicissapient.com>
Co-authored-by: Prasath Mani <prasathmani@users.noreply.github.com>
2020-05-24 08:50:25 +05:30
Prasath Mani
a0c595a8e1 Security fix
Download file causes timeout 
Download Restart @ 88% 
download large file issues 
File upload issue 
FIle Upload URL error 
Bug in .tar archive extraction when destination(s) file(s) already exist (HTTP error 500) 
Backup File return false 
2020-05-18 13:37:02 +05:30
rinoshiyo
1482e41f74 fix settings are not saved. () 2020-05-18 09:45:54 +05:30
rinoshiyo
dcdf736e48 Add Japanese Translation () 2020-05-16 17:10:03 +05:30
Prasath Mani
43eb8016d3 Update SECURITY.md 2020-05-14 08:57:29 +05:30
Prasath Mani
e2ac1163c2 Update SECURITY.md 2020-05-14 08:57:12 +05:30
Shoyu Vanilla
2f357ee3d5 Fix translation error () 2020-04-29 12:35:19 +05:30
Shoyu Vanilla
5933952fa4 Add Korean translations () 2020-04-28 06:00:07 +05:30
Vincent Vandalon
1ca011ca67 Added duplicate functionality ()
* Added duplicate functionality

* Updated functionality to also duplicate folders

* Merged copy & duplicate buttons
2020-03-23 19:31:44 +05:30
Roni
e259ffda4d Update tinyfilemanager.php () 2020-03-20 07:55:51 +05:30
Maxim Khokhryakov
e8fc6d546a fix "Archive not created" error ()
fix "Archive not created" error while trying to create Tar archive
2020-03-12 12:48:19 +05:30
Akira Ely
1501835f61 Update tinyfilemanager.php ()
Login box stays middle on small screens
2020-02-24 11:39:53 +05:30
Michele Locati
c991555de5 Avoid accessing undefined $_POST['file'] index ()
I don't know when this occurs, but I have this entry in my web server log:
 PHP Notice:  Undefined index: file in tinyfilemanager.php on line 1165
2020-02-18 22:46:21 +05:30
Prasath Mani
9e3877270b Advanced Search
Mouse hover image preview
Upload error handling
Thumbnail view for folders containing images 
How to search inside folders. 
Search bar with regex matching 
Subfolder Search Feature 
2020-01-14 17:57:32 +05:30
Nguyen The Anh
0319b7b102 feat(/): add live image preview when user hovers the image file name (only when the number of files in current folder less than 500 files) ()
Co-authored-by: Prasath Mani <prasathmani@users.noreply.github.com>
2020-01-14 17:44:52 +05:30
Jakub ADAMEC
4905e5c61c Adds Slovak translation () 2020-01-09 13:12:01 +05:30
Pascal
8b21009a47 Fix tiny typo () 2020-01-06 07:46:43 +05:30
Prasath Mani
b8b859a1fd Update README.md 2020-01-01 20:12:17 +05:30
Prasath Mani
339c26168c Update FUNDING.yml 2020-01-01 16:28:09 +05:30
Prasath Mani
1c86942097 Redesign login screen, Removed remember me checkbox, Security vulnerability fix , User role have Preview and Search option , 2019-12-29 10:30:23 +05:30
Prasath Mani
9a499734c5 Merge pull request from GHSA-w72h-v37j-rrwr
* Fix the RCE vuln via Upload from URL

This commit attemps to fix the Remote Code Execution
(authenticated) via Upload from URL. Some notes about
the proposed solution:

* A new function (fm_is_file_allowed) has been created to
validate if the filename is allowed. This function gets the
the filename as parameter and returns true if it validates
as allowed. Otherwise returns false (the default).

* It's better to have such validatation(s) in one place
instead of spread all over the code. There are other places in
the application where the filename is validated and they should
all be refactored to call this function. Then we can focus
all needed validations in one place only!

NOTE: This refactoring was not done - the only goal was to fix
this security vulnerability only.

* The fm_is_file_allowed() function validates the filename
based on its extension only. No other validatation(s) have been
implemented in this commit.

* File extensions are assumed to be case-insensitive.
For example, php == PHP == Php == PhP, etc. This is consitent
with some web servers. Without this, the user will have to populate
the $allowed_extensions with all possible allowed combinations.

* Although, there is one drawback to the current solution, which
is that all files must have an extension to be uploaded. This is not
consitent with modern filesystems. Maybe a better solution would be
to automatically append an extension to the filename if no
extension has been found (e.g., .html or .txt which are generally
considered to be harmless). This must be decided by the
application's maintainers.

* Fix the RCE vulns via new/rename file

Sanitize the arguments to stat using escapeshellarg()

Co-authored-by: Jorge Morgado <jorge@morgado.ch>
2019-12-28 19:23:47 +05:30
Prasath Mani
1eac82f55a Create SECURITY.md 2019-12-27 21:41:49 +05:30
Ufuk Güler
c2938925d8 Turkish language support () 2019-12-27 11:42:02 +05:30
Whale
b84fdbf008 Compatible with macOS () 2019-12-27 11:39:52 +05:30
RMKATBST
7c376df205 Fix for search function not working if "$hide_Cols=true" on non-Windows systems ()
Setting $hide_Cols=true while having FM_IS_WIN=false will lead to a "Type error" when setting up the dataTable. The desired page is generated, but the Search function does not work, as the dataTable is broken.

With this fix the dataTable is written accordingly, with either FM_IS_WIN or $hide_Cols set or unset.
2019-12-20 14:50:57 +05:30
Prasath Mani
7a7a44de9b Open document files? 2019-12-06 16:26:36 +05:30
Prasath Mani
3e19ba0243 No message / status / information when saving edited file and when saving an edit show a warning ( alert ) 2019-11-29 12:26:25 +05:30
Prasath Mani
bf8b715c13 Notice Error. 2019-11-15 12:21:31 +05:30
Prasath Mani
4a8bd014af Bug fix and PR , , 2019-11-05 16:50:15 +05:30
B Bharath Kumar Reddy
a5b2b459cd Feature Font Size Choose Options / Bug Fix Settings not visible in auth=false () 2019-11-05 16:32:25 +05:30
刘明野
4f2eecc108 Update Simplified Chinese () 2019-11-05 16:31:29 +05:30
Nguyen The Anh
13e130c29f Show current process ID in Status bar + Make fm_get_filesize function much more concise () 2019-11-05 16:27:57 +05:30
Lukas Lenhardt
57ac3391e5 Fixed help links () 2019-10-04 12:44:05 +05:30
Prasath Mani
29ca36a18b Missing select all feature ? 2019-10-01 16:20:30 +05:30
Prasath Mani
c76a3a2fc5 Updated new version vendor cdn links and Fixed - Bug when filename contains a space at the beginning 2019-09-24 18:17:09 +05:30
Prasath Mani
0cb8ad86a5 Update README.md 2019-09-23 10:23:10 +05:30
Max Base
567fcb6a25 Adding the Persian language by Max Base ()
Add Persian, Farsi Language. (فارسی)
Max Base, Asrez Team
2019-09-03 11:25:21 +05:30
Prasath Mani
4353cc7378 Remove duplicate and format file 2019-08-24 14:55:20 +05:30
Roni
a0a7ceeea0 Add +PT () 2019-08-24 14:49:28 +05:30
Roni
73abdcdaad echo "Folder" ()
{ echo "Folder"; } > { echo lng('Folder'); }
2019-08-23 08:12:57 +05:30
Manuel Martins
059c70e05e Update tinyfilemanager.php ()
FastCGI sent in stderr: "PHP message: PHP Warning:  Use of undefined constant online_viewer - assumed 'online_viewer' (this will throw an Error in a future version of PHP) in /www/admin/index.php on line 1383
2019-08-22 11:26:32 +05:30
Prasath Mani
8b6a984864 Merge branch 'master' of https://github.com/prasathmani/tinyfilemanager 2019-07-31 09:39:31 +05:30
Prasath Mani
c18051dd5b File upload error: uppercase and strtolower() 2019-07-31 09:39:02 +05:30
Prasath Mani
d593cefde7 Create FUNDING.yml 2019-07-27 09:42:10 +05:30
Prasath Mani
b6f552a79c Cannot edit aspx File 2019-07-26 17:07:57 +05:30
Prasath Mani
3114fa92e3 Some language strings are missing. And other...
view file is insecure 
Get files size (recursive) 
There is no possibility for translation for some hints (title =) 
View dirSize instead of word "Folder" 
Document type detection 
Stored Cross-site Scripting (XSS) Vulnerability detected in File Names 
strings in code 
Remove tracking 
2019-07-23 12:56:01 +05:30
typewriter1
21094a66ee Fix spelling of "copyied" after copying file ()
Should be "copied".
2019-07-23 09:42:22 +05:30
Vebu
5386b89aaf Update tinyfilemanager.php () 2019-07-23 09:42:00 +05:30
Vebu
b579489148 Update translation.json ()
Please add Czech translation
2019-07-23 09:41:13 +05:30
TheFax
9131db13a7 Updated italian translation ()
Added also "Move" that was missing in the file.
2019-07-23 09:40:47 +05:30
elhoussam
8d40ebcdd7 Improve Multilanguage Support ()
* Add Arabic Translation

* add some keywords and handling Fixed keywords [untranslated]

* add new translation words

* improve existing translation words
2019-07-23 09:40:26 +05:30
Yehuda Eisenberg
ea29092aea Add Save by ajax request ()
Add Save by ajax request, Instead of saving it to a post request and reloading the page each time.
2019-07-23 09:39:00 +05:30
Prasath Mani
1696ebf0fc IP whitelisting and/or blacklisting
Add Microsoft Office online view option 
2019-05-19 12:31:49 +05:30
Yehuda Eisenberg
ffc34859cc Add Hebrew Language ()
Add Hebrew Language
2019-05-19 11:13:58 +05:30
elhoussam
9d472720a9 Add Arabic Translation () 2019-05-19 11:10:56 +05:30
Kevin @ Navigram
498804f8a5 Basic IP white- and blacklisting () 2019-05-19 11:10:20 +05:30
Prasath Mani
4b4b48242e PHP Warning: count() 2019-05-13 15:59:02 +05:30
Prasath Mani
f67a343f48 When uploading it doesnt override, insteads it crates a new filename
Add Custom Title and Favicon options 
2019-05-13 15:48:29 +05:30
Daniel Kranich
f956ae3abc Add Custom Title and Favicon options ()
Added variables so the admin can set a custom title and favicon.
2019-05-07 15:13:37 +05:30
Prasath Mani
7a9730dfe1 Added .MKV format support and minor ui changes, . 2019-05-03 16:47:35 +05:30
Vu Thanh Tai
62e58a6597 add vietnamese language () 2019-05-03 12:40:36 +05:30
Anton Dalmau Mines
0c5ee15ea3 Update translation.json () 2019-05-03 12:38:45 +05:30
Prasath Mani
ae971c8b99 Fix for path traversal vulnerability, reported by - @hhc0null/Hiroki MATSUKUMA 2019-04-03 17:20:23 +05:30
Kamil Zarzycki
b546ac168e Add Polish language () 2019-04-03 17:12:55 +05:30
Prasath Mani
285b6b4882 Provide "previous" and "next" to navigate between previews
Cross site scripting (XSS) 
RegEx error | function template 
2019-03-28 17:06:42 +05:30
Prasath Mani
a8c2fc66d6 prevent overwriting if uploaded file already exists ,
IE11 aborts upload after 30s 
2019-03-13 12:26:25 +05:30
Prasath Mani
622264042a Negative filesize on ARMv7 for files over 2GB
Max file size? 
2019-03-03 15:30:47 +05:30
Prasath Mani
bb0e61787c Merge branch 'master' of https://github.com/prasathmani/tinyfilemanager 2019-02-28 15:35:40 +05:30
Prasath Mani
da31717cff Negative filesize on ARMv7 for files over 2GB
Simplified Chinese translation 
Max file size? 
2019-02-28 15:35:28 +05:30
Romaque Máximo
1b9e0f5e76 Português language added () 2019-02-18 14:59:29 +05:30
Mark Shi
e0cc54b286 Add Simplified Chinese support ()
* Add Simplified Chinese support

And distinguish it from Traditional Chinese.

* Add two fields for translation.

* Add two fields for translation.

* Translated.
2019-01-28 22:24:05 +05:30
Prasath Mani
7a0de24a61 Fix : User's sub folder problem 2019-01-20 17:02:01 +05:30
Prasath Mani
1a24dc0729 Merge branch 'master' of https://github.com/prasathmani/tinyfilemanager 2019-01-18 17:12:35 +05:30
Prasath Mani
2a390b2247 down file error when larger than php memory limited and Not looking good on phones 2019-01-18 17:12:20 +05:30
Prasath Mani
292c00d62f Merge pull request from karavidas/master
Greek laguage added
2019-01-17 18:42:16 +05:30
Lampros Karavidas
30aa3e6f96 Update translation.json 2019-01-17 15:11:03 +02:00
Lampros Karavidas
200f56e8d4 Greek laguage added 2019-01-17 12:35:43 +02:00
Prasath Mani
09f688c625 Saving settings doesn't save 2019-01-17 12:34:54 +05:30
Prasath Mani
f26977adb3 Default Languages loading issue fix 2019-01-10 16:23:02 +05:30
Prasath Mani
704bec368f Merge pull request from adit/patch-1
added Indonesia Language
2019-01-06 20:17:09 +05:30
Aditya Pratama
6970bdb7dd add indonesia lang. 2019-01-06 21:37:40 +07:00
Prasath Mani
8802b048b3 Added Version Check
Added new Translation JSON file
New languages added - Spanish, German, Thailand and Chinese
Removed languages from tinyfilemanager.php file
Updated IDE languages and themes
2019-01-06 16:59:02 +05:30
Prasath Mani
e38f312ce5 Merge pull request from jopiortiz/spanish-lang
Spanish Language
2019-01-06 15:44:22 +05:30
Prasath Mani
125e35ed83 Merge branch 'master' into spanish-lang 2019-01-06 15:44:09 +05:30
Prasath Mani
bf64ae9593 Merge pull request from mrwan200/master
Add Thai Language
2019-01-06 15:41:59 +05:30
Prasath Mani
98902b6b80 Merge branch 'master' into master 2019-01-06 15:41:38 +05:30
Prasath Mani
380a6f2877 Merge pull request from emilengler/master
Add German language
2019-01-06 15:39:46 +05:30
jopiortiz
373d04b2ef Crear , looks better 2019-01-04 01:03:30 -03:00
Joaquin
c7708f371f Spanish Language
- Minor fix on the Search input placeholder
2019-01-04 00:32:28 -03:00
Prasath Mani
ba9826fe9c Added check latest version 2018-12-31 14:36:03 +05:30
Prasath Mani
221bc96882 Added Partition size and Memory used 2018-12-25 21:48:41 +05:30
Prasath Mani
acf1958350 Merge pull request from alecos71/patch-12
Added Memory Used
2018-12-25 20:15:37 +05:30
Alessandro Marinuzzi
90c079882d improved memory usage + added translations
improved memory usage + added translations
2018-12-25 15:11:20 +01:00
Alessandro Marinuzzi
c22e694e7d improved memory usage
improved memory usage
2018-12-25 14:32:03 +01:00
Alessandro Marinuzzi
8f9da1cb5e Added Memory Used
Added Memory Used
2018-12-25 14:12:58 +01:00
Prasath Mani
c413573952 Improve embed and UI issues 2018-12-22 14:51:06 +05:30
Prasath Mani
89fb960679 Modified UI - Pwd change 2018-12-14 01:20:25 +05:30
Prasath Mani
fb7c4fcebd Modified UI - file upload from url and Code refactor 2018-12-14 00:02:25 +05:30
Prasath Mani
1760168933 Modified Readme 2018-12-13 00:40:23 +05:30
Prasath Mani
9fdfdbfe94 Added - file upload from url
Fix: issues to rename files with single quote 
Fix: Dropzone default timeout 30 seconds , , 
Fix:  XSS cross-site attack screen (Chrome) 
2018-12-13 00:38:16 +05:30
Emil Engler
876282d006 Add German language 2018-12-10 18:22:24 +01:00
Mr. Wan
f7240516ca Update tinyfilemanager.php 2018-12-09 09:39:33 +07:00
Prasath Mani
1a9bf95920 Fix: Not looking good on phones 2018-12-06 12:51:29 +05:30
Prasath Mani
9eda119235 Added Editor Toolbar - Themes, Document Mode, Search, Fullscreen, Undo, Redo, ... 2018-12-03 23:58:25 +05:30
Prasath Mani
1ca5add891 Added Russian Language 2018-12-02 14:49:04 +05:30
Prasath Mani
4f40e85604 Fix: Not looking good on phones 2018-12-01 13:58:28 +05:30
Prasath Mani
39bec20b7e Fix: undefined constant password_verify and , 2018-12-01 08:43:24 +05:30
Prasath Mani
8113184b12 Merge pull request from alecos71/patch-9
fixed $tr['en'] with $tr['it']
2018-11-30 09:48:10 +05:30
Alessandro Marinuzzi
479a4a873d Added language entry in list
Added language entry in list
2018-11-29 19:40:24 +01:00
Alessandro Marinuzzi
7f1258c050 fixed $tr['en'] with $tr['it']
Fixed Italian language
2018-11-29 19:20:44 +01:00
Prasath Mani
b995d781fb Merge pull request from simon511000/patch-1
Update tinyfilemanager.php
2018-11-29 22:20:57 +05:30
simon511000
c1b8bfd6ad Update tinyfilemanager.php 2018-11-29 17:31:57 +01:00
Prasath Mani
81f6c81aa8 Merge pull request from alecos71/patch-8
Update tinyfilemanager with Italian Language
2018-11-29 21:37:33 +05:30
Alessandro Marinuzzi
0c0d9e24b8 Update tinyfilemanager.php
Added Italian language
2018-11-29 16:06:41 +01:00
Prasath Mani
f3e2a0bdb2 Multi-language support #2.2.0 2018-11-26 23:56:01 +05:30
Prasath Mani
1f9b2f6b71 Multi-language support #2.2.0 2018-11-26 23:47:58 +05:30
Prasath Mani
f54e269f7e Update README.md 2018-11-24 00:03:55 +05:30
Prasath Mani
ad65b778a2 Add Beerpay's badge 2018-11-23 23:52:41 +05:30
Prasath Mani
764c80d4a9 Merge branch 'master' of https://github.com/prasathmani/tinyfilemanager 2018-11-20 17:52:39 +05:30
Prasath Mani
1accf6739a Normal Text Editor Design Modified 2018-11-20 17:52:13 +05:30
Prasath Mani
b19f325e8e Merge pull request from gbrault/master
Corrected spelling thnaks 2 @gbrault
2018-11-20 17:21:17 +05:30
Gilbert Brault
66115cf3c9 Corrected spelling 2018-11-20 12:42:29 +01:00
Prasath Mani
83a5f1d7b8 Fix : Some bugs about showing up log of button from nowhere and search box bug 2018-11-20 12:34:47 +05:30
Prasath Mani
2510e595aa Logo path updated 2018-11-19 23:40:23 +05:30
Prasath Mani
df7312e3c0 Merge pull request from FH3095/master
Fix Undefined variable _SESSION notice
2018-11-16 10:28:33 +05:30
FH3095
1a28a09426 Fix Undefined variable _SESSION notice 2018-11-15 13:34:40 +01:00
Prasath Mani
0d8c314146 Subdirectory search does not work 2018-11-14 18:05:39 +05:30
Prasath Mani
5b02c47f3c - Login Page redesign
- Error report suggestion 
- Rename allowed based on FM_EXTENSION config
- Tar file support added (create, open and extract tar)
- Upload UI resdesign
- Table header UI Redesign
- Login user name and avatar added
- Broken URL highlight.js  and 
2018-11-14 17:07:16 +05:30
Prasath Mani
b0d0400267 Added error reporting zero to hide error. 2018-11-08 16:40:58 +05:30
Prasath Mani
8e6b3f288c CDN version updated and code optimized 2018-11-05 18:56:35 +05:30
Prasath Mani
604323c3f5 Updated Readme 2018-11-02 17:58:53 +05:30
Prasath Mani
07151e1643 Added Google Docs Viewer 2018-11-02 17:48:54 +05:30
Prasath Mani
9b5e70587e Added DataTable JS to sort and search data faster 2018-11-02 14:20:13 +05:30
Prasath Mani
cb04b5770a Updated Readme with Demo URL 2018-10-27 22:07:27 +05:30
Prasath Mani
9eb9280d6c - Added Password hash 2018-10-27 22:06:48 +05:30
Prasath Mani
25f5ce7d4f Update README.MD 2018-10-18 14:38:38 +05:30
Prasath Mani
1bf7621b38 Hide files and folders form listing Fix - 2018-10-18 14:33:22 +05:30
Prasath Mani
ba41b79f1a Delete _config.yml 2018-10-17 10:32:15 +05:30
Prasath Mani
a1669b8166 Set theme jekyll-theme-cayman 2018-10-17 10:17:08 +05:30
9 changed files with 5719 additions and 1322 deletions

2
.gitattributes vendored Normal file

@@ -0,0 +1,2 @@
*.php text eol=lf
*.json text eol=lf

6
.github/FUNDING.yml vendored Normal file

@@ -0,0 +1,6 @@
# These are supported funding model platforms
github: prasathmani
patreon: ccpprogrammers
open_collective: tinyfilemanager
ko_fi: tinyfilemanager
custom: ['https://paypal.me/prasathmani']

41
.github/workflows/PublishDocker.yml vendored Normal file

@@ -0,0 +1,41 @@
name: PublishDocker
on:
push:
branches:
- 'master'
tags:
- '**'
jobs:
docker:
runs-on: ubuntu-latest
steps:
- name: Docker meta
id: meta
uses: docker/metadata-action@v4
with:
images: |
${{ secrets.DOCKERHUB_USERNAME }}/tinyfilemanager
tags: |
type=ref,event=branch
type=ref,event=pr
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=semver,pattern={{major}}
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push
id: docker_build
uses: docker/build-push-action@v2
with:
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}

26
Dockerfile Normal file

@@ -0,0 +1,26 @@
# how to build?
# docker login
## .....input your docker id and password
#docker build . -t tinyfilemanager/tinyfilemanager:master
#docker push tinyfilemanager/tinyfilemanager:master
# how to use?
# docker run -d -v /absolute/path:/var/www/html/data -p 80:80 --restart=always --name tinyfilemanager tinyfilemanager/tinyfilemanager:master
FROM php:7.4-cli-alpine
# if run in China
# RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
RUN apk add --no-cache \
libzip-dev \
oniguruma-dev
RUN docker-php-ext-install \
zip
WORKDIR /var/www/html
COPY tinyfilemanager.php index.php
CMD ["sh", "-c", "php -S 0.0.0.0:80"]

155
README.md

@@ -1,60 +1,131 @@
# Tiny PHP File Manager
It is a simple, fast and small file manager with single php file. It is also a web code editor. It'll run either online or locally, on Linux, Windows or Mac based platforms. The only requirement is to have PHP 5+ available.
<hr>
<img src="screenshot.gif" alt="H3K | Tiny File Manager">
# Tiny File Manager
[![Live demo](https://img.shields.io/badge/Live-Demo-brightgreen.svg?style=flat-square)](https://tinyfilemanager.github.io/demo/)
[![Live demo](https://img.shields.io/badge/Help-Docs-lightgrey.svg?style=flat-square)](https://github.com/prasathmani/tinyfilemanager/wiki)
[![GitHub Release](https://img.shields.io/github/release/prasathmani/tinyfilemanager.svg?style=flat-square)](https://github.com/prasathmani/tinyfilemanager/releases)
[![GitHub License](https://img.shields.io/github/license/prasathmani/tinyfilemanager.svg?style=flat-square)](https://github.com/prasathmani/tinyfilemanager/blob/master/LICENSE)
[![Paypal](https://img.shields.io/badge/Donate-Paypal-lightgrey.svg?style=flat-square)](https://www.paypal.me/prasathmani)
![GitHub Sponsors](https://img.shields.io/github/sponsors/prasathmani)
> TinyFileManager is web based PHP file manager and it is a simple, fast and small size in single-file PHP file that can be dropped into any folder on your server, multi-language ready web application for storing, uploading, editing and managing files and folders online via web browser. The Application runs on PHP 5.5+, It allows the creation of multiple users and each user can have its own directory and a build-in support for managing text files with cloud9 IDE and it supports syntax highlighting for over 150+ languages and over 35+ themes.
**Caution!** _Avoid utilizing this script as a standard file manager in public spaces. It is imperative to remove this script from the server after completing any tasks._
## Demo
[Demo](https://tinyfilemanager.github.io/demo/)
## Documentation
Tinyfilemanager is highly documented on the [wiki pages](https://github.com/prasathmani/tinyfilemanager/wiki).
[![Tiny File Manager](screenshot.gif)](screenshot.gif)
## Requirements
- PHP 5.5.0 or higher.
- [Zip extension](http://php.net/manual/en/book.zip.php) for zip and unzip actions.
- Fileinfo, iconv and mbstring extensions are strongly recommended.
- Fileinfo, iconv, zip, tar and mbstring extensions are strongly recommended.
## How to use
Download ZIP with latest version from master branch.
Copy tinyfilemanager.php to your website folder and open it with web browser (e.g. http://yoursite/any_path/tinyfilemanager.php).
Just copy the tinyfilemanager.php to your webspace - thats all :)
You can also change the file name from "tinyfilemanager.php" to something else, you know what i meant for.
Default username/password: admin/admin and user/12345.
Default username/password: **admin/admin@123** and **user/12345**.
Warning: Please set your own username and password in $auth_users before use.
:warning: Warning: Please set your own username and password in `$auth_users` before use. password is encrypted with <code>password_hash()</code>. to generate new password hash [here](https://tinyfilemanager.github.io/docs/pwd.html)
To enable/disable authentication set $use_auth to true or false.
To enable/disable authentication set `$use_auth` to true or false.
### Supported constants:
:information_source: Add your own configuration file [config.php](https://tinyfilemanager.github.io/config-sample.txt) in the same folder to use as additional configuration file.
- `FM_ROOT_PATH` - default is `$_SERVER['DOCUMENT_ROOT']`
- `FM_ROOT_URL` - default is `'http(s)://site.domain/'`
- `FM_SELF_URL` - default is `'http(s)://site.domain/' . $_SERVER['PHP_SELF']`
- `FM_ICONV_INPUT_ENC` - default is `'CP1251'`
- `FM_USE_HIGHLIGHTJS` - default is `true`
- `FM_HIGHLIGHTJS_STYLE` - default is `'vs'`
- `FM_DATETIME_FORMAT` - default is `'d.m.y H:i'`
- `FM_EXTENSION` - default is `""` //upload files extensions
- `FM_TREEVIEW` - default is `false`
:information_source: To work offline without CDN resources, use [offline](https://github.com/prasathmani/tinyfilemanager/tree/offline) branch
### :loudspeaker: Features
### :loudspeaker: Features
<ul>
<li>:cd: Open Source, light and extremely simple</li>
<li>:information_source: Basic features likes Create, Delete, Modify, View, Download, Copy and Move files </li>
<li>:arrow_double_up: Ajax Upload, Ability to drag & drop, multiple files upload and file extensions filter </li>
<li>:file_folder: Ability to create folders and files</li>
<li>:gift: Ability to compress, extract files</li>
<li>:sunglasses: Support user permissions - based on session and each user root folder mapping</li>
<li>:floppy_disk: Copy direct file URL</li>
<li>:pencil2: Edit text formats file using advanced editor</li>
<li>:zap: Backup files</li>
<li>:mag_right: Search - Advanced Ajax based seach</li>
<li>:file_folder: Exclude folders from listing</li>
<li>:bangbang: lots more...</li>
</ul>
- :cd: Open Source, light and extremely simple
- :iphone: Mobile friendly view for touch devices
- :information_source: Basic features likes Create, Delete, Modify, View, Download, Copy and Move files
- :arrow_double_up: Ajax Upload, Ability to drag & drop, upload from URL, multiple files upload with file extensions filter
- :file_folder: Ability to create folders and files
- :gift: Ability to compress, extract files (`zip`, `tar`)
- :sunglasses: Support user permissions - based on session and each user root folder mapping
- :floppy_disk: Copy direct file URL
- :pencil2: Cloud9 IDE - Syntax highlighting for over `150+` languages, Over `35+` themes with your favorite programming style
- :page_facing_up: Google/Microsoft doc viewer helps you preview `PDF/DOC/XLS/PPT/etc`. 25 MB can be previewed with the Google Drive viewer
- :zap: Backup files and IP blacklist and whitelist
- :mag_right: Search - Search and filter files using `datatable js`
- :file_folder: Exclude folders and files from listing
- :globe_with_meridians: Multi-language(32+) support and for translations `translation.json` is file required
- :bangbang: lots more...
### CDN Used
## Deploy by Docker
- jQuery
- Bootstrap
- Font Awesome
- Highlight.js
- ace.js
- DropZone.js
Make sure you have **already installed docker**, [Install reference](https://docs.docker.com/engine/install/)
> **Notice:** Your need an absolute path, and it will be served by tinyfilemanager.
>
> If you want to serve this project at **raspberry pi or another special platform**, you can download project and **build image by yourself**.
You can execute this following commands:
```shell
$ docker run -d -v /absolute/path:/var/www/html/data -p 80:80 --restart=always --name tinyfilemanager tinyfilemanager/tinyfilemanager:master
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
648dfba9c0ff tinyfilemanager/tinyfilemanager:master "docker-php-entrypoi…" 4 minutes ago Up 4 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp tinyfilemanager
```
Access `http://127.0.0.1/` and enter default username and password, then enjoy it.
DockerHub: [https://hub.docker.com/r/tinyfilemanager/tinyfilemanager](https://hub.docker.com/r/tinyfilemanager/tinyfilemanager)
#### How to change config within docker
Origin:
```php
// Root path for file manager
// use absolute path of directory i.e: '/var/www/folder' or $_SERVER['DOCUMENT_ROOT'].'/folder'
$root_path = $_SERVER['DOCUMENT_ROOT'];
// Root url for links in file manager.Relative to $http_host. Variants: '', 'path/to/subfolder'
// Will not working if $root_path will be outside of server document root
$root_url = '';
```
Modified:
```php
// Root path for file manager
// use absolute path of directory i.e: '/var/www/folder' or $_SERVER['DOCUMENT_ROOT'].'/folder'
$root_path = $_SERVER['DOCUMENT_ROOT'].'/data';
// Root url for links in file manager.Relative to $http_host. Variants: '', 'path/to/subfolder'
// Will not working if $root_path will be outside of server document root
$root_url = 'data/';
```
Then, change another config what you want, and add a new volume `-v /absolute/path/index.php:/var/www/html/index.php` in `docker run` command, like this:
```shell
$ docker run -d -v /absolute/path:/var/www/html/data -v /absolute/path/index.php:/var/www/html/index.php -p 80:80 --restart=always --name tinyfilemanager tinyfilemanager/tinyfilemanager:master
```
#### Stop running
If you want to stop a running docker service, or you want to restart a service, you should stop it first, or you got `docker: Error response from daemon: Conflict. The container name "/tinyfilemanager" is already in use by container ...` problem. You can execute this command:
```shell
$ docker rm -f tinyfilemanager
```
### <a name=license></a>License, Credit
- Available under the [GNU license](https://github.com/prasathmani/tinyfilemanager/blob/master/LICENSE)
- Original concept and development by github.com/alexantr/filemanager
- CDN Used - _jQuery, Bootstrap, Font Awesome, Highlight js, ace js, DropZone js, and DataTable js_
- To report a bug or request a feature, please file an [issue](https://github.com/prasathmani/tinyfilemanager/issues)
- [Contributors](https://github.com/prasathmani/tinyfilemanager/wiki/Authors-and-Contributors)

27
SECURITY.md Normal file

@@ -0,0 +1,27 @@
# Security Policy
## Reporting a Vulnerability
The team takes security bugs seriously. We appreciate your efforts to responsibly disclose your findings, and will make every effort to acknowledge your contributions.
To report a security issue, email ccpprogrammers[at]gmail[dot]com and include the word "SECURITY" in the subject line.
The team will send a response indicating the next steps in handling your report. After the initial reply to your report you will be kept informed of the progress towards a fix and full announcement.
Report security bugs in third-party modules to the person or team maintaining the module.
## Disclosure Policy
When the security team receives a security bug report, they will assign it to a
primary handler. This person will coordinate the fix and release process,
involving the following steps:
* Confirm the problem and determine the affected versions.
* Audit code to find any potential similar problems.
* Prepare fixes for all releases still under maintenance. These fixes will be
released as fast as possible to npm.
## Comments on this Policy
If you have suggestions on how this process could be improved please submit a
pull request.

Binary file not shown.

Before

(image error) Size: 474 KiB

After

(image error) Size: 2.4 MiB

File diff suppressed because one or more lines are too long

2815
translation.json Normal file

File diff suppressed because it is too large Load Diff