/// <summary> /// Binds Questions belonging to selected Meta Survey /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void BindQuestionsGrid(object sender, EventArgs e) { if (!string.IsNullOrEmpty(SurveyList.Value)) { SaveBtn.Visible = true; PreviewBtn.Visible = true; int metaSurveyId = int.Parse(SurveyList.Value); string metaSurveyName = SurveyList.SelectedItem.Text; // Set Preview URL string previewURL = "~/Plugins/SurveyPlugin/SurveyWizardPage.aspx?surveyType=" + metaSurveyName + "&preview=true"; PreviewBtn.NavigateUrl = previewURL; // set survey fields, title version etc... MetadataSurvey biz = new MetadataSurvey(); biz.Get(metaSurveyId); CICHelper.SetFieldValues(SurveyFields.Controls, biz); SurveyFields.Visible = true; PreviewBtn.Visible = true; DeleteBtn.Visible = true; } else { SurveyFields.Visible = false; SaveBtn.Visible = false; PreviewBtn.Visible = false; DeleteBtn.Visible = false; } }
/// <summary> /// /// </summary> /// <param name="metaSurveyId"></param> protected void BuildEligibilityQuestionnaire(int metaSurveyId) { QuestionsGrid.Visible = true; MetadataSurveyId.Value = metaSurveyId.ToString(); MetadataSurvey biz = new MetadataSurvey(); biz.Get(metaSurveyId); SurveyType.Value = biz[MetadataSurvey.SurveyType].ToString(); //MetadataSurveyQuestion questionsBiz = new MetadataSurveyQuestion(); //questionsBiz.GetByParent(metaSurveyId); //QuestionsGrid.DataSource = questionsBiz.DataSourceView; QuestionsGrid.DataSource = BusinessObject.GetByParentAsDataView <MetadataSurveyQuestion>(metaSurveyId); QuestionsGrid.DataBind(); DataEntryPanel.Visible = true; // Detmerine if assoication exits DataTable versionsToSurvey = ProtocolMgmtDa.GetProtocolVersionsBySurvey(metaSurveyId); // can edit survey when 0 associations or 1 association exists bool isGridEditable = !(versionsToSurvey.Rows.Count > 1); // Grid is disabled, as well as text fields and buttons for data entry QuestionsGrid.Enabled = isGridEditable; SurveyType.Enabled = isGridEditable; SaveBtn.Visible = isGridEditable; AddRowBtn.Visible = isGridEditable; ReadOnlyMessage.Visible = !isGridEditable; }
/// <summary> /// /// </summary> /// <param name="metadataSurveyId"></param> private void UpdateMetadataSurvey(int metadataSurveyId) { MetadataSurvey biz = new MetadataSurvey(); biz.Get(metadataSurveyId); biz[MetadataSurvey.SurveyType] = SurveyType.Value; biz.Save(); }
/// <summary> /// Creates a new MetadataSurvey /// </summary> private void Save() { BOL.MetadataSurvey survey = new MetadataSurvey(); CICHelper.SetBOValues(this.Controls, survey, -1); survey.Save(); int metaSurveyId = (int)survey[survey.PrimaryKeyName]; // register update client script Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "reloadSurveys", "closeAndReloadSurveys('" + metaSurveyId + "');", true); }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void DeleteClick(object sender, EventArgs e) { if (!string.IsNullOrEmpty(CurrentSurveyId.Value)) { // delete survey MetadataSurvey biz = new MetadataSurvey(); biz.Delete(int.Parse(CurrentSurveyId.Value)); // reload page to ensure polling fresh data Response.Redirect("Surveys_Edit.aspx?diseaseId=" + QueryDiseaseId, true); } }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void DeleteSurvey(object sender, EventArgs e) { if (!string.IsNullOrEmpty(SurveyList.Value)) { // delete metadata survey MetadataSurvey biz = new MetadataSurvey(); biz.Delete(int.Parse(SurveyList.Value)); // reload page to ensure polling fresh data Page.ClientScript.RegisterStartupScript(this.GetType(), "closeAndReloadSurveys", "closeAndReloadSurveys();", true); //Response.Redirect("AdminSurveyPage.aspx", true); } }
protected void CreateNewSurvey(object sender, EventArgs e) { // Create new Survey Record MetadataSurvey biz = new MetadataSurvey(); CICHelper.SetBOValues(CreateSurveyLayer.Controls, biz, 0); biz.Save(); // Rebind list of Surveys and set selcted as new Survey BuildSurveyList(); SurveyList.Value = biz[MetadataSurvey.MetadataSurveyId].ToString(); // Reset Values In New Survey Layer CICHelper.ClearCaisisInputControlValues(CreateSurveyLayer); // Bind Grid BindQuestionsGrid(sender, e); }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void AddNewQuestionnaire(object sender, EventArgs e) { if (!string.IsNullOrEmpty(NewQuestionnaireName.Text)) { MetadataSurvey biz = new MetadataSurvey(); biz[MetadataSurvey.SurveyCategory] = ELIGIBILITY_SURVEY_CATEGORY; biz[MetadataSurvey.SurveyType] = NewQuestionnaireName.Text; biz.Save(); // reset field NewQuestionnaireName.Text = string.Empty; // build verions BindProtocolVersions(); // set active survey BuildEligibilityQuestionnaire((int)biz[MetadataSurvey.MetadataSurveyId]); } }
/// <summary> /// Saves the metadata for Survey and its questions and responses /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void SaveQuestions(object sender, EventArgs e) { int metaSurveyId = int.Parse(SurveyList.Value); // update survey if needed if (surveyDirty) { MetadataSurvey biz = new MetadataSurvey(); biz.Get(metaSurveyId); CICHelper.SetBOValues(SurveyFields.Controls, biz, -1); biz.Save(); // rebuild survey list to reflect updated title,etc... BuildSurveyList(); // select survey SurveyList.Value = metaSurveyId.ToString(); } // Rebind Grid BindQuestionsGrid(sender, e); }
/// <summary> /// Binds Questions belonging to selected Meta Survey /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void BindQuestionsGrid(object sender, EventArgs e) { if (!string.IsNullOrEmpty(SurveyList.Value)) { SurveyQuestionsGrid.Visible = true; SaveBtn.Visible = true; PreviewBtn.Visible = true; int metaSurveyId = int.Parse(SurveyList.Value); string metaSurveyName = SurveyList.SelectedItem.Text; // Set Preview URL string previewURL = "~/Plugins/SurveyPlugin/SurveyWizardPage.aspx?surveyType=" + metaSurveyName + "&preview=true"; PreviewBtn.NavigateUrl = previewURL; //MetadataSurveyQuestion metaQuestion = new MetadataSurveyQuestion(); //metaQuestion.GetByParent(metaSurveyId); //DataView questionsView = metaQuestion.DataSourceView; DataView questionsView = BusinessObject.GetByParentAsDataView <MetadataSurveyQuestion>(metaSurveyId); questionsView.Table.Columns.Add(new DataColumn("ColSortOrder", typeof(Int32), "ISNULL(SortNumber," + int.MaxValue + ")")); questionsView.Sort = "ColSortOrder ASC"; SurveyQuestionsGrid.DataSource = questionsView; SurveyQuestionsGrid.DataBind(); // set survey fields, title version etc... MetadataSurvey biz = new MetadataSurvey(); biz.Get(metaSurveyId); CICHelper.SetFieldValues(SurveyFields.Controls, biz); SurveyFields.Visible = true; PreviewBtn.Visible = true; DeleteBtn.Visible = true; } else { SurveyFields.Visible = false; SurveyQuestionsGrid.Visible = false; SaveBtn.Visible = false; PreviewBtn.Visible = false; DeleteBtn.Visible = false; } }