Is there a reason why you have one validation function return a new value and call it outside the conditional, and the other validation return a truth value and call it inside the conditional? I think it'd be a bit nicer to read to call both validation functions outside the conditional.