public ActionResult Register(CreateAccountViewmodel model) { if (!ModelState.IsValid) { // om inte rätt format return(View(model)); } postgres sql = new postgres(); bool check = sql.SqlQueryExist("Select exists(SELECT users.username FROM public.users WHERE users.username = @par1);", postgres.list = new List <NpgsqlParameter>() { new NpgsqlParameter("@par1", model.User) }); if (!check) { Accountservice User = new Accountservice(); User.RegisterNewUser(model.User, model.email, model.First_name, model.Last_name); return(RedirectToAction("Index", "Account")); } else { ModelState.AddModelError("", "Användarnamnet finns redan, Välj ett annat"); return(View(model)); } }
public ActionResult NewUser(Users model) { try { Accountservice User = new Accountservice(); Tuple <byte[], byte[]> password = User.Generatepass(model.Password); postgres sql = new postgres(); // Behöver skrivas om sql.SqlNonQuery("INSERT INTO login (salt, key ,username,roles_id,email,acc_active,last_login) VALUES (@par2,@par3,@par1,'2',@email,@active,@last_login)", postgres.list = new List <NpgsqlParameter>() { new NpgsqlParameter("@par1", model.User), new NpgsqlParameter("@par2", password.Item1), new NpgsqlParameter("@email", model.email), new NpgsqlParameter("@active", model.active), new NpgsqlParameter("@last_login", DateTime.Now), new NpgsqlParameter("@par3", password.Item2) }); return(RedirectToAction("index", "admin")); } catch { return(View()); } }
public ActionResult Index(Accountmodels model) { if (!ModelState.IsValid) { // om inte rätt format return(View(model)); } Accountservice acc = new Accountservice(); var result = acc.AuthenticationUser(model.Password, model.user); if (result.Item2 == true) { var identity = new ClaimsIdentity(new[] { new Claim(ClaimTypes.Name, Convert.ToString(result.Item1)), new Claim(ClaimTypes.Role, result.Item3), new Claim(ClaimTypes.GivenName, result.Item3) }, "ApplicationCookie"); var ctx = Request.GetOwinContext(); var authManager = ctx.Authentication; authManager.SignIn(identity); if (!string.IsNullOrEmpty(Request.QueryString["ReturnUrl"])) { return(Redirect(Request.QueryString["ReturnUrl"])); } return(Redirect("home/index")); } else { ModelState.AddModelError("", "Fel lösenord eller användanamn"); return(View(model)); } }
public void CreateUser(string user, string email, bool active, string Password, string fname, string last_name) { Accountservice User = new Accountservice(); Tuple <byte[], byte[]> password = User.Generatepass(Password); postgres sql = new postgres(); // Behöver skrivas om! klart! postgres sql2 = new postgres(); int id = sql2.SqlQueryString("INSERT INTO login (salt, hash, reset_time, reset_hash) VALUES (@salt ,@hash, @time, 1) RETURNING login_id;", postgres.list = new List <NpgsqlParameter>() { new NpgsqlParameter("@salt", password.Item1), new NpgsqlParameter("@hash", password.Item2), new NpgsqlParameter("@time", Convert.ToDateTime("1970-01-01 00:00:00")) }); postgres sql3 = new postgres(); int id_setting = sql3.SqlQueryString("INSERT INTO usersettings (day_of_slumpcron) VALUES (6) RETURNING setting_id;", postgres.list = new List <NpgsqlParameter>() { }); sql.SqlNonQuery("INSERT INTO users (username,roles_id,email,acc_active,last_login,login_id,settings_id,fname,last_name) VALUES (@par1,'2',@email,@active,@last_login,@login_id,@settings_id,@fname,@last_name)", postgres.list = new List <NpgsqlParameter>() { new NpgsqlParameter("@par1", user), new NpgsqlParameter("@email", email), new NpgsqlParameter("@active", active), new NpgsqlParameter("@login_id", id), new NpgsqlParameter("@settings_id", id_setting), new NpgsqlParameter("@last_login", DateTime.Now), new NpgsqlParameter("@fname", fname), new NpgsqlParameter("@last_name", last_name) }); }
public ActionResult Forgetpassword(Users model) { Accountservice acc = new Accountservice(); bool result = acc.Forgetpassword(model.User); if (result) { return(RedirectToAction("Index", "Home")); } ModelState.AddModelError("", "Användaren finns inte eller så är kontot inte aktiverat"); return(View(model)); }
public void Newpassword(int login_id, string newpassword) { Accountservice User1 = new Accountservice(); Tuple <byte[], byte[]> password = User1.Generatepass(newpassword); postgres sql = new postgres(); // behöver skrivas om! klart sql.SqlNonQuery("UPDATE login set salt= @par2, hash =@par3 WHERE login_id =@par1", postgres.list = new List <NpgsqlParameter>() { new NpgsqlParameter("@par1", login_id), new NpgsqlParameter("@par2", password.Item1), new NpgsqlParameter("@par3", password.Item2) }); }
public ActionResult Resetpassword(string validate) { if (string.IsNullOrEmpty(validate)) { return(RedirectToAction("Index", "Home")); } Users us = new Users(); Accountservice acc = new Accountservice(); Tuple <int, bool, string> reset = acc.Resetpassword(validate); if (reset.Item2) { us.Login_id = reset.Item1; us.User = reset.Item3; return(View(us)); } return(RedirectToAction("Forgetpassword", "Account", 1)); }