public static Guid login(this TM_UserData userData,TMUser tmUser, Guid sessionId) { try { if (tmUser.notNull()) { if (sessionId != Guid.Empty) { tmUser.Stats.LastLogin = DateTime.Now; tmUser.Stats.LoginOk++; tmUser.logUserActivity("User Login", tmUser.UserName); userData.ActiveSessions.add(sessionId, tmUser); SendEmails.SendEmailToTM("User Login: {0}".format(tmUser.UserName), tmUser.toXml()); return sessionId; } tmUser.Stats.LoginFail++; } } catch (Exception ex) { ex.log("[TM_UserData][login]"); } return Guid.Empty; }
public static bool logout(this TM_UserData userData, TMUser tmUser, Guid sessionId) { try { if (tmUser.notNull() && sessionId.validSession()) { tmUser.logUserActivity("User Logout", tmUser.UserName); userData.ActiveSessions.Remove(sessionId); SendEmails.SendEmailToTM("User Logout: {0}".format(tmUser.UserName), tmUser.toXml()); return true; } } catch (Exception ex) { ex.log("[TM_UserData] invalidateSession"); } return false; }