add error messages
finish user logic and session