private Majorsilence.Vpn.Poco.Users RetrieveUser(string username, string code) { Majorsilence.Vpn.Poco.Users user = new Majorsilence.Vpn.Poco.Users(); using (var db = InitializeSettings.DbFactory) { db.Open(); IEnumerable <Majorsilence.Vpn.Poco.Users> x = null; if (!string.IsNullOrEmpty(username)) { x = db.Query <Majorsilence.Vpn.Poco.Users>("SELECT * FROM Users WHERE Email=@Email", new { Email = username }); } else if (!string.IsNullOrEmpty(code)) { x = db.Query <Majorsilence.Vpn.Poco.Users>("SELECT * FROM Users WHERE PasswordResetCode = @PasswordResetCode", new { PasswordResetCode = code }); } if (x.Count() == 0) { throw new Exceptions.InvalidDataException("Invalid Reset Code or User"); } else if (x.Count() > 1) { throw new Exceptions.InvalidDataException("Server Error Duplicate Codes"); } else if (x.Count() == 1) { user = x.First(); } } return(user); }
public bool validateCode(string resetCode, string password) { Majorsilence.Vpn.Poco.Users user = RetrieveUser("", resetCode); if (user != null) { if (user.PasswordResetCode == resetCode) { var pwd = new CreatePasswords(password, user.FirstName + user.LastName); user.PasswordResetCode = ""; user.Password = pwd.Password; user.Salt = pwd.Salt; using (var db = InitializeSettings.DbFactory) { db.Open(); using (var txn = db.BeginTransaction()) { db.Update(user); txn.Commit(); } } email.SendMail("Your Password was Reset", "Password Reset", user.Email, false); return(true); } } return(true); }
public UserInfo(int userid) { using (var cn = Majorsilence.Vpn.Logic.InitializeSettings.DbFactory) { cn.Open(); details = cn.Get <Majorsilence.Vpn.Poco.Users>(userid); } }
public CertsOpenVpnRevokeCommand(int userId, Ssh.ISsh sshClient) { using (var db = InitializeSettings.DbFactory) { db.Open(); this.userData = db.Get <Majorsilence.Vpn.Poco.Users>(userId); } this.sshClient = sshClient; }
public Payment(int userId) { this.userId = userId; using (var db = InitializeSettings.DbFactory) { db.Open(); userInfo = db.Get <Majorsilence.Vpn.Poco.Users>(userId); } }
protected PppBase(int userId, int vpnServerId, Ssh.ISsh sshNewServer, Ssh.ISsh sshRevokeServer) { using (var db = InitializeSettings.DbFactory) { this.userData = db.Get <Majorsilence.Vpn.Poco.Users>(userId); this.vpnData = db.Get <Majorsilence.Vpn.Poco.VpnServers>(vpnServerId); } this.sshNewServer = sshNewServer; this.sshRevokeServer = sshRevokeServer; this.userRequestedPassword = GeneratePassword(); }
public CertsOpenVpnGenerateCommand(int userId, int vpnServerId, Ssh.ISsh sshClientNewServer, Ssh.ISsh sshClientRevokeServer, Ssh.ISftp sftpClient) { using (var db = InitializeSettings.DbFactory) { db.Open(); this.userData = db.Get <Majorsilence.Vpn.Poco.Users>(userId); this.vpnData = db.Get <Majorsilence.Vpn.Poco.VpnServers>(vpnServerId); } this.sshClientNewServer = sshClientNewServer; this.sshClientRevokeServer = sshClientRevokeServer; this.sftpClient = sftpClient; }
public bool sendPasswordLink(string username) { Majorsilence.Vpn.Poco.Users user = RetrieveUser(username, ""); string ressetCode = generateCode.GeneratePasswordResetCode(username); user.PasswordResetCode = ressetCode; using (var db = InitializeSettings.DbFactory) { db.Open(); using (var txn = db.BeginTransaction()) { db.Update(user); txn.Commit(); } } email.SendMail(string.Format("Your Email Reset Code is: <a href=\"https://majorsilencevpn.com/validatecode?resetcode={0}\">{1}</a>", System.Web.HttpUtility.UrlEncode(ressetCode), ressetCode), "Password Reset", username, true, null, Majorsilence.Vpn.Logic.Email.EmailTemplates.Generic); return(true); }