Cool. By the way, I did try out the other one and it does download the file, but I cant really tell about the cache stuff. Plus your code looks like you put more thought into it ...