We are very close. I need you to hang in there with me just a bit longer. Can you open this file:
It is in the Survey directory. You can just open it with notepad. Then find the code between:
Private Sub cmdSubmit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmdSubmit.Click
Dim objRadioButtonList As RadioButtonList
Dim objCheckBoxList As CheckBoxList
Dim objSurvey As SurveyInfo
Dim intSurvey As Integer
Dim objSurveyOption As New SurveyOptionInfo
Dim intSurveyOption As Integer
Dim intQuestion As Integer
Dim intOption As Integer
Dim blnValid As Boolean = True
Dim blntmpValid As Boolean = False
intQuestion = -1
Dim arrSurveys As List(Of SurveyInfo) = SurveyController.GetSurveys(ModuleId)
For intSurvey = 0 To arrSurveys.Count - 1
objSurvey = arrSurveys(intSurvey)
intQuestion += 1
Select Case objSurvey.OptionType
Case "R"
objRadioButtonList = Me.FindControl("lstSurvey").Controls(intQuestion).FindControl("optOptions")
If Not IsNothing(objRadioButtonList) Then
If objRadioButtonList.SelectedIndex = -1 Then
blnValid = False
End If
End If
Case "C"
objCheckBoxList = Me.FindControl("lstSurvey").Controls(intQuestion).FindControl("chkOptions")
blntmpValid = False
intOption = -1
Dim arrSurveyOptions As List(Of SurveyOptionInfo) = SurveyOptionController.GetSurveyOptions(objSurvey.SurveyId)
For intSurveyOption = 0 To arrSurveyOptions.Count - 1
intOption += 1
If Not IsNothing(objCheckBoxList.Items(intOption)) Then
If objCheckBoxList.Items(intOption).Selected = True Then
blntmpValid = True
End If
End If
Next
If blntmpValid = False Then
blnValid = False
End If
End Select
Next
If blnValid Then
intQuestion = -1
For intSurvey = 0 To arrSurveys.Count - 1
objSurvey = CType(arrSurveys(intSurvey), SurveyInfo)
intQuestion += 1
Select Case objSurvey.OptionType
Case "R"
If Not IsNothing(Me.FindControl("lstSurvey").Controls(intQuestion).FindControl("optOptions")) Then
objRadioButtonList = Me.FindControl("lstSurvey").Controls(intQuestion).FindControl("optOptions")
objSurveyOption.SurveyOptionId = Convert.ToInt32(objRadioButtonList.SelectedValue)
If blnPersonalVoteTracking = True Then
SurveyOptionController.AddSurveyResult(objSurveyOption, UserId)
Else
SurveyOptionController.AddSurveyResult_cookie(objSurveyOption, UserId)
End If
End If
Case "C"
intOption = -1
objCheckBoxList = Me.FindControl("lstSurvey").Controls(intQuestion).FindControl("chkOptions")
Dim arrSurveyOptions As List(Of SurveyOptionInfo) = SurveyOptionController.GetSurveyOptions(objSurvey.SurveyId)
For intSurveyOption = 0 To arrSurveyOptions.Count - 1
objSurveyOption = CType(arrSurveyOptions(intSurveyOption), SurveyOptionInfo)
intOption += 1
If Not IsNothing(objCheckBoxList.Items(intOption)) Then
If objCheckBoxList.Items(intOption).Selected = True Then
If blnPersonalVoteTracking = True Then
SurveyOptionController.AddSurveyResult(objSurveyOption, UserId)
Else
SurveyOptionController.AddSurveyResult_cookie(objSurveyOption, UserId)
End If
End If
End If
Next
End Select
Next
Message_Label.Text = Localization.GetString("SurveyComplete", Me.LocalResourceFile)
If blnPersonalVoteTracking = True Then
' This means the module vote tracking is using personalization, so set the profile to show they have voted
DotNetNuke.Services.Personalization.Personalization.SetProfile(ModuleId.ToString, "Voted", True)
blnVoted = True
DisplayResults()
Else
' Store a cookie to show the chart after the submit
Dim objCookie As HttpCookie = New HttpCookie("_Module" & ModuleId.ToString & "_Survey")
objCookie.Value = "True"
objCookie.Expires = DateTime.MaxValue ' never expires
Response.AppendCookie(objCookie)
blnVoted = True
DisplayResults()
End If
Else
Message_Label.Text = Localization.GetString("SurveyIncomplete", Me.LocalResourceFile)
End If
End Sub