Monday, May 4th, 2009

Two MooTools Plugins for Better File Management

Category: MooTools

We’ve posted before about Harald Kirschner’s excellent MooTools plugin FancyUpload which provides extensive functionality for handling file uploads. His newest update, FancyUpload v3.0, is a complete rewrite and includes a wealth of new features:

  • The API with, separated uploader and file classes, allows an easy implementation in all kind of interfaces
  • Events are dispatched for every step of the uploading process, to keep the interface as responsive as possible
  • Progress tracks the loaded size, upload-rate, estimated time and other values for every file and for the batch as a whole
  • File uploads can be stopped, restarted or removed anytime
  • New Iframe-based class for multiple, asynchronous uploads without dependency on Flash
  • Compatible with Flash 9 and 10 with the browse button as a transparent overlay or as an interactive image sprite
  • Ability to change the upload URL and add POST/GET data on runtime, customized for every file or the whole process
  • Easy to localize to your favourite language with MooTools.lang, share your translations with others.

To see the uploader in action, Harald has started a showcase of demos which provide excellent examples of the plugins capabilities

MooTools based FileManager

Piggy-backing on Harald’s work, Christoph Pojer extended it further by creating a new plugin that provides impressive file managing capabilities for your server.

  • Browse through Files and Folders on your Server
  • Rename, Delete, Move (Drag&Drop), Copy (Drag + hold CTRL) and Download Files
  • View detailed Previews of Images, Text-Files, Compressed-Files or Audio Content
  • Nice User Interface ;)
  • Upload Files via FancyUpload (integrated Feature)
  • Option to automatically resize big Images when uploading
  • Use it to select a File anywhere you need to specify one inside your Application’s Backend
  • Use as a FileManager in TinyMCE
  • Provides your Client with the most possible convenience ( ;D )

The plugin is easily implemented as well:


  1. 1. var manager = new FileManager({
  2.    2.   url: 'manager.php',
  3.    3.   assetBasePath: '../Assets',
  4.    4.   language: 'en',
  5.    5.   uploadAuthData: {session: 'MySessionId'}
  6.    6. });
  7.    7. $('example1').addEvent('click',;

Check out the cool demo Christoph created.

Posted by Rey Bango at 1:46 pm

3.9 rating from 45 votes


Comments feed TrackBack URI

Just added a fresh showcase as thank-you for the ajaxian feature: – a reduced snappier and interface.

Comment by digitarald — May 4, 2009

Omg Harald thanks a million :D I’ve implemented the uploader in 3 of my major projects now and i keep on being impressed by the flexibility it offers.

I noticed that the queued photo uploader demo dit not start until I enabled firebug. Maybe require mootools.more’s Log.logger?

Comment by SchizoDuckie — May 4, 2009

A bit like this one then.. only this is very very old..

Comment by MikaelBergkvist — May 4, 2009

Well jeeze, it rocks, but that’s just the usual for Digitarald it seems! Nice update, can’t wait to switch my v2 out for this one. Hands down best uploader on the net; often imitated, never dominated!

Comment by csuwldcat — May 4, 2009

woohoo! something that works right out of the box. Thanks!

Comment by aw93053 — May 5, 2009

I use this myself for a few projects and it works quite well, EXCEPT for when Adobe decides to upgrade Flash features get broken. I have a youtube clone site that ran smoothly for almost a year before suddenly uploads stopped working. I then grabbed the newest version of this software, installed it, and it was working again.

For Ruby, Python, and PHP 5, you probably don’t need this solution, but for people who are stuck using PHP 4 on a project, then this gives them the ability to track downloads that is completely lacking in that version of PHP.

Comment by GregoryD — May 5, 2009

Wish they were jQuery. -.-

Comment by gustavs — May 5, 2009

If I get enough feedback I decide to convert, since the jq crowd deserves a proper solution too ;) That its not converted yet by somebody else, shows that its difficult (mainly because MooTools provides many features in the core that jq needs a plugin for, probably also because of the OOP inheritance that makes the implementation of FU so easy). So, gimme feedback in my forums and we can talk about a conversion.

Comment by digitarald — May 6, 2009

Leave a comment

You must be logged in to post a comment.