コード例 #1
0
ファイル: PatientController.cs プロジェクト: eugeb/Custom2
        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());
        }
コード例 #2
0
ファイル: HomeController.cs プロジェクト: eugeb/Custom2
        /// <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());
        }