/// <summary>
        /// Initializes a new quiz object; necessary in case the control has not yet loaded.  This will discared any existing quiz.
        /// </summary>
        public void InitQuiz()
        {
            if (m_AirportQuiz == null)
            {
                m_AirportQuiz = new AirportQuiz {
                    BluffCount = m_BluffCount
                };

                ViewState[keyQuiz] = m_AirportQuiz;
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            // set up a timeout function, in case the timer goes.
            Page.ClientScript.RegisterClientScriptBlock(GetType(), "TimeOut", "function TimeOutExpired() {" + Page.ClientScript.GetPostBackEventReference(new PostBackOptions(btnSkip)) + ";}", true);

            if (!IsPostBack)
            {
                InitQuiz();
            }
            else
            {
                m_AirportQuiz = (AirportQuiz)ViewState[keyQuiz];

                // We've been getting this a few times; Session could have timed out, so reset things.
                if (m_AirportQuiz == null)
                {
                    InitQuiz();
                }

                if (mvQuiz.ActiveViewIndex == 1)  // taking the quiz
                {
                    Boolean fCorrectAnswer = (rbGuesses.SelectedIndex == m_AirportQuiz.CurrentQuestion.CorrectAnswerIndex);

                    if (m_AirportQuiz.CurrentQuestion.CorrectAnswerIndex >= 0)
                    {
                        pRunningScore.Visible = true;
                        lblCorrect.Visible    = fCorrectAnswer;
                        lblIncorrect.Visible  = !fCorrectAnswer;

                        lblPreviousAnswer.Text = String.Format(System.Globalization.CultureInfo.CurrentCulture, Resources.LocalizedText.AirportGameCorrectAnswer, m_AirportQuiz.CurrentQuestion.Answers[m_AirportQuiz.CurrentQuestion.CorrectAnswerIndex].FullName);
                    }

                    if (fCorrectAnswer)
                    {
                        m_AirportQuiz.CorrectAnswerCount += 1;
                    }

                    if (m_AirportQuiz.CorrectAnswerCount > 0)
                    {
                        lblRunningScore.Text = String.Format(System.Globalization.CultureInfo.CurrentCulture, Resources.LocalizedText.AirportGameAnswerStatus, m_AirportQuiz.CorrectAnswerCount);
                    }
                }
            }
        }