public ActionResult AddMore() { var msg = String.Empty; var projectId = AppHelper.GetSessionProjectId(Session); var loggedInUser = new PatUser(Request.LogonUserIdentity); if (HttpContext.Session != null) { var sessionKey = HttpContext.Session.SessionID; if (Request.Form["ids[]"] == null) { // User has deselected all of the Claims var emptyList = new List <int>(); Session["ids"] = emptyList.ToArray(); PatService.SaveSampleSelections(projectId, sessionKey, emptyList, loggedInUser.LoginName); } else { var intArr = Array.ConvertAll(Request.Form["ids[]"].Split(','), Convert.ToInt32); Session["ids"] = intArr; PatService.SaveSampleSelections(projectId, sessionKey, intArr.ToList(), loggedInUser.LoginName); } } return(Json(new { success = true, message = msg }, JsonRequestBehavior.AllowGet)); }
public void TestGettingAPatUserFromAUserId3() { var sut = new PatUser("MP2648"); sut.DumpUser(); Assert.IsTrue(sut.IsAdmin()); }
public void TestGettingAPatUserFromAUserId2() { var sut = new PatUser("PD2505"); sut.DumpUser(); Assert.IsFalse(sut.IsAdmin()); }
public void TestAdminStatusOfPhillipDimond() { var sut = new PatUser("PD2505"); sut.DumpUser(); Assert.IsTrue(sut.IsAdmin()); }
public void TestGettingAPatUserFromAUserIdManchi() { var sut = new PatUser("MS3087"); sut.DumpUser(); Assert.IsFalse(sut.IsAdmin()); }
/// <summary> /// Retrieve Users by list of Group paths /// </summary> /// <param name="groupPaths">The group paths.</param> /// <returns>list of users</returns> public List <PatUser> GetAllPAUsersByGroupPaths(List <string> groupPaths) { var users = new List <PatUser>(); foreach (var groupPath in groupPaths) { try { using (var deGroup = new DirectoryEntry(groupPath)) { var count = deGroup.Properties["member"].Count; for (var i = 0; i < count; i++) { var pathnavigate = groupPath.Split("CN".ToCharArray()); var respath = pathnavigate[0]; var objpath = deGroup.Properties["member"][i].ToString(); var path = respath + objpath; using (var deUser = new DirectoryEntry(path)) users.Add(PatUser.GetUser(deUser)); } } } catch (DirectoryServicesCOMException) { ErrorLog.GetDefault(null).Log(new Error(new System.ApplicationException(string.Format("AD Error accessing {0}", groupPath)))); } } return(users); }
public void TestGroupMembership() { var sut = new PatUser("SC0779"); sut.DumpUser(); Assert.IsTrue(sut.IsInAnyOfTheseGroups("QLD")); Assert.IsFalse(sut.IsInAnyOfTheseGroups("TAS,WA")); Assert.IsTrue(sut.IsAdmin()); }
public void TestProjectExportRule() { var user = new PatUser("SC0779"); // to check user resource membership : var userResource = user.ResourceSet(); var sut = new PatService(); var project = sut.GetProject(13); // to check project resource membership : var resourceSet = project.ResourcesSetShort(); Assert.IsTrue(project.CanExport(user.LoginName)); }
public void TestGettingAPatUserFromAUserId() { var sut = new PatUser("SC0779"); sut.DumpUser(); Assert.AreEqual("Stephen Colonna", sut.FullName); Assert.AreEqual("SC0779", sut.LoginName); Assert.AreEqual("*****@*****.**", sut.EmailAddress); // emails arent stored in DEV active directory Assert.IsTrue(sut.IsQld()); Assert.IsTrue(sut.InState("QLD")); Assert.IsTrue(sut.IsAdmin()); }
public static string AdminOrNot(string loginId, HttpSessionStateBase session) { var adminStatus = GetSessionAdminStatus(session); if (string.IsNullOrEmpty(adminStatus)) { var user = new PatUser(loginId); adminStatus = user.IsAdministrator() ? "ADMIN" : "USER"; SetSessionAdminStatus(session, adminStatus); } return(adminStatus.Equals("ADMIN") ? "*" : string.Empty); }
// http://localhost:6491/Home/Users public ActionResult Users() { var vm = new AboutViewModel { Version = AppHelper.VersionNumber() }; vm.IsDebug = true; var loggedInUser = new PatUser(Request.LogonUserIdentity); var list = PatService.GetProgramAssuranceUsers(); var groups = loggedInUser.MemberOf; ViewData["admins"] = UserTable(list); ViewData["groups"] = AppHelper.ListFor(groups); var control = PatService.GetControlFile(); ViewData["about"] = GenerateAboutData(control); return(View(vm)); }
public ActionResult Create(int id) { var loggedInUser = new PatUser(Request.LogonUserIdentity); if (HttpContext.Session != null) { var vm = new CreateSampleViewModel(); var project = PatService.GetProject(id); if (project != null) { vm.ProjectId = id; vm.ProjectName = project.ProjectName; vm.ContractMonitoringOrContractSiteVisitProject = PatService.ProjectIsContractMonitoringOrContractSiteVisit(id); vm.SampleStartDate = DateTime.Now.Date; vm.SampleDueDate = DateTime.Now.AddDays(4 * 7).Date; vm.SampleMessage = PatService.GetSampleMessage(HttpContext.Session.SessionID); vm.IsAdministrator = loggedInUser.IsAdministrator(); vm.Criteria = new SampleCriteria { MaxSampleSize = 20, RequestingUser = loggedInUser.FullName }; vm.SessionKey = HttpContext.Session.SessionID; if (HttpContext.Session != null) { var sessionKey = HttpContext.Session.SessionID; AppHelper.SetSessionProjectId(Session, id); vm.SessionKey = sessionKey; } } return(View(vm)); } return(View(new CreateSampleViewModel { SampleMessage = "No Session available" })); }
public ActionResult SaveSample() { var msg = String.Empty; var projectId = AppHelper.GetSessionProjectId(Session); var loggedInUser = new PatUser(Request.LogonUserIdentity); var isAdditional = Request.Form["additional"].Equals("true"); var isOutOfScope = Request.Form["outOfScope"].Equals("true"); var dueDate = DateTime.Parse(Request.Form["due"]); if (HttpContext.Session != null) { var sessionKey = HttpContext.Session.SessionID; if (Request.Form["ids[]"] != null) { var intArr = Array.ConvertAll(Request.Form["ids[]"].Split(','), Convert.ToInt32); if (intArr.Length > 0) { Session["ids"] = intArr; var uploadId = PatService.SaveSample(projectId, sessionKey, intArr.ToList(), isOutOfScope, isAdditional, dueDate, loggedInUser.LoginName); AppHelper.SetSessionUploadId(Session, uploadId); msg = "Sample has been successfully created."; TempData[CommonConstants.FlashMessageTypeInfo] = msg; } else { msg = "Sample not created. No selections"; TempData[CommonConstants.FlashMessageTypeInfo] = msg; } } } return(Json(new { success = true, message = msg }, JsonRequestBehavior.AllowGet)); }
public ActionResult Edit(int id) { try { var loggedInUser = new PatUser(Request.LogonUserIdentity); var projectId = AppHelper.GetSessionProjectId(Session); if (projectId == 0) { return(RedirectToProjectsList()); } var project = PatService.GetProject(projectId); ViewBag.IsProjectContractMonitoringOrContractSiteVisit = project != null && project.IsContractMonitoringOrContractSiteVisit(); ViewBag.CanEditCheckList = project != null && project.CanEditCheckList(User.Identity.Name.RemoveDomain()); var questionnaire = PatService.GetReviewQuestionnaire(id); ViewBag.AnyQuestionsAndAnswers = questionnaire != null; var review = PatService.GetReview(id); if (project != null && review.CanEdit(loggedInUser, project.ResourcesSetShort())) { var upload = PatService.GetUploadById(review.UploadId); var vm = new ReviewDetailsViewModel { ProjectId = project.ProjectId, ProjectName = project.ProjectName, UploadName = upload.Name, OutOfScope = upload.IsOutOfScope(), OutOfScopeFlag = !upload.InScope, Additional = upload.AdditionalOrNot(), AdditionalFlag = upload.AdditionalReview, Review = review, CanDelete = review.CanDelete(loggedInUser), CanEdit = true, ChangesMade = "N" }; ViewData["review-details"] = GenerateReviewDetails(review); ViewData["related-data"] = GenerateRelatedData(review.ClaimId, review.ClaimSequenceNumber); vm.OldAssessmentOutcome = vm.Review.AssessmentCode; vm.OldRecoveryReason = vm.Review.RecoveryReason; vm.OldOutcomeCode = vm.Review.OutcomeCode; vm.OldAssessmentAction = vm.Review.AssessmentAction; vm.DeleteMessage = "Are you sure you want to delete this review?"; if (vm.Review.Status().Equals("Completed")) { vm.DeleteMessage = "Are you sure you want to delete this review? as it has outcomes recorded."; } // keep the existing (`not current`) adw code displayed ViewBag.OldAssessmentOutcomeList = PatService.GetAdwCode(DataConstants.AdwListCodeForAssessmentCodes, vm.OldAssessmentOutcome, true); ViewBag.OldRecoveryReasonList = PatService.GetAdwCode(DataConstants.AdwListCodeForRecoveryReasonCodes, vm.OldRecoveryReason, true); ViewBag.OldAssessmentActionList = PatService.GetAdwCode(DataConstants.AdwListCodeForAssessmentActionCodes, vm.OldAssessmentAction, true); ViewBag.OldFinalOutcomeList = PatService.GetAdwCode(DataConstants.AdwListCodeForOutcomeCodes, vm.OldOutcomeCode, true); return(View(vm)); } TempData[CommonConstants.FlashMessageTypeWarning] = "You must be part of the Project resource groups to edit its' reviews."; return(RedirectToProjectDetailsPageTab(projectId, CommonConstants.ProjectTab_Details)); } catch (Exception ex) { ErrorLog.GetDefault(null).Log(new Error(ex)); return(View("Error", new HandleErrorInfo(ex, "Review", "Edit"))); } }
public ActionResult Edit(string button, ReviewDetailsViewModel vm) { try { var loggedInUser = new PatUser(Request.LogonUserIdentity); if (button == "delete" || button == null) { PatService.DeleteReview(vm.Review, loggedInUser.LoginName); TempData[CommonConstants.FlashMessageTypeInfo] = string.Format("Review {0} deleted", vm.Review.ReviewId); return(RedirectToAction("Details", "Upload", new { id = vm.Review.UploadId })); } if (ModelState.IsValid) { if (vm.Review.AssessmentCode == DataConstants.AssessmentValid || vm.Review.AssessmentCode == DataConstants.AssessmentValidwithQualification) { vm.Review.OutcomeCode = DataConstants.FinalOutcomeValid_NFA; } if (vm.Review.AssessmentCode != vm.OldAssessmentOutcome) { vm.Review.AssessmentDate = DateTime.Now; } if (vm.Review.RecoveryReason != vm.OldRecoveryReason) { vm.Review.RecoveryReasonDate = DateTime.Now; } if (vm.Review.OutcomeCode != vm.OldOutcomeCode) { vm.Review.FinalOutcomeDate = DateTime.Now; } if (vm.Review.AssessmentAction != vm.OldAssessmentAction) { vm.Review.AssessmentActionDate = DateTime.Now; } // save the update vm.Review.UpdatedBy = loggedInUser.LoginName; PatService.UpdateReview(vm.Review); TempData[CommonConstants.FlashMessageTypeInfo] = string.Format("Review {0} successfully updated", vm.Review.ReviewId); return(RedirectToAction("Details", "Upload", new { id = vm.Review.UploadId })); } var projectId = AppHelper.GetSessionProjectId(Session); if (projectId == 0) { return(RedirectToProjectsList()); } var project = PatService.GetProject(projectId); ViewBag.IsProjectContractMonitoringOrContractSiteVisit = project != null && project.IsContractMonitoringOrContractSiteVisit(); ViewBag.CanEditCheckList = project != null && project.CanEditCheckList(User.Identity.Name.RemoveDomain()); var questionnaire = PatService.GetReviewQuestionnaire(vm.Review.ReviewId); ViewBag.AnyQuestionsAndAnswers = questionnaire != null; // get the View Data back ViewData["review-details"] = AppHelper.GetSessionReviewDetails(Session); ViewData["related-data"] = AppHelper.GetSessionRelatedData(Session); return(View(vm)); } catch (Exception ex) { ErrorLog.GetDefault(null).Log(new Error(ex)); return(View("Error", new HandleErrorInfo(ex, "Review", "Edit"))); } }
public static bool IsAdministrator(IIdentity userIdentity) { var user = new PatUser(userIdentity); return(user.IsAdministrator()); }