only upload after submit pressed, smart button and message showing