bugfix: login function