updated with html5 validation attribute for inputs and bootstrap contextual classes for invalid inputs