I recently discovered eXtplorer, which is a Javascript and PHP file manager. The system looks very impressive and the feature list sounds great for allowing less technical users to manage their own websites (rather than requiring an FTP program). However, from my admittedly brief examination of the software I found that many of the things simply didn't work or there were enough minor issues to make using it rather annoying.

First of all, the default "file" mode is useless in practice for anything except viewing what files are in a directory. Uploading, changing permissions, renaming, etc all require that the web server user have write permissions to those files and directories which is almost always not the case. The "FTP" mode should get around these limitations but I haven't successfully managed to get it working yet.

Logging in to the system exposes a completely trivial but insanely annoying bug: hitting the enter key doesn't activate the "OK" button! Really, I can't believe somebody managed to write a login screen and not pick that up. Another usability problem is the error screens since they give you absolutely no clue as to what went wrong, only that something did. For instance, I tried out uploading a file (which is actually a fairly nice process, if a little cluttered) but it failed telling me that, well, that it failed. It took me a few moments to realise the problem with file permissions. I must assume that no extra information is sent back to eXplorer on a failure? Even so, I think the permissions problem would be easy for the software to work out seeing as it reports file and directory permissions to the user.

When you log in as admin for the first time eXplorer dutifully asks you to change the admin password. Which is fine except that attempting to change the password results in yet another unknown error. I'm guessing that there's a file somewhere that needs write permissions but I'll be damned if I know which one. I got around this by doing a recursive chmod and setting everything to writable then setting it back. Something, I would like to point out, that is not possible through an FTP connection, leaving you with hours of work ahead of you if you're using this on a remote connection with SSH access.

OK, so enough with the negative stuff for now, what's good about this software? Well, most obviously, it looks really nice. This is thanks to using the ExtJS library for the entire system, which is quite apparent (you know, aside from the name) as the default Ext style is used. The layout will be familiar to anyone who has ever used a file manager before, with a couple of caveats. Only files are displayed by default in the "view" area but this can be changed by clicking "Show Directories" which, despite its appearance, is a glorified checkbox (it's a button with on/off states). Secondly, if you do activate show directories then double clicking on them doesn't open them – they can only be opened in the viewer which, naturally, shows nothing. To open a directory you need to use the tree on the left. Finally, eXtplorer only ever shows 50 files in a single "page" of a directory. You need to use the pagination buttons at the bottom to see more.

Doing operations on files is rather easy as you can double click on them (or right click) to bring up a context menu. You can also use the buttons in the toolbar which do the same thing. I like the viewer quite a bit as it does syntax highlighting on several different types of files, such as PHP. Images can also be viewed, which is quite convenient. You can also use drag-n-drop functionality for moving or copying files, which actually appears to be the only way to achieve those operations. Perhaps one of the most useful things is the ability to do "batch" operations by selecting more than one file – chmod is particularly good as you can recurse into subdirectories, something which gFTP doesn't yet support.

Another problem you can run into is that the insane amount of Javascript being used results in the system being quite slow in some cases but this is probably still better than doing the same thing via FTP. :)

Overall, I'd say that eXplorer is a decent system but it suffers from some sharp edges that need to be fixed up before I'd consider using it more. In particular, before I allowed a client to use it.


Update: I got FTP working and it is better than file mode. Also, to change the admin password or add users you need to make config/.htusers.php writable. Damn those hidden files.