ChangeLog

Thanks to everybody that helped this project!
Since 2004, when i released the first code, it was not mine anymore, it was ours.

Version 1.7.9:
. BugFix: Permit direct download of big files (by Daniele Santoro)
. BugWorkaround: HTTP Error 431 when navigating
. A lot of Github fixes and merges, done since v1.7.8

Version 1.7.8:
. Rewrote the code for the portscan window, now it works way better.
. A lot of interface UX adjustments.

Version 1.7.7:
. Full viewport modal windows, for better usage on different resolutions. (not mobile, that´s another thing)
. File edit window improved, now with toolbar, 12 highlight modes, shortcuts and search/replace box (Ctrl+f/Crtl+h).
Also remembers cursor position on save/refresh, and the selected highlight mode of each file using cookies.
. Timezones options changed from GMT offsets to regions, to account for daylight saving times.
. BugFix: “Leave” button was not working. (But session was always normally ended on browser closure)
. BugFix: Sort by date had an issue with AM and PM times.
. BugFix: Correct total size info on footer, after “Get Size” press, on selected folders.

Version 1.7.6:
. Added buttons to create symlinks and hardlinks. If one entry is selected, prompt for new name, if more, use the same.
. Show symlinks with (L) marker on tree view.
. Show symlinks targets with breadcrumbs on top of file/folder view, and resolve them recursively, until the final target.
. Show broken symlinks in RED on tree view and file/folder view, and allow to delete/rename them.
. Improved total_copy() and total_delete() functions with flags to copylinks (instead of the files, default true) and followlinks (default false).
. Created special functions to handle symlink/hardlink creation on windows/linux, using php functions and fallback to system commands.

Version 1.7.5:
. BugFix: Symlinks to folders now show correctly on the tree view.
. Added folders total size using php, ajax, recursive limit and cache on cookies for the session.
. Tried to use mimetype check on the file/folder list, to identify textfiles, but it was slowing the script too much. So i added a binary file check on the edit window, allowing to view/copy/save them using base64.
. Show total/available size of a partition mounted on linux, when acessing the mouting point.

Version 1.7.4:
. Identify symlinks on the list, and show target file/folder as a hint on mouseover.
. Added total size of folders, using system command “du -sb” on linux and “COM()” on windows, if available.
. Added total size of file/folder selection on footer info.
. Added config option to set the local date format.
. Chmod window now is bigger and shows by default, the permission of the last selected file/folder.
. phpFileManager now remembers the current folder, on full reload, using a cookie for the session.
. phpFileManager now works even when contained on another frameset. (fix for the online demo)
. BugFix: readdir() was stopping on any folder or files named “0”.
. BugFix: Delete action had a javascript error on windows, due to changes made on v1.7.0.
. BugFix: Execute file action now is shown on any file that has execution permissions, not just by extension.
. BugFix: When executing files, add “cd /current_folder &&” to the command, as i already do on the shell emulator.
. BugFix: Show the button “resolve ids” on windows to resolve permissions codes.
. BugFix: Password was reseting to none on every config save.
. BugFix: Changed default linux file upload permition to 644, and added a system call to “icacls” on windows, to reset perms.
. BugFix: Decompress action for ZIP files was not extracting empty folders/files.

Version 1.7.3:
. BugFix: Move action not working as expected. (by TrickMyIdea)

Version 1.7.2:
. BugFix: Fix for tree loading problem, when the webserver is not using php open_basedir.

Version 1.7.1:
. Added back the config option to set the phpFileManager root, so it does not show always the whole server.
. Added server time on footer info, and a new config option to set the timezone, if the user uses one different from the server.
. Interface adjustment for I/O Error message, when selecting a protected folder.

Version 1.7:
. Revised all code to use proper folder separators on Linux and Windows servers. PHP does not care, but system functions do, so this was needed for the terminal emulator.
. Improved interface, now with icons. (by prasathmani)
. Alert messages shown directly on screen, without the annoying alert() popup.
. Shell terminal emulator now shows user, hostname and the current working folder (ex. [user@server /home/user]$ ls). Can also explore the whole server freely, if php system exec functions allow it.
. Syntax highlighting on the Edit file window, using Ace and Monokai theme.
. New button for rapid ZIP download of files and folders.
. BugFix: Edit option now available on files without extension.
. BugFix: Breadcrumbs were not showing on empty directories.
. BugFix: Interface bug that was occuring if you select a file, click on copy, then on config or any other modal window.

Version 1.6:
. Updated tar/zip/bzip/gzip class, and modified it to provide php7 support (this was not working anymore).
. Improved php sockets portscan, with revised backend, and new frontend. Now the form remembers the last search, using cookies for the session.
. Special error message when Javascript support is not available, for those noScript addon users.
. Fixed filenames that were shown escaped on the edit/view window header.

Version 1.5:
breadcrumbs on right window top file path. (by Tri Le)
apache_request_headers() alternative function added, for nginx + php-fpm support. (by asins)
. php7 support.
. php open_basedir parsing, all available paths (and drives on windows) are shown on top of the folder tree.
. new and improved portscan, with ajax loading, and options to define hosts, ranges and ports to be scanned.
. chromePhp debugging, as an additional option on the config window (for those who want to mess with the code).

Donation!!

If you like this script, please consider making a donation.
Any amount is well received, and will help me continue giving support and adding new features.