initial client side validation