// GET: /Home/GetCreateUser public ActionResult CreateUser() { ModelState.Clear(); ADInfo adinfo = new ADInfo(); var OUgroup = adinfo.GetOU(); CreateModel cModel = new CreateModel { OrgUnit = adinfo.GetSelectListItems(OUgroup) }; return(View("CreateUser", cModel)); }
public ActionResult PCreateUser(CreateModel cModel) { ADInfo adinfo = new ADInfo(); var OUgroup = adinfo.GetOU(); cModel.OrgUnit = adinfo.GetSelectListItems(OUgroup); string test = cModel.SelectedOU; if (ModelState.IsValid) { try { using (UserPrincipal uP = adinfo.GetUser(cModel.SamAccountName, false)) { if (uP == null) { PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "newgate-software.local", "ou=" + cModel.SelectedOU + ",dc=newgate-software,dc=local", "NEWGATE-SOFTWAR\\Administrator", "P@ssw0rd123"); UserPrincipal newUser = new UserPrincipal(ctx, cModel.SamAccountName, cModel.Password, true) { GivenName = cModel.DisplayName, PasswordNeverExpires = true, Enabled = true }; newUser.Save(); ViewBag.Message = "Success"; ModelState.Clear(); return(PartialView("_CreateUser", cModel)); } else { ViewBag.Message = "Username existed"; ModelState.Clear(); return(PartialView("_CreateUser", cModel)); } } } catch (Exception e) { ViewBag.Message = e.Message + e.StackTrace + e.InnerException; ModelState.Clear(); return(PartialView("_CreateUser", cModel)); } } return(PartialView("_CreateUser", cModel)); }
public ActionResult Info(int?page) { #if DEBUG var model = new List <UserInfo> { new UserInfo { Name = "Name1", Info = "Info1", Status = false }, new UserInfo { Name = "Name2", Info = "Info2", Status = true }, new UserInfo { Name = "Name3", Info = "Info3", Status = true }, new UserInfo { Name = "Name4", Info = "Info4", Status = false }, new UserInfo { Name = "Name5", Info = "Info5", Status = true }, new UserInfo { Name = "Name6", Info = "Info6", Status = true } }; #else ADInfo adinfo = new ADInfo(); List <UserPrincipal> adlist = adinfo.GetGroup(); var model = new List <UserInfo>(); foreach (var item in adlist) { var status = item.Enabled ?? false; model.Add(new UserInfo { Name = item.SamAccountName, Info = item.DistinguishedName, Status = status }); } model.RemoveAll(item => item.Name == "krbtgt" || item.Name == "Administrator" || item.Name == "DefaultAccount" || item.Name == "Guest"); model.Sort((x, y) => string.Compare(x.Name, y.Name)); #endif int pageSize = 10; int pageNumber = (page ?? 1); return(View(model.ToPagedList(pageNumber, pageSize))); }
// GET: /Home/Details/ public ActionResult GetDetails(string name) { #if DEBUG UserInfo userInfo = new UserInfo { Name = name, Info = "info", Status = true }; #else ADInfo adinfo = new ADInfo(); UserPrincipal uP = adinfo.GetUser(name, false); var status = uP.Enabled ?? false; UserInfo userInfo = new UserInfo { Name = uP.SamAccountName, Info = adinfo.GetOUForUser(name), Status = status }; #endif return(PartialView("Details", userInfo)); }
public ActionResult ResetPass(ResetModel rModel) { if (ModelState.IsValid) { #if DEBUG Debug.WriteLine("Thread sleep now"); Thread.Sleep(2000); Debug.WriteLine("Thread after"); #else try { ADInfo adinfo = new ADInfo(); using (UserPrincipal uP = adinfo.GetUser(rModel.SamAccountName, true)) { if (uP != null) { uP.SetPassword(rModel.Password); uP.Save(); ViewBag.Message = "Success"; ModelState.Clear(); return(PartialView("_ResetPassword")); } ViewBag.Message = "User Not Found"; ModelState.Clear(); return(PartialView("_ResetPassword", rModel)); } } catch (Exception e) { ViewBag.Message = e.Message + e.StackTrace + e.InnerException; ModelState.Clear(); return(PartialView("_ResetPassword", rModel)); } #endif } return(PartialView("_ResetPassword", rModel)); }