Archive for the 'Tech' Category

modifying tesUpload for slidePresenter

Wednesday, December 27th, 2006

I’ve decided to go ahead with Thomas Epineer’s tesUpload as the basis for providing an upload progress meter in slidePresenter.  Unfortunately, in spite of Thomas’ great work in modifying the original megaupload script (by Raditha Dissanyake) for use with AJAX, it needs further tweaking to be of real use for slidePresenter.  I’m currently in the process of hacking on it and pulling the pieces together to make it work.  It’s been a long time since I worked in perl, though, so even this simple task is taking longer than I expected.  Tonight I committed some substantial changes to svn.  Next I’ll need to add some type of authentication for the perl script, since as it is it pretty much uploads anything it receives without concern for what it is or who sent it, which is not really acceptable for slidePresenter.

Adding an upload progress meter

Thursday, December 14th, 2006

As of version 0.10, slidePresenter provides an interface for uploading slide images — either one at a time or in a .zip archive; slidePresenter then automatically imports those images into the presentation. It’s an AJAX-style upload that aims at doing the whole thing without a page refresh, so for the user it should seem like one quick step. So far, though, it doesn’t offer any indication to the user of the upload’s progress. For large archives of many images, this can be rather unnerving.

I’m working on one solution to this nuisance: a real-time progress indicator for the file upload. But it’s not as simple as some other things. First of all, it’s an unfortunate fact that this can’t be done with only PHP, not without compiling in a special patch. Several people have played around with using a small CGI script in perl or another language to help out.

Thomas Epineer’s tesUpload is a great example of this idea in an AJAX context. It’s actually a wonderful thing, and I’m playing around with ways to use it for slidePresenter. I don’t like the fact that it requires a configuration file to be located one level above the system docroot, because it seems inflexible and hard to explain to new users; but, I think there’s a way to get around that. If there’s not, there’s not, and tesUpload seems otherwise close enough to what slidePresenter needs that I’m strongly considering it regardless.

Hopefully we can come up with a real-time upload progress indicator that is also a no-brainer to install.