public ActionResult PatientQuestionnaireChat(string patientId, string PRO, int?episodeId) { Questionnaire q = null; Format f; QuestionnaireUserResponseGroup group; try { var result = this.userQuestionnaireClient.GetQuestionnaireForPatient(patientId, PRO, episodeId, Platform.Chat); q = result.Questionnaire; f = result.Format; group = result.QuestionnaireUserResponseGroup; QuestionnaireFormatRenderer renderer = new QuestionnaireFormatRenderer(Platform.Chat); string html = renderer.GenerateUi(q, f, group.Responses); ViewBag.html += "<input type=\"hidden\" name=\"questionnaireId\" value=" + q.Id + "><input type=\"hidden\" name=\"groupId\" value=\"" + group.Id + "\">"; renderer.Model.QuestionnaireId = q.Id.ToString(); renderer.Model.GroupId = group.Id.ToString(); renderer.Model.Anonymous = string.Empty; // Format properties renderer.Model.ShowProgressBar = !f.HasAttribute(QuestionnaireFormatAttributes.HideProgressBar); renderer.Model.CanSavePartial = true; foreach (WebsiteSupportLibrary.Models.QuestionnaireItem item in renderer.Model.Items) { item.ResponsePanel.CanSkip = true; item.ResponsePanel.PreventEdit = true; } return(View(renderer.Model)); } catch (Exception) { if (q == null) { ViewBag.ErrorMessage = "There is currently no questionnaire available for you with this name"; } else { ViewBag.ErrorMessage = "An error has occurred trying to retrieve the Pro. Please go back and try again."; } } return(View()); }
/// <summary> /// Loads a Pro to display /// </summary> /// <param name="PRO">The name of the Pro</param> /// <param name="Display">The name of the format</param> /// <param name="Anonymous">The anonymous access string (either this or the previous 2 must be here)</param> /// <returns>The view to display</returns> public ActionResult AnonQuestionnaireChat(string PRO, string Display, string Anonymous) { Questionnaire q = null; Format f; QuestionnaireUserResponseGroup group; try { if (Anonymous != null) { var result = this.userQuestionnaireClient.GetQuestionnaireAnonymous(Anonymous, Platform.Chat); q = result.Questionnaire; f = result.Format; group = result.QuestionnaireUserResponseGroup; ViewBag.html = "<input type=\"hidden\" name=\"anonymous\" value=" + Anonymous + ">"; QuestionnaireFormatRenderer renderer = new QuestionnaireFormatRenderer(Platform.Chat); string html = renderer.GenerateUi(q, f, group.Responses); //ViewBag.html += ViewBag.html += "<input type=\"hidden\" name=\"questionnaireId\" value=" + q.Id + "><input type=\"hidden\" name=\"groupId\" value=\"" + group.Id + "\">"; renderer.Model.QuestionnaireId = q.Id.ToString(); renderer.Model.GroupId = group.Id.ToString(); renderer.Model.Anonymous = Anonymous; return(View(renderer.Model)); } } catch (Exception) { if (q == null) { ViewBag.ErrorMessage = "There is currently no questionnaire available for you with this name"; } else { ViewBag.ErrorMessage = "An error has occurred trying to retrieve the Pro. Please go back and try again."; } } return(View()); }