Added client-side form validation.