private void Report2ParamsChanged(ReportParameters param)
 {
     if (param != null)
     {
         new ReportCollector(null, reportGenerated, param, rightReportTree, UISharedRTClient.Instance.clienRt);
     }
 }
Exemple #2
0
        public ReportParameters getReportParams(bool forceDlg)
        {
            if (_parameters != null && !forceDlg)
            {
                return(_parameters);
            }

            var dlg = new SessionTopicDlg();

            dlg.ShowDialog();

            if (dlg.reportParameters != null)
            {
                Session    = dlg.reportParameters.session.Name;
                Topic      = dlg.reportParameters.topic.Name;
                Discussion = dlg.reportParameters.discussion.Subject;
            }
            else
            {
                Session    = "";
                Topic      = "";
                Discussion = "";
            }

            _parameters = dlg.reportParameters;

            return(_parameters);
        }
        private TextBlock GetTopicSummary(TopicReport report, ReportParameters param, bool total)
        {
            var txt = "  Cumulative duration: " + TimeSpan.FromSeconds(report.cumulativeDuration) + "\r\n";

            var nUsr = 0;

            if (total)
            {
                nUsr = report.GetNumAccumulatedParticipantsAmong();
            }
            else
            {
                nUsr = report.GetNumParticipantsAmong(param.requiredUsers);
            }
            txt += "  No. of users: " + nUsr + "\r\n";
            txt += "  No. of arg. points: " + report.numPoints + "\r\n";
            txt += "  No. of arg. points with description: " + report.numPointsWithDescription + "\r\n";
            txt += "  No. of media attachments: " + report.numMediaAttachments + "\r\n";
            txt += "  No. of sources: " + report.numSources + "\r\n";
            txt += "  No. of comments: " + report.numComments + "\r\n";
            if (!total)
            {
                txt += "  No. of clustered badges: " + report.numClusteredBadges + "\r\n";
            }
            txt += "  No. of clusters: " + report.numClusters + "\r\n";
            txt += "  No. of links: " + report.numLinks;

            var res = new TextBlock();

            res.Text = txt;
            return(res);
        }
        public ReportParameters getReportParams(bool forceDlg)
        {
            if (_parameters != null && !forceDlg)
                return _parameters;

            var dlg = new SessionTopicDlg();
            dlg.ShowDialog();

            if (dlg.reportParameters != null)
            {
                Session = dlg.reportParameters.session.Name;
                Topic = dlg.reportParameters.topic.Name;
                Discussion = dlg.reportParameters.discussion.Subject;
            }
            else
            {
                Session = "";
                Topic = "";
                Discussion = "";
            }

            _parameters = dlg.reportParameters;

            return _parameters;
        }
        private void OnJoined()
        {
            _clienRt.onJoin -= OnJoined;

            _clienRt.onScreenshotResponse += onScreenshotResponse;
            _clienRt.SendScreenshotRequest(_topic.Id, _disc.Id);

            var reportParameters = new Reporter.ReportParameters(
                                _session.Person.Select(p => p.Id).Distinct().ToList(),
                                _session, _topic, _disc);
            new ReportCollector(null, onReportGenerated, reportParameters, null, _clienRt);
        }
Exemple #6
0
        private void OnJoined()
        {
            _clienRt.onJoin -= OnJoined;

            _clienRt.onScreenshotResponse += onScreenshotResponse;
            _clienRt.SendScreenshotRequest(_topic.Id, _disc.Id);

            var reportParameters = new Reporter.ReportParameters(
                _session.Person.Select(p => p.Id).Distinct().ToList(),
                _session, _topic, _disc);

            new ReportCollector(null, onReportGenerated, reportParameters, null, _clienRt);
        }
        void GenerateReportTargets()
        {
            ReportTargets = new List <ReportParameters>();

            var ctx = new DiscCtx(Discussions.ConfigManager.ConnStr);

            var sessions = ctx.Session.ToList();

            var sessionIdToPersons = new Dictionary <int, List <Person> >();

            foreach (var session in sessions)
            {
                List <Person> sessionPersons = GetPersonsOfSession(session);
                sessionIdToPersons.Add(session.Id, sessionPersons);
            }

            var allTopics = new List <Topic>();

            var usersOfAllSessions = new List <Person>();

            foreach (var session in sessions)
            {
                //get users of current session
                foreach (var person in session.Person)
                {
                    if (usersOfAllSessions.All(u => u.Id != person.Id))
                    {
                        usersOfAllSessions.Add(person);
                    }

                    foreach (var persTopic in person.Topic)
                    {
                        if (allTopics.All(t => t.Id != persTopic.Id))
                        {
                            allTopics.Add(persTopic);

                            var reportParams = new ReportParameters(
                                sessionIdToPersons[session.Id].Select(p => p.Id).ToList(),
                                session,
                                persTopic,
                                persTopic.Discussion
                                );

                            ReportTargets.Add(reportParams);
                        }
                    }
                }
            }
        }
Exemple #8
0
 public static void Export(string reportPathName,
                           TopicReport topicReport1, ReportParameters params1,
                           EventTotalsReport eventTotals1,
                           TopicReport topicReport2, ReportParameters params2,
                           EventTotalsReport eventTotals2)
 {
     try
     {
         System.IO.File.WriteAllText(reportPathName, Export(topicReport1, params1, eventTotals1,
             topicReport2, params2, eventTotals2));
     }
     catch (IOException x)
     {
         MessageDlg.Show(x.ToString());
     }
 }
Exemple #9
0
 public static void Export(string reportPathName,
                           TopicReport topicReport1, ReportParameters params1,
                           EventTotalsReport eventTotals1,
                           TopicReport topicReport2, ReportParameters params2,
                           EventTotalsReport eventTotals2)
 {
     try
     {
         System.IO.File.WriteAllText(reportPathName, Export(topicReport1, params1, eventTotals1,
                                                            topicReport2, params2, eventTotals2));
     }
     catch (IOException x)
     {
         MessageDlg.Show(x.ToString());
     }
 }
        void GenerateReportTargets()
        {
            ReportTargets = new List<ReportParameters>();

            var ctx = new DiscCtx(Discussions.ConfigManager.ConnStr);

            var sessions = ctx.Session.ToList();

            var sessionIdToPersons = new Dictionary<int, List<Person>>();

            foreach (var session in sessions)
            {
                List<Person> sessionPersons = GetPersonsOfSession(session);
                sessionIdToPersons.Add(session.Id, sessionPersons);
            }

            var allTopics = new List<Topic>();

            var usersOfAllSessions = new List<Person>();
            foreach (var session in sessions)
            {
                //get users of current session             
                foreach (var person in session.Person)
                {
                    if (usersOfAllSessions.All(u => u.Id != person.Id))
                        usersOfAllSessions.Add(person);

                    foreach (var persTopic in person.Topic)
                    {
                        if (allTopics.All(t => t.Id != persTopic.Id))
                        {
                            allTopics.Add(persTopic);

                            var reportParams = new ReportParameters(
                                sessionIdToPersons[session.Id].Select(p => p.Id).ToList(),
                                session,
                                persTopic,
                                persTopic.Discussion
                                );

                            ReportTargets.Add(reportParams);
                        }
                    }
                }
            }
        }
Exemple #11
0
        private void btnOk_Click_1(object sender, RoutedEventArgs e)
        {
            if (lstSessions.SelectedItem == null || lstTopics.SelectedItem == null)
            {
                MessageDlg.Show("Please select session and topic to generate report");
                return;
            }

            _session = lstSessions.SelectedItem as Session;
            _topic   = lstTopics.SelectedItem as Topic;
            _users   = new List <int>();
            foreach (var pers in _session.Person)
            {
                _users.Add(pers.Id);
            }

            _reportParameters = new ReportParameters(Users, session, topic, lstDiscussions.SelectedItem as Discussion);

            Close();
        }
        public ReportCollector(TopicReportReady topicReportReady,
                               ReportReady reportGenerated,
                               ReportParameters reportParams,
                               object param, DiscussionsClientRT.ClientRT clientRt)
        {
            _reportParams = reportParams;

            _param    = param;
            _clientRT = clientRt;

            _ctx = new DiscCtx(Discussions.ConfigManager.ConnStr);

            _topicReportReady = topicReportReady;

            _allTopicsReport = new TopicReport(null, 0, 0, 0, 0, 0, 0, null, null, 0, 0, 0, 0, 0, 0, 0);

            _reportGenerated = reportGenerated;

            setListeners(true);

            topics = new List <Topic>()
            {
                _reportParams.topic
            };

            prepareArgPointReports();

            prepareEvents();

            if (topics.Count() > 0)
            {
                _clientRT.dEditorReportResponse += dEditorReportResponse;
                _clientRT.SendDEditorRequest(topics.First().Id);
            }
            else
            {
                finalizeReport();
            }
        }
        private TextBlock GetTopicSummary(TopicReport report, ReportParameters param, bool total)
        {
            var txt = "  Cumulative duration: " + TimeSpan.FromSeconds(report.cumulativeDuration) + "\r\n";

            var nUsr = 0;
            if (total)
                nUsr = report.GetNumAccumulatedParticipantsAmong();
            else
                nUsr = report.GetNumParticipantsAmong(param.requiredUsers);
            txt += "  No. of users: " + nUsr + "\r\n";
            txt += "  No. of arg. points: " + report.numPoints + "\r\n";
            txt += "  No. of arg. points with description: " + report.numPointsWithDescription + "\r\n";
            txt += "  No. of media attachments: " + report.numMediaAttachments + "\r\n";
            txt += "  No. of sources: " + report.numSources + "\r\n";
            txt += "  No. of comments: " + report.numComments + "\r\n";
            if (!total)
                txt += "  No. of clustered badges: " + report.numClusteredBadges + "\r\n";
            txt += "  No. of clusters: " + report.numClusters + "\r\n";
            txt += "  No. of links: " + report.numLinks;

            var res = new TextBlock();
            res.Text = txt;
            return res;
        }
Exemple #14
0
        private static string Export(TopicReport topicReport1, ReportParameters params1,
                                     EventTotalsReport eventTotals1,
                                     TopicReport topicReport2, ReportParameters params2,
                                     EventTotalsReport eventTotals2)
        {
            //write header
            var sb = new StringBuilder();

            sb.Append("SessionName;");
            sb.Append("TopicName;");
            sb.Append("NumUsers;");
            sb.Append("NumImages;");
            sb.Append("NumScreenshots;");
            sb.Append("NumPDFs;");
            sb.Append("NumVideos;");
            sb.Append("CumulativeDuration;");
            sb.Append("NumClusteredBadges;");
            sb.Append("NumClusters;");
            sb.Append("NumComments;");
            sb.Append("NumLinks;");
            sb.Append("NumMediaAttachments;");
            sb.Append("NumPoints;");
            sb.Append("NumPointsWithDescription;");
            sb.Append("NumSources;");
            sb.Append("TotalRecordingStarted;");
            sb.Append("TotalRecordingStopped;");
            sb.Append("TotalBadgeCreated;");
            sb.Append("TotalBadgeEdited;");
            sb.Append("TotalBadgeMoved;");
            sb.Append("TotalBadgeZoomIn;");
            sb.Append("TotalClusterCreated;");
            sb.Append("TotalClusterDeleted;");
            sb.Append("TotalClusterIn;");
            sb.Append("TotalClusterOut;");
            sb.Append("TotalClusterMoved;");
            sb.Append("TotalClusterTitlesAdded;");
            sb.Append("TotalClusterTitlesEdited;");
            sb.Append("TotalClusterTitlesRemoved;");
            sb.Append("TotalLinkCreated;");
            sb.Append("TotalLinkRemoved;");
            sb.Append("TotalFreeDrawingCreated;");
            sb.Append("TotalFreeDrawingRemoved;");
            sb.Append("TotalFreeDrawingResize;");
            sb.Append("TotalFreeDrawingMoved;");
            sb.Append("TotalSceneZoomedIn;");
            sb.Append("TotalSceneZoomedOut;");
            sb.Append("TotalArgPointTopicChanged;");
            sb.Append("TotalSourceAdded;");
            sb.Append("TotalSourceRemoved;");
            sb.Append("TotalImageAdded;");
            sb.Append("TotalImageUrlAdded;");
            sb.Append("TotalPdfAdded;");
            sb.Append("TotalPdfUrlAdded;");
            sb.Append("TotalYoutubeAdded;");
            sb.Append("TotalScreenshotAdded;");
            sb.Append("TotalMediaRemoved;");
            sb.Append("TotalCommentAdded;");
            sb.Append("TotalCommentRemoved;");
            sb.Append("TotalImageOpened;");
            sb.Append("TotalVideoOpened;");
            sb.Append("TotalScreenshotOpened;");
            sb.Append("TotalPdfOpened;");
            sb.Append("TotalSourceOpened;");
            sb.AppendLine("TotalLaserEnabled;");

            //first line
            AddSessionTopicRow(sb, topicReport1, params1, eventTotals1);

            //second line
            if (topicReport2 != null && params2 != null && eventTotals2 != null)
            {
                AddSessionTopicRow(sb, topicReport2, params2, eventTotals2);
            }

            return(sb.ToString());
        }
 private void Report2ParamsChanged(ReportParameters param)
 {
     if (param != null)
         new ReportCollector(null, reportGenerated, param, rightReportTree, UISharedRTClient.Instance.clienRt);
 }
        public static void ArgPointTotalsOverTopic(ReportParameters par, Topic topic,
                                                   out int numSrc, out int numComments, out int numImages,
                                                   out int numPdfs, out int numScreenshots, out int numYoutubes)
        {
            numSrc         = 0;
            numComments    = 0;
            numImages      = 0;
            numPdfs        = 0;
            numScreenshots = 0;
            numYoutubes    = 0;
            foreach (var pt in topic.ArgPoint)
            {
                if (par.requiredUsers.Contains(pt.Person.Id))
                {
                    numSrc += pt.Description.Source.Count();

                    foreach (var a in pt.Attachment)
                    {
                        switch ((AttachmentFormat)a.Format)
                        {
                        case AttachmentFormat.None:
                            break;

                        case AttachmentFormat.Jpg:
                            numImages++;
                            break;

                        case AttachmentFormat.Png:
                            numImages++;
                            break;

                        case AttachmentFormat.Bmp:
                            numImages++;
                            break;

                        case AttachmentFormat.Pdf:
                            numPdfs++;
                            break;

                        case AttachmentFormat.Youtube:
                            numYoutubes++;
                            break;

                        case AttachmentFormat.GeneralWebLink:
                            break;

                        case AttachmentFormat.PngScreenshot:
                            numScreenshots++;
                            break;

                        case AttachmentFormat.WordDocSet:
                            break;

                        case AttachmentFormat.ExcelDocSet:
                            break;

                        case AttachmentFormat.PowerPointDocSet:
                            break;

                        default:
                            throw new NotSupportedException();
                        }
                    }
                }

                foreach (var c in pt.Comment)
                {
                    if (c.Person == null)
                    {
                        return;
                    }

                    if (c.Text != "New feedback" && par.requiredUsers.Contains(c.Person.Id))
                    {
                        ++numComments;
                    }
                }
            }
        }
Exemple #17
0
 private static void AddSessionTopicRow(StringBuilder sb, TopicReport topicReport1,
                                        ReportParameters params1,
                                        EventTotalsReport eventTotals1)
 {
     sb.Append("\"" + params1.session.Name + "\"");
     sb.Append(";");
     sb.Append("\"" + params1.topic.Name + "\"");
     sb.Append(";");
     sb.Append(params1.sessionTopicUsers.Count());
     sb.Append(";");
     sb.Append(topicReport1.numImages);
     sb.Append(";");
     sb.Append(topicReport1.numScreenshots);
     sb.Append(";");
     sb.Append(topicReport1.numPDFs);
     sb.Append(";");
     sb.Append(topicReport1.numYoutubes);
     sb.Append(";");
     sb.Append(TimeSpan.FromSeconds(topicReport1.cumulativeDuration).ToString());
     sb.Append(";");
     sb.Append(topicReport1.numClusteredBadges.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numClusters.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numComments.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numLinks.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numMediaAttachments.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numPoints.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numPointsWithDescription.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numSources.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalRecordingStarted.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalRecordingStopped.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalBadgeCreated.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalBadgeEdited.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalBadgeMoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalBadgeZoomIn.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterCreated.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterDeleted.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterIn.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterOut.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterMoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterTitlesAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterTitlesEdited.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterTitlesRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalLinkCreated.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalLinkRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalFreeDrawingCreated.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalFreeDrawingRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalFreeDrawingResize.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalFreeDrawingMoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalSceneZoomedIn.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalSceneZoomedOut.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalArgPointTopicChanged.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalSourceAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalSourceRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalImageAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalImageUrlAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalPdfAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalPdfUrlAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalYoutubeAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalScreenshotAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalMediaRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalCommentAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalCommentRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalImageOpened.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalVideoOpened.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalScreenshotOpened.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalPdfOpened.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalSourceOpened.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalLaserEnabled.ToString() + ";");
 }
        private void btnOk_Click_1(object sender, RoutedEventArgs e)
        {
            if (lstSessions.SelectedItem == null || lstTopics.SelectedItem == null)
            {
                MessageDlg.Show("Please select session and topic to generate report");
                return;
            }

            _session = lstSessions.SelectedItem as Session;
            _topic = lstTopics.SelectedItem as Topic;
            _users = new List<int>();
            foreach (var pers in _session.Person)
                _users.Add(pers.Id);

            _reportParameters = new ReportParameters(Users, session, topic, lstDiscussions.SelectedItem as Discussion);

            Close();
        }
Exemple #19
0
        public ReportCollector(TopicReportReady topicReportReady,
                               ReportReady reportGenerated,
                               ReportParameters reportParams,
                               object param, DiscussionsClientRT.ClientRT clientRt)
        {
            _reportParams = reportParams;

            _param = param;
            _clientRT = clientRt;

            _ctx = new DiscCtx(Discussions.ConfigManager.ConnStr);

            _topicReportReady = topicReportReady;

            _allTopicsReport = new TopicReport(null, 0, 0, 0, 0, 0, 0, null, null, 0, 0, 0, 0, 0, 0, 0);

            _reportGenerated = reportGenerated;

            setListeners(true);

            topics = new List<Topic>() {_reportParams.topic};

            prepareArgPointReports();

            prepareEvents();

            if (topics.Count() > 0)
            {
                _clientRT.dEditorReportResponse += dEditorReportResponse;
                _clientRT.SendDEditorRequest(topics.First().Id);
            }
            else
            {
                finalizeReport();
            }
        }
Exemple #20
0
        public static void ArgPointTotalsOverTopic(ReportParameters par, Topic topic,
                                                   out int numSrc, out int numComments, out int numImages,
                                                   out int numPdfs, out int numScreenshots, out int numYoutubes)
        {
            numSrc = 0;
            numComments = 0;
            numImages = 0;
            numPdfs = 0;
            numScreenshots = 0;
            numYoutubes = 0;
            foreach (var pt in topic.ArgPoint)
            {
                if (par.requiredUsers.Contains(pt.Person.Id))
                {
                    numSrc += pt.Description.Source.Count();

                    foreach (var a in pt.Attachment)
                    {
                        switch ((AttachmentFormat) a.Format)
                        {
                            case AttachmentFormat.None:
                                break;
                            case AttachmentFormat.Jpg:
                                numImages++;
                                break;
                            case AttachmentFormat.Png:
                                numImages++;
                                break;
                            case AttachmentFormat.Bmp:
                                numImages++;
                                break;
                            case AttachmentFormat.Pdf:
                                numPdfs++;
                                break;
                            case AttachmentFormat.Youtube:
                                numYoutubes++;
                                break;
                            case AttachmentFormat.GeneralWebLink:
                                break;
                            case AttachmentFormat.PngScreenshot:
                                numScreenshots++;
                                break;
                            case AttachmentFormat.WordDocSet:
                                break;
                            case AttachmentFormat.ExcelDocSet:
                                break;
                            case AttachmentFormat.PowerPointDocSet:
                                break;
                            default:
                                throw new NotSupportedException();
                        }
                    }
                }

                foreach (var c in pt.Comment)
                {
                    if (c.Person == null)
                        return;

                    if (c.Text != "New feedback" && par.requiredUsers.Contains(c.Person.Id))
                        ++numComments;
                }
            }
        }
Exemple #21
0
 private static void AddSessionTopicRow(StringBuilder sb, TopicReport topicReport1,
                                        ReportParameters params1,
                                        EventTotalsReport eventTotals1)
 {
     sb.Append("\"" + params1.session.Name + "\"");
     sb.Append(";");
     sb.Append("\"" + params1.topic.Name + "\"");
     sb.Append(";");
     sb.Append(params1.sessionTopicUsers.Count());
     sb.Append(";");
     sb.Append(topicReport1.numImages);
     sb.Append(";");
     sb.Append(topicReport1.numScreenshots);
     sb.Append(";");
     sb.Append(topicReport1.numPDFs);
     sb.Append(";");
     sb.Append(topicReport1.numYoutubes);
     sb.Append(";");
     sb.Append(TimeSpan.FromSeconds(topicReport1.cumulativeDuration).ToString());
     sb.Append(";");
     sb.Append(topicReport1.numClusteredBadges.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numClusters.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numComments.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numLinks.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numMediaAttachments.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numPoints.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numPointsWithDescription.ToString());
     sb.Append(";");
     sb.Append(topicReport1.numSources.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalRecordingStarted.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalRecordingStopped.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalBadgeCreated.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalBadgeEdited.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalBadgeMoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalBadgeZoomIn.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterCreated.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterDeleted.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterIn.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterOut.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterMoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterTitlesAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterTitlesEdited.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalClusterTitlesRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalLinkCreated.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalLinkRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalFreeDrawingCreated.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalFreeDrawingRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalFreeDrawingResize.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalFreeDrawingMoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalSceneZoomedIn.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalSceneZoomedOut.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalArgPointTopicChanged.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalSourceAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalSourceRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalImageAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalImageUrlAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalPdfAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalPdfUrlAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalYoutubeAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalScreenshotAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalMediaRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalCommentAdded.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalCommentRemoved.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalImageOpened.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalVideoOpened.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalScreenshotOpened.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalPdfOpened.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalSourceOpened.ToString());
     sb.Append(";");
     sb.Append(eventTotals1.TotalLaserEnabled.ToString() + ";");
 }
Exemple #22
0
        private static string Export(TopicReport topicReport1, ReportParameters params1,
                                     EventTotalsReport eventTotals1,
                                     TopicReport topicReport2, ReportParameters params2,
                                     EventTotalsReport eventTotals2)
        {
            //write header
            var sb = new StringBuilder();
            sb.Append("SessionName;");
            sb.Append("TopicName;");
            sb.Append("NumUsers;");
            sb.Append("NumImages;");
            sb.Append("NumScreenshots;");
            sb.Append("NumPDFs;");
            sb.Append("NumVideos;");
            sb.Append("CumulativeDuration;");
            sb.Append("NumClusteredBadges;");
            sb.Append("NumClusters;");
            sb.Append("NumComments;");
            sb.Append("NumLinks;");
            sb.Append("NumMediaAttachments;");
            sb.Append("NumPoints;");
            sb.Append("NumPointsWithDescription;");
            sb.Append("NumSources;");
            sb.Append("TotalRecordingStarted;");
            sb.Append("TotalRecordingStopped;");
            sb.Append("TotalBadgeCreated;");
            sb.Append("TotalBadgeEdited;");
            sb.Append("TotalBadgeMoved;");
            sb.Append("TotalBadgeZoomIn;");
            sb.Append("TotalClusterCreated;");
            sb.Append("TotalClusterDeleted;");
            sb.Append("TotalClusterIn;");
            sb.Append("TotalClusterOut;");
            sb.Append("TotalClusterMoved;");
            sb.Append("TotalClusterTitlesAdded;");
            sb.Append("TotalClusterTitlesEdited;");
            sb.Append("TotalClusterTitlesRemoved;");
            sb.Append("TotalLinkCreated;");
            sb.Append("TotalLinkRemoved;");
            sb.Append("TotalFreeDrawingCreated;");
            sb.Append("TotalFreeDrawingRemoved;");
            sb.Append("TotalFreeDrawingResize;");
            sb.Append("TotalFreeDrawingMoved;");
            sb.Append("TotalSceneZoomedIn;");
            sb.Append("TotalSceneZoomedOut;");
            sb.Append("TotalArgPointTopicChanged;");
            sb.Append("TotalSourceAdded;");
            sb.Append("TotalSourceRemoved;");
            sb.Append("TotalImageAdded;");
            sb.Append("TotalImageUrlAdded;");
            sb.Append("TotalPdfAdded;");
            sb.Append("TotalPdfUrlAdded;");
            sb.Append("TotalYoutubeAdded;");
            sb.Append("TotalScreenshotAdded;");
            sb.Append("TotalMediaRemoved;");
            sb.Append("TotalCommentAdded;");
            sb.Append("TotalCommentRemoved;");
            sb.Append("TotalImageOpened;");
            sb.Append("TotalVideoOpened;");
            sb.Append("TotalScreenshotOpened;");
            sb.Append("TotalPdfOpened;");
            sb.Append("TotalSourceOpened;");
            sb.AppendLine("TotalLaserEnabled;");

            //first line
            AddSessionTopicRow(sb, topicReport1, params1, eventTotals1);

            //second line
            if (topicReport2 != null && params2 != null && eventTotals2 != null)
                AddSessionTopicRow(sb, topicReport2, params2, eventTotals2);

            return sb.ToString();
        }