/// <summary> /// Adds a new user /// </summary> /// <param name="form">User data</param> /// <returns>success</returns> public bool add(Form_User_Add form) { user newUser = new user(); newUser.username = form["username"].getValue(); newUser.rolesid = long.Parse(form["role"].getValue()); newUser.email = form["email"].getValue(); SHA1Managed sha = new SHA1Managed(); string hash = BitConverter.ToString(sha.ComputeHash(Encoding.Default.GetBytes(form["password"].getValue()))).Replace("-", String.Empty).ToLower(); newUser.password = hash; newUser.date = DateTime.Now; using (UserDataContext u = new UserDataContext()) { try { u.users.InsertOnSubmit(newUser); u.SubmitChanges(); } catch (Exception e) { CMS.Services.CMS_Services_Message.getInstance().addError(e.Message); return false; } } return true; }
// // GET+POST: /Backend/EditUser?id={id} public ActionResult EditUser() { if (Request.Params.AllKeys.Contains("id")) { long id = 0; try { id = long.Parse(Request.Params["id"]); } catch { } Form_User_Add form = new Form_User_Add(); form.setRoles(this._app.roles().getAll()); user edited = this._app.users().getById(id); if (edited != null) { form.setEditData(edited); if (Request.HttpMethod.ToLower() == form.getMethod().ToString()) { if (form.isValid(Request.Form)) { if (this._app.users().save(form, edited)) { _messages.addMessage("The user has been successfully saved"); return Redirect("/backend/ListUsers"); } else { _messages.addError("The user hasn't been saved"); } } } ViewData["form"] = form.render(); return View(); } } _messages.addError("Undefined or wrong parameter ID"); return RedirectToAction("listUsers", "backend"); }
// // GET+POST: /Backend/AddUser public ActionResult AddUser() { Form_User_Add form = new Form_User_Add(); form.setRoles(this._app.roles().get()); if (Request.HttpMethod.ToLower() == form.getMethod().ToString()) { if (form.isValid(Request.Form)) { if (this._app.users().add(form)) { _messages.addMessage("The user has been successfully added"); return Redirect("/backend/ListUsers"); } } } ViewData["form"] = form.render(); return View(); }
/// <summary> /// Save changes to the given user /// </summary> /// <param name="form">User data</param> /// <param name="edited">Edited user</param> /// <returns>success</returns> public bool save(Form_User_Add form, user edited) { user toSave = new user(); toSave.id = edited.id; toSave.password = edited.password; if (form["password"].getValue() != String.Empty) { SHA1Managed sha = new SHA1Managed(); string hash = BitConverter.ToString(sha.ComputeHash(Encoding.Default.GetBytes(form["password"].getValue()))).Replace("-", String.Empty).ToLower(); toSave.password = hash; } toSave.rolesid = long.Parse(form["role"].getValue()); toSave.email = form["email"].getValue(); toSave.username = form["username"].getValue(); toSave.date = edited.date; using (UserDataContext u = new UserDataContext()) { u.users.Attach(toSave, edited); try { u.SubmitChanges(); } catch (Exception e) { return false; } } return true; }