private void ReloadAllFields(PreRenewalQuestionare template)
        {
            txtAssistantExecutiveEmail.Text = template.AssistantExecutiveEmail;
            txtAssistantExecutiveName.Text  = template.AssistantExecutiveName;
            txtAssistantExecutivePhone.Text = template.AssistantExecutivePhone;
            txtAssistantExecutiveTitle.Text = template.AssistantExecutiveTitle;
            txtAssitantExecDepartment.Text  = template.AssistantExecDepartment;

            txtBranchAddress1.Text = template.OAMPSBranchAddress;
            txtBranchAddress2.Text = template.OAMPSBranchAddressLine2;

            txtClaimExecDepartment.Text  = template.ClaimsExecDepartment;
            txtClaimsExecutiveEmail.Text = template.ClaimsExecutiveEmail;
            txtClaimsExecutiveName.Text  = template.ClaimsExecutiveName;
            txtClaimsExecutivePhone.Text = template.ClaimsExecutivePhone;
            txtClaimsExecutiveTitle.Text = template.ClaimsExecutiveTitle;

            txtClientCommonName.Text = template.ClientCommonName;
            txtClientName.Text       = template.ClientName;

            txtExecutiveDepartment.Text = template.ExecutiveDepartment;
            txtExecutiveEmail.Text      = template.ExecutiveEmail;
            txtExecutiveName.Text       = template.ExecutiveName;
            txtExecutivePhone.Text      = template.ExecutivePhone;
            txtExecutiveTitle.Text      = template.ExecutiveTitle;

            txtOtherExecDepartment.Text = template.OtherExecDepartment;
            txtOtherContactEmail.Text   = template.OtherContactEmail;
            txtOtherContactName.Text    = template.OtherContactName;
            txtOtherContactPhone.Text   = template.OtherContactPhone;
            txtOtherContactTitle.Text   = template.OtherContactTitle;
        }
        private void PreRenewalQuestionareWizard_Load(object sender, EventArgs e)
        {
            tbcWizardScreens.TabPages.Remove(tabPolicyClass);
            txtClientName.Focus();
            txtClientName.Select();

            var auto = false;

            WizardBeingUpdated = true;

            var uiScheduler = TaskScheduler.FromCurrentSynchronizationContext();

            if (Cache.Contains(Constants.CacheNames.RegenerateTemplate))
            {
                Reload = false;

                var template = GetCachedTempalteObject <PreRenewalQuestionare>();
                lblCoverPageTitle.Text = template.CoverPageTitle;
                lblLogoTitle.Text      = template.LogoTitle;

                _selectedQuestionnaireFragments = template.SelectedDocumentFragments;
                LoadDataSources(null); //dont use new thread

                ReloadAllFields(template);
                ReloadPolicyClasses(true);

                rdoWariningYes.Checked = template.PopulateClaimMadeWarning;
                rdoApprovalYes.Checked = template.PopulateApprovalForm;

                auto = true;
            }
            else
            {
                if (Reload)
                {
                    LoadDataSources(null); //dont use new thread

                    var template = new PreRenewalQuestionare();
                    template = (PreRenewalQuestionare)_presenter.LoadData(template);

                    ReloadAllFields(template);
                    ReloadPolicyClasses(false);

                    var claimsMade    = _presenter.ReadDocumentProperty(Constants.WordDocumentProperties.ClaimsMadeWarning);
                    var approvalForms = _presenter.ReadDocumentProperty(Constants.WordDocumentProperties.ApprovalForm);

                    if (String.Equals(claimsMade, "true", StringComparison.OrdinalIgnoreCase))
                    {
                        rdoWariningYes.Checked = true;
                    }

                    if (String.Equals(approvalForms, "true", StringComparison.OrdinalIgnoreCase))
                    {
                        rdoApprovalYes.Checked = true;
                    }
                }
                else
                {
                    Task.Factory.StartNew(() =>
                    {
                        LoadDataSources(uiScheduler);
                        LoadQuestions(uiScheduler);
                    });
                }
            }

            base.LoadGenericImageTabs(uiScheduler, tbcWizardScreens, lblCoverPageTitle.Text, lblLogoTitle.Text);

            WizardBeingUpdated = false;

            if (auto)
            {
                base.StartTimer();
            }
        }
        private PreRenewalQuestionare GenerateTempalteObject()
        {
            //buid the marketing template
            var template = new PreRenewalQuestionare
            {
                DocumentTitle    = BasePresenter.ReadDocumentProperty("Title"),//Constants.TemplateNames.InsuranceRenewalReport,
                DocumentSubTitle = string.Empty,
                ClientName       = txtClientName.Text,
                ClientCommonName = txtClientCommonName.Text,

                PeriodOfInsuranceFrom = dtpPeriodOfInsuranceFrom.Text,
                PeriodOfInsuranceTo   = dtpPeriodOfInsuranceTo.Text,

                ExecutiveName       = txtExecutiveName.Text,
                ExecutiveEmail      = txtExecutiveEmail.Text,
                ExecutivePhone      = txtExecutivePhone.Text,
                ExecutiveTitle      = txtExecutiveTitle.Text,
                ExecutiveMobile     = txtExecutiveMobile.Text,
                ExecutiveDepartment = txtExecutiveDepartment.Text,

                AssistantExecutiveName  = txtAssistantExecutiveName.Text,
                AssistantExecutiveTitle = txtAssistantExecutiveTitle.Text,
                AssistantExecutivePhone = txtAssistantExecutivePhone.Text,
                AssistantExecutiveEmail = txtAssistantExecutiveEmail.Text,
                AssistantExecDepartment = txtAssitantExecDepartment.Text,


                ClaimsExecutiveName  = txtClaimsExecutiveName.Text,
                ClaimsExecutiveTitle = txtClaimsExecutiveTitle.Text,
                ClaimsExecutivePhone = txtClaimsExecutivePhone.Text,
                ClaimsExecutiveEmail = txtClaimsExecutiveEmail.Text,
                ClaimsExecDepartment = txtClaimExecDepartment.Text,

                OtherContactName    = txtOtherContactName.Text,
                OtherContactTitle   = txtOtherContactTitle.Text,
                OtherContactPhone   = txtOtherContactPhone.Text,
                OtherContactEmail   = txtOtherContactEmail.Text,
                OtherExecDepartment = txtOtherExecDepartment.Text,

                OAMPSBranchAddress      = txtBranchAddress1.Text,
                OAMPSBranchAddressLine2 = txtBranchAddress2.Text,
                DatePrepared            = DateTime.Now.ToString(@"dd/MM/yyyy"),

                SelectedDocumentFragments = _selectedQuestionnaireFragments,
                PopulateApprovalForm      = _populateApprovalForm,
                PopulateClaimMadeWarning  = _populateClaimMadeWarning
            };


            var baseTemplate = (BaseTemplate)template;
            var logoTab      = tbcWizardScreens.TabPages[Constants.ControlNames.TabPageLogosName];

            PopulateLogosToTemplate(logoTab, ref baseTemplate);

            var covberTab =
                tbcWizardScreens.TabPages[Constants.ControlNames.TabPageCoverPagesName];

            PopulateCoversToTemplate(covberTab, ref baseTemplate);

            return(template);
        }