refine file upload view and controller