Пример #1
0
 private void ChangeStateAnswersSection(int oldSectionNumber, int newSectionNumber)
 {
     if (VoterAnswersState != null)
     {
         VoterAnswersData.VotersAnswersRow[] answerState =
             (VoterAnswersData.VotersAnswersRow[])VoterAnswersState.Select("QuestionId = " + QuestionId + " AND SectionNumber=" + oldSectionNumber);
         for (int i = 0; i < answerState.Length; i++)
         {
             answerState[i].SectionNumber = newSectionNumber;
         }
     }
 }
Пример #2
0
 private void DeleteStateAnswersForSection(int sectionNumber)
 {
     if (VoterAnswersState != null)
     {
         VoterAnswersData.VotersAnswersRow[] answerState =
             (VoterAnswersData.VotersAnswersRow[])VoterAnswersState.Select("QuestionId = " + QuestionId + " AND SectionNumber=" + sectionNumber);
         for (int i = 0; i < answerState.Length; i++)
         {
             VoterAnswersState.RemoveVotersAnswersRow(answerState[i]);
         }
     }
 }
Пример #3
0
        /// <summary>
        /// Parse the answer state and returns the
        /// answers of this question
        /// </summary>
        /// <returns></returns>
        protected virtual GridAnswerDataCollection GetGridVoterAnswers()
        {
            GridAnswerDataCollection gridAnswers = null;

            if (VoterAnswersState != null)
            {
                VoterAnswersData.VotersAnswersRow[] answerState =
                    (VoterAnswersData.VotersAnswersRow[])VoterAnswersState.Select("QuestionId = " + QuestionId);
                if (answerState != null && answerState.Length > 0)
                {
                    gridAnswers = new GridAnswerDataCollection();
                    for (int i = 0; i < answerState.Length; i++)
                    {
                        gridAnswers.Add(new GridAnswerData(answerState[i].QuestionId, answerState[i].AnswerId, answerState[i].SectionNumber, answerState[i].AnswerText, (AnswerTypeMode)answerState[i].TypeMode));
                    }
                }
            }

            return(gridAnswers);
        }
Пример #4
0
        /// <summary>
        /// A new section has been requested for edit
        /// Show a "new section" area with the section's answers
        /// </summary>
        protected virtual void AnswersGrid_EditSection(object sender, SectionAnswersItemEventArgs e)
        {
            _sectionTable.Controls.Clear();

            if (e.SectionAnswers != null)
            {
                PostedAnswerDataCollection postedAnswers = new PostedAnswerDataCollection();
                foreach (GridAnswerData answer in e.SectionAnswers)
                {
                    if (VoterAnswersState == null)
                    {
                        VoterAnswersData voterAnswersData = new VoterAnswersData();
                        voterAnswersData.EnforceConstraints = false;
                        VoterAnswersState = voterAnswersData.VotersAnswers;
                    }

                    VoterAnswersData.VotersAnswersRow voterAnswer = VoterAnswersState.NewVotersAnswersRow();
                    voterAnswer.AnswerId      = answer.AnswerId;
                    voterAnswer.QuestionId    = QuestionId;
                    voterAnswer.SectionNumber = -1;
                    voterAnswer.AnswerText    = answer.FieldText;
                    voterAnswer.VoterId       = -1;
                    VoterAnswersState.AddVotersAnswersRow(voterAnswer);
                }
            }

            // Dont use any default answers as we have
            // setup an existing answer set
            EnableAnswersDefault = false;

            AddSection(-1, 0);
            SectionCount  = 0;
            TargetSection = int.Parse(e.SectionNumber.ToString());
            AddSubmitSectionButtons(true);
            GridMode = SectionGridMode.Edit;
        }