login func fixed