/// <summary> /// Gets the document identifier from report. /// </summary> /// <param name="reportId">The report identifier.</param> /// <returns>The document identifier.</returns> public static string GetDocumentIdFromReport(string reportId) { List <string> errorMessages = new List <string>(); GetReportResponse getReportResponse; if (!CheckrApiUtility.GetReport(reportId, out getReportResponse, errorMessages)) { LogErrors(errorMessages); return(null); } if (getReportResponse.DocumentIds == null || getReportResponse.DocumentIds.Count == 0) { errorMessages.Add("No document found"); LogErrors(errorMessages); return(null); } string documentId = getReportResponse.DocumentIds[0]; if (documentId.IsNullOrWhiteSpace()) { errorMessages.Add("Empty document ID returned"); LogErrors(errorMessages); return(null); } return(documentId); }
/// <summary> /// Gets the URL to the background check report. /// Note: Also used by GetBackgroundCheck.ashx.cs, ProcessRequest( HttpContext context ) /// </summary> /// <param name="reportKey">The report key.</param> /// <returns></returns> public override string GetReportUrl(string reportKey) { var isAuthorized = this.IsAuthorized(Authorization.VIEW, this.GetCurrentPerson()); if (isAuthorized) { GetDocumentResponse getDocumentResponse; List <string> errorMessages = new List <string>(); if (CheckrApiUtility.GetDocument(reportKey, out getDocumentResponse, errorMessages)) { return(getDocumentResponse.DownloadUri); } else { LogErrors(errorMessages); } } else { return("Unauthorized"); } return(null); }
/// <summary> /// Get the Checkr packages and update the list on the server. /// </summary> /// <param name="errorMessages">The error messages.</param> /// <returns>True/False value of whether the request was successfully sent or not.</returns> public static bool UpdatePackages(List <string> errorMessages) { GetPackagesResponse getPackagesResponse; if (!CheckrApiUtility.GetPackages(out getPackagesResponse, errorMessages)) { return(false); } List <string> packages; using (var rockContext = new RockContext()) { var definedType = DefinedTypeCache.Get(Rock.SystemGuid.DefinedType.BACKGROUND_CHECK_TYPES.AsGuid()); DefinedValueService definedValueService = new DefinedValueService(rockContext); packages = definedValueService .GetByDefinedTypeGuid(Rock.SystemGuid.DefinedType.BACKGROUND_CHECK_TYPES.AsGuid()) .Where(v => v.ForeignId == 2) .ToList() .Select(v => { v.LoadAttributes(rockContext); return(v.GetAttributeValue("PMMPackageName").ToString()); }) // v => v.Value.Substring( CheckrConstants.TYPENAME_PREFIX.Length ) ) .ToList(); foreach (var packageRestResponse in getPackagesResponse.Data) { string packageName = packageRestResponse.Slug; if (!packages.Contains(packageName)) { DefinedValue definedValue = null; definedValue = new DefinedValue(); definedValue.DefinedTypeId = definedType.Id; definedValue.ForeignId = 2; definedValueService.Add(definedValue); definedValue.Value = CheckrConstants.CHECKR_TYPENAME_PREFIX + packageName.Replace('_', ' ').FixCase(); definedValue.Description = packageRestResponse.Name == "Educatio Report" ? "Education Report" : packageRestResponse.Name; rockContext.SaveChanges(); definedValue.LoadAttributes(rockContext); definedValue.SetAttributeValue("PMMPackageName", packageName); definedValue.SetAttributeValue("DefaultCounty", string.Empty); definedValue.SetAttributeValue("SendHomeCounty", "False"); definedValue.SetAttributeValue("DefaultState", string.Empty); definedValue.SetAttributeValue("SendHomeState", "False"); definedValue.SetAttributeValue("MVRJurisdiction", string.Empty); definedValue.SetAttributeValue("SendHomeStateMVR", "False"); definedValue.SaveAttributeValues(rockContext); } } } DefinedValueCache.Clear(); return(true); }
/// <summary> /// Creates the invitation. /// </summary> /// <param name="candidateId">The candidate identifier.</param> /// <param name="package">The package.</param> /// <param name="errorMessages">The error messages.</param> /// <param name="request">The request.</param> /// <param name="response">The response.</param> /// <returns>True/False value of whether the request was successfully sent or not.</returns> public static bool CreateInvitation(string candidateId, string package, List <string> errorMessages) { CreateInvitationResponse createInvitationResponse; if (CheckrApiUtility.CreateInvitation(candidateId, package, out createInvitationResponse, errorMessages)) { candidateId = createInvitationResponse.Id; return(true); } return(false); }
/// <summary> /// Creates the candidate. /// </summary> /// <param name="person">The person.</param> /// <param name="candidateId">The candidate identifier.</param> /// <param name="errorMessages">The error messages.</param> /// <returns>True/False value of whether the request was successfully sent or not.</returns> public static bool CreateCandidate(Person person, out string candidateId, List <string> errorMessages) { CreateCandidateResponse createCandidateResponse; candidateId = null; if (CheckrApiUtility.CreateCandidate(person, out createCandidateResponse, errorMessages)) { candidateId = createCandidateResponse.Id; return(true); } return(false); }