implemented direct uploading from browser