update login func