Example #1
0
        public void LogUsage(IBaseTemplate template, Helpers.Enums.UsageTrackingType trackingType)
        {
            var list      = new SharePointList(Settings.Default.SharePointContextUrl, Settings.Default.UsageReportingListName);
            var presenter = new SharePointListPresenter(list, this);

            var segment           = string.Empty;
            var wholesaleOrRetail = string.Empty;
            var title             = "Unknown";
            var userDep           = "Unable to locate";
            var userOffice        = "Unable to locate";

            var type = this.GetType().Name;

            switch (type)
            {
            case "InsuranceRenewalReportWizard":
            {
                var form = ((InsuranceRenewalReportWizard)this);
                segment           = ConvertSegementToNumberical(form._selectedSegment);
                wholesaleOrRetail = form._selectedStatutory.ToString();
                title             = Constants.TemplateNames.InsuranceRenewalReport;
                break;
            }

            case "ClientDiscoveryWizard":
            {
                var form = ((ClientDiscoveryWizard)this);
                title = Constants.TemplateNames.ClientDiscovery;
                break;
            }

            case "PreRenewalAgendaWizard":
            {
                var form = ((PreRenewalAgendaWizard)this);
                title = Constants.TemplateNames.PreRenewalAgenda;
                break;
            }

            case "RenewalLetterWizard":
            {
                var form = ((RenewalLetterWizard)this);
                title = Constants.TemplateNames.RenewalLetter;
                break;
            }

            case "SummaryOfDiscussionWizard":
            {
                var form = ((SummaryOfDiscussionWizard)this);
                title = Constants.TemplateNames.FileNote;
                break;
            }
            }
            Task.Factory.StartNew(() =>
            {
                var user = FindCurrentUserInAD();
                if (user != null)
                {
                    userDep    = user.Branch;
                    userOffice = user.Suburb;
                }
                presenter.LogUsage(trackingType.ToString(), title, template.ExecutiveName, userDep, userOffice, template.ClientName, segment, wholesaleOrRetail, DateTime.Now.ToShortDateString(), DateTime.Now.ToString("h:mm.ss tt"));
            }, CancellationToken.None);
        }
Example #2
0
        public void LogUsage(IBaseTemplate template, Helpers.Enums.UsageTrackingType trackingType)
        {
            try
            {
                var list      = new SharePointList(Settings.Default.SharePointContextUrl, Settings.Default.UsageReportingListName);
                var presenter = new SharePointListPresenter(list, this);

                var segment           = string.Empty;
                var wholesaleOrRetail = string.Empty;
                var title             = "Unknown";
                var userDep           = "Unable to locate";
                var userOffice        = "Unable to locate";

                var type = this.GetType().Name;

                switch (type)
                {
                case "InsuranceRenewalReportWizard":
                {
                    var form = ((InsuranceRenewalReportWizard)this);
                    segment           = ConvertSegementToNumberical(form._selectedSegment);
                    wholesaleOrRetail = form._selectedStatutory.ToString();
                    title             = Constants.TemplateNames.InsuranceRenewalReport;
                    break;
                }

                case "ClientDiscoveryWizard":
                {
                    //var form = ((ClientDiscoveryWizard) this);
                    title = Constants.TemplateNames.ClientDiscovery;
                    break;
                }

                case "PreRenewalAgendaWizard":
                {
                    //var form = ((PreRenewalAgendaWizard) this);
                    title = Constants.TemplateNames.PreRenewalAgenda;
                    break;
                }

                case "RenewalLetterWizard":
                {
                    //var form = ((RenewalLetterWizard) this);
                    title = Constants.TemplateNames.RenewalLetter;
                    break;
                }

                case "SummaryOfDiscussionWizard":
                {
                    //var form = ((SummaryOfDiscussionWizard) this);
                    title = Constants.TemplateNames.FileNote;
                    break;
                }


                case "GenericLetterWizard":
                {
                    //var form = ((GenericLetterWizard)this);
                    title = Constants.TemplateNames.GenericLetter;
                    break;
                }

                case "PreRenewalQuestionareWizard":
                {
                    title = "Fact Finder";     //todo: need to move this to constants once we can update value in ShaerPoint. (currently Pre Renewal Questionaire and cannot be changed until new wizard is released)
                    break;
                }
                }
                Task.Factory.StartNew(() =>
                {
                    var user = FindCurrentUserInAD();
                    if (user != null)
                    {
                        userDep    = user.Branch;
                        userOffice = user.Suburb;
                    }
                    presenter.LogUsage(trackingType.ToString(), title, template.ExecutiveName, userDep, userOffice, template.ClientName, segment, wholesaleOrRetail, DateTime.Now.ToShortDateString(), DateTime.Now.TimeOfDay.ToString());
                }, CancellationToken.None).ContinueWith((task =>
                {
                    if (task.IsFaulted)
                    {
                        OnError(task.Exception);
                    }
                }));
            }
            catch (Exception ex)
            {
                OnError(ex);
            }
        }