refactoring ui and validation text now working