add login logout function