Index: lams_tool_scratchie/conf/language/lams/ApplicationResources.properties =================================================================== diff -u -rfba7287887f6dd83d3098100af6320cccf1f3e36 -re82b4549b14d551aced42d534a0b001f449f02bc --- lams_tool_scratchie/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision fba7287887f6dd83d3098100af6320cccf1f3e36) +++ lams_tool_scratchie/conf/language/lams/ApplicationResources.properties (.../ApplicationResources.properties) (revision e82b4549b14d551aced42d534a0b001f449f02bc) @@ -1,237 +1,241 @@ -appName = scratchie -#language code: en -#locale code: AU - - # Exported from the LAMS Community by Ernie Ghiglione on Fri Dec 28 09:32:24 CST 2018 - -#=================== labels for Scratchie =================# - -activity.title =Scratchie -label.authoring.heading =Scratchie Authoring -label.author.title =Scratchie tool -label.authoring.heading.basic =Basic -label.authoring.heading.advance =Advanced -label.authoring.heading.basic.desc =Basic input information for scratchie tool -label.authoring.heading.advance.desc =Please input advance options for Scratchie tool -label.authoring.basic.title =Title -label.authoring.maximum.answers.warning =Sorry, you can only have 10 answers at maximum. -label.authoring.specify.correct.answer.warning =Please, specify which answer is correct one. -label.authoring.basic.instruction =Question -label.authoring.basic.resource.instructions =Instructions -label.authoring.basic.item.title =Scratchie title -label.authoring.basic.item.correct =Correct? -label.authoring.basic.add.another.scratchie =Add another scratchie -label.authoring.save.button =Save -label.authoring.cancel.button =Cancel -error.msg.default.content.not.find =Could not retrieve default content record for this tool. -authoring.msg.cancel.save =Do you want to close this window without saving? -label.learning.title =Scratchie -monitoring.tab.summary =Summary -monitoring.tab.statistics =Statistic -monitoring.tab.edit.activity =Edit activity -monitoring.label.group =Group -label.monitoring.edit.activity.edit =Edit -export.title =Export portfolio for Scratchie -label.edit =Edit -label.finished =Next activity -label.submit =Finish -label.finish =Finished -message.monitoring.summary.no.session =No session available -define.later.message =Please wait for the instructor to complete the contents of this activity. -button.try.again =Try again -label.up =Up -label.down =Down -label.authoring.advanced.reflectOnActivity =Add Notebook at end with the following instructions: -label.continue =Continue -page.title.monitoring.view.reflection =View notebook entries -button.close =Close -message.no.reflection.available =No notebook available -label.on =On -label.off =Off -monitor.summary.th.advancedSettings =Advanced settings -monitor.summary.td.addNotebook =Add notebook -monitor.summary.td.notebookInstructions =Notebook instructions -label.authoring.up =Move up -label.monitoring.summary.select.student =Select a learner from the list to see his/her attempts/results -label.monitoring.summary.user.name =Name -label.monitoring.summary.answer =Answer -label.monitoring.summary.choice =choice -label.monitoring.summary.summary =Summary -label.monitoring.summary.attempts =Attempts -label.monitoring.summary.mark =Mark -label.monitoring.summary.learners.summary =Learner's summary -label.monitoring.summary.report.by.scratchie =Report by question -label.monitoring.summary.report.by.user =Report by learner -label.monitoring.summary.attempt =Attempt -label.monitoring.summary.attempt.number =Attempt # -label.monitoring.summary.scratchie =Scratchie -label.monitoring.summary.correct =Correct? -label.monitoring.item.summary.correct =correct -label.monitoring.summary.date =Date -label.monitoring.summary.report.for =Report for {0} -label.monitoring.summary.choose =Choose... -label.monitoring.item.summary.group =Group: -output.desc.learner.mark =Total mark scored by learner -warning.msg.authoring.do.you.want.to.delete =Do you really want to delete this question? -warning.msg.are.you.sure.you.want.to.finish =Are you sure you want to finish? -label.authoring.add.blank.answer =Add another answer -label.authoring.title.required =Title is required. -label.authoring.error.possible.answer =You should provide at least one possible answer. -label.authoring.error.correct.answer =You should mark one of the filled answers as correct. -error.form.validation.error =You have 1 error in a form. It has been highlighted -error.form.validation.errors =You have {0} errors in a form. They have been highlighted -label.edit.question =Add/Edit question -label.authoring.basic.question.name =Title -label.authoring.basic.question.text =Question -label.authoring.advanced.give.extra.point =Give an extra mark if the first scratchie attempt is the correct one. -label.authoring.scratchie.answers =Scratchie answers -label.one.or.more.questions.not.completed =One or more questions have not being completed. If you are to continue, you won't be able to answer these questions at a later stage and you'll get zero point for this questions. Are you sure you want to continue? -label.correct.answer =Correct answer -label.mark =Mark -label.attempts =Attempts -label.choice.number =Choice #{0} -label.group.leader =Group leader: {0} -label.refresh =Refresh -label.export.excel =Export Excel -label.research.analysis =Research and analysis -label.scratchie.report =Scratchie report -label.overall.summary.by.team =Overall summary by team -label.for.question =For question {0} -label.first.choice =First choice -label.incorrect =Incorrect -label.correct =Correct -label.overall.summary.by.individual.student =Overall summary by individual learner in each team -label.group =Group -label.question.reports =Question reports -label.question.semicolon =Question:{0} -label.all.teams.summary =All teams summary -label.breakdown.by.team =Breakdown by team -label.breakdown.by.student.with.timing =Breakdown by learner with timing -label.team.leader =Team leader: -label.for.immediate.analysis =For immediate analysis -label.quick.analysis =Quick analysis -label.in.table.below.we.show =The table below shows whether or not the team selected the correct answer first. -label.questions =Questions -label.teams =TEAMS -label.yes =yes -label.spss.analysis =For_XLS_export (SPSS analysis) -label.student.name =Learner name -label.team =Team -label.question.number =Question number -label.question =Question -label.first.choice.accuracy =First choice accuracy -label.number.of.attempts =Number of attempts -label.mark.awarded =Mark awarded -label.1.answer.selected =First answer selected -label.2.answer.selected =Second answer selected -label.3.answer.selected =Third answer selected -label.4.answer.selected =Fourth answer selected -label.5.answer.selected =Fifth answer selected -label.6.answer.selected =Sixth answer selected -label.7.answer.selected =Seventh answer selected -label.8.answer.selected =Eighth answer selected -label.9.answer.selected =Ninth answer selected -label.10.answer.selected =Tenth answer selected -label.date =Date -label.time.of.selection.1 =Time of selection for 1st choice -label.time.of.selection.2 =Time of selection for 2nd choice -label.time.of.selection.3 =Time of selection for 3rd choice -label.time.of.selection.4 =Time of selection for 4th choice -label.time.of.selection.5 =Time of selection for 5th choice -label.time.of.selection.6 =Time of selection for 6th choice -label.time.of.selection.7 =Time of selection for 7th choice -label.time.of.selection.8 =Time of selection for 8th choice -label.time.of.selection.9 =Time of selection for 9th choice -label.time.of.selection.10 =Time of selection for 10th choice -label.none =None -label.learners.feedback =Learner's feedback -label.monitoring.team.leader =team leader -label.authoring.import.qti =Import IMS QTI -label.waiting.for.leader =Please, wait while somebody will become a group leader. -label.users.from.group =Other learners participating in current group: -label.total =Total -label.report.by.team.tra =Report by team -label.table.below.shows.which.answer.teams.selected.first.try =The table below shows which answer the teams selected on the first try -label.denotes.correct.answer =*- Denotes the correct answer -label.legend =Legend -label.median =Median -label.avg.mean =Ave. Mean -label.score =Score: -label.you.ve.got =Your score: {0} -label.your.answer =Your answer: -label.other.groups =Other groups: -label.all =All -monitor.summary.date.restriction =Date and time restriction -monitor.summary.when.date.restriction.is.set =If a date and time restriction is set, learners will not be able to submit assignments after this date. -monitor.summary.after.date =Date and time: -monitor.summary.set.restriction =Set restriction -monitor.summary.unset.restriction =Remove restriction -authoring.info.teacher.set.restriction =The teacher has set a restriction for submission from {0}. -label.sorry.the.deadline.has.passed =Sorry, the deadline to participate in this activity has passed. Please contact your teacher for further details. -monitor.summary.notification =Notification -monitor.summary.date.restriction.set =Date restriction has been set -monitor.summary.date.restriction.removed =Date restriction has been removed -label.monitoring.heading =Scratchie monitoring -admin.page.title =Scratchie Settings -admin.success =Configuration successfully saved. -admin.return =Return to maintain LAMS -admin.button.save =Save -admin.extra.mark =Enable an extra mark for the first correct scratchie attempt option. -admin.preset.marks =Marks in a form of a comma-separated values -error.required.fields.missing =Marks should not be left blank. Please, enter it in a format of comma separated values. -error.entered.marks.not.comma.separates =Entered marks are not in a correct format of comma separated values. -label.authoring.export.qti =Export IMS QTI -label.scratchie.options =Question options -label.activity.completion =End of activity -label.authoring.advanced.burning.questions =Option for burning questions -label.burning.questions =Burning questions -label.burning.question =Burning question? -label.time.limit =Time limit (minutes) -label.countdown.time.left =Time left -label.time.is.over =Time is over. Processing your answers... -label.are.you.ready =You are going to participate in activity that has time limitation. Are you ready to start? -label.ok =OK -label.count =Count -label.like =Like -label.unlike =Unlike -label.general.burning.question =General burning question -label.waiting.for.leader.launch.time.limit =Leader has not started the activity. Please wait until he commences it. -label.waiting.for.leader.submit.notebook =Time limit set by teacher is expired. Please wait until a group leader submits notebook. -label.authoring.advanced.shuffle.items =Shuffle questions -label.summary.downloaded =Excel file downloaded. -label.number.groups.finished =Number of groups finished -label.graph.help =In the graph(s) below, click on a bar in the graph and then use your mouse wheel to zoom in and out of the graph. Once you zoom in, the grey selection in the bottom graph can be dragged left or right to show a different set of marks. -label.lowest.mark =Lowest mark: -label.highest.mark =Highest mark: -label.marks =Marks -label.number.groups.in.mark.range =Number of groups in mark range -label.average.mark =Average mark -message.monitoring.edit.activity.warning =Warning: if you edit and modify a question or change an answer that a leader has already answered, then the mark for the whole group for the modified question will be deleted permanently as it is assumed that the question has changed. -label.show.confidence.level =Show confidence levels from the following activity -label.no.confidence.levels.activities =There are no activities with confidence levels to choose from. -label.save.learning.design =In order to select activity with confidence levels please save your sequence first. -label.change.marking.allocation =Change marking allocation -label.change.marking.allocation.warning =Attention: changing marking allocation will affect the way marks get calculated. -label.modify.default.marking =Modify default marking -label.burning.questions.autosaved =Burning questions autosaved -label.tra.questions.marks =tRA Questions & Marks -label.attendance =Attendance -label.show.students.choices =Show students' choices -label.hide.students.choices =Hide students' choices -label.tra.results.by.team =tRA results by team -label.average =average -label.print =Print -label.teams.notuppercase =Teams -label.authoring.advanced.show.scratchies.in.results =Show results to learners after completion -label.scroll.down.to.burning.question =Scroll down to corresponding burning question -label.expand.all =Expand all -label.collapse.all =Collapse all -outcome.authoring.title =Learning outcomes -outcome.authoring.input =Search and select by outcome name or code -outcome.authoring.existing =Added outcomes -outcome.authoring.existing.none =none -message.qb.modified.update =The question in Question Bank will be updated -message.qb.modified.version =A new version of the question will be created in Question Bank -message.qb.modified.new =A new question will be created in Question Bank - -#======= End labels: Exported 224 labels for en AU ===== +appName = scratchie +#language code: en +#locale code: AU + + # Exported from the LAMS Community by Ernie Ghiglione on Fri Dec 28 09:32:24 CST 2018 + +#=================== labels for Scratchie =================# + +activity.title =Scratchie +label.authoring.heading =Scratchie Authoring +label.author.title =Scratchie tool +label.authoring.heading.basic =Basic +label.authoring.heading.advance =Advanced +label.authoring.heading.basic.desc =Basic input information for scratchie tool +label.authoring.heading.advance.desc =Please input advance options for Scratchie tool +label.authoring.basic.title =Title +label.authoring.maximum.answers.warning =Sorry, you can only have 10 answers at maximum. +label.authoring.specify.correct.answer.warning =Please, specify which answer is correct one. +label.authoring.basic.instruction =Question +label.authoring.basic.resource.instructions =Instructions +label.authoring.basic.item.title =Scratchie title +label.authoring.basic.item.correct =Correct? +label.authoring.basic.add.another.scratchie =Add another scratchie +label.authoring.save.button =Save +label.authoring.cancel.button =Cancel +error.msg.default.content.not.find =Could not retrieve default content record for this tool. +authoring.msg.cancel.save =Do you want to close this window without saving? +label.learning.title =Scratchie +monitoring.tab.summary =Summary +monitoring.tab.statistics =Statistic +monitoring.tab.edit.activity =Edit activity +monitoring.label.group =Group +label.monitoring.edit.activity.edit =Edit +export.title =Export portfolio for Scratchie +label.edit =Edit +label.finished =Next activity +label.submit =Finish +label.finish =Finished +message.monitoring.summary.no.session =No session available +define.later.message =Please wait for the instructor to complete the contents of this activity. +button.try.again =Try again +label.up =Up +label.down =Down +label.authoring.advanced.reflectOnActivity =Add Notebook at end with the following instructions: +label.continue =Continue +page.title.monitoring.view.reflection =View notebook entries +button.close =Close +message.no.reflection.available =No notebook available +label.on =On +label.off =Off +monitor.summary.th.advancedSettings =Advanced settings +monitor.summary.td.addNotebook =Add notebook +monitor.summary.td.notebookInstructions =Notebook instructions +label.authoring.up =Move up +label.monitoring.summary.select.student =Select a learner from the list to see his/her attempts/results +label.monitoring.summary.user.name =Name +label.monitoring.summary.answer =Answer +label.monitoring.summary.choice =choice +label.monitoring.summary.summary =Summary +label.monitoring.summary.attempts =Attempts +label.monitoring.summary.mark =Mark +label.monitoring.summary.learners.summary =Learner's summary +label.monitoring.summary.report.by.scratchie =Report by question +label.monitoring.summary.report.by.user =Report by learner +label.monitoring.summary.attempt =Attempt +label.monitoring.summary.attempt.number =Attempt # +label.monitoring.summary.scratchie =Scratchie +label.monitoring.summary.correct =Correct? +label.monitoring.item.summary.correct =correct +label.monitoring.summary.date =Date +label.monitoring.summary.report.for =Report for {0} +label.monitoring.summary.choose =Choose... +label.monitoring.item.summary.group =Group: +output.desc.learner.mark =Total mark scored by learner +warning.msg.authoring.do.you.want.to.delete =Do you really want to delete this question? +warning.msg.are.you.sure.you.want.to.finish =Are you sure you want to finish? +label.authoring.add.blank.answer =Add another answer +label.authoring.title.required =Title is required. +label.authoring.error.possible.answer =You should provide at least one possible answer. +label.authoring.error.correct.answer =You should mark one of the filled answers as correct. +error.form.validation.error =You have 1 error in a form. It has been highlighted +error.form.validation.errors =You have {0} errors in a form. They have been highlighted +label.edit.question =Add/Edit question +label.authoring.basic.question.name =Title +label.authoring.basic.question.text =Question +label.authoring.advanced.give.extra.point =Give an extra mark if the first scratchie attempt is the correct one. +label.authoring.scratchie.answers =Scratchie answers +label.one.or.more.questions.not.completed =One or more questions have not being completed. If you are to continue, you won't be able to answer these questions at a later stage and you'll get zero point for this questions. Are you sure you want to continue? +label.correct.answer =Correct answer +label.mark =Mark +label.attempts =Attempts +label.choice.number =Choice #{0} +label.group.leader =Group leader: {0} +label.refresh =Refresh +label.export.excel =Export Excel +label.research.analysis =Research and analysis +label.scratchie.report =Scratchie report +label.overall.summary.by.team =Overall summary by team +label.for.question =For question {0} +label.first.choice =First choice +label.incorrect =Incorrect +label.correct =Correct +label.overall.summary.by.individual.student =Overall summary by individual learner in each team +label.group =Group +label.question.reports =Question reports +label.question.semicolon =Question:{0} +label.all.teams.summary =All teams summary +label.breakdown.by.team =Breakdown by team +label.breakdown.by.student.with.timing =Breakdown by learner with timing +label.team.leader =Team leader: +label.for.immediate.analysis =For immediate analysis +label.quick.analysis =Quick analysis +label.in.table.below.we.show =The table below shows whether or not the team selected the correct answer first. +label.questions =Questions +label.teams =TEAMS +label.yes =yes +label.spss.analysis =For_XLS_export (SPSS analysis) +label.student.name =Learner name +label.team =Team +label.question.number =Question number +label.question =Question +label.first.choice.accuracy =First choice accuracy +label.number.of.attempts =Number of attempts +label.mark.awarded =Mark awarded +label.1.answer.selected =First answer selected +label.2.answer.selected =Second answer selected +label.3.answer.selected =Third answer selected +label.4.answer.selected =Fourth answer selected +label.5.answer.selected =Fifth answer selected +label.6.answer.selected =Sixth answer selected +label.7.answer.selected =Seventh answer selected +label.8.answer.selected =Eighth answer selected +label.9.answer.selected =Ninth answer selected +label.10.answer.selected =Tenth answer selected +label.date =Date +label.time.of.selection.1 =Time of selection for 1st choice +label.time.of.selection.2 =Time of selection for 2nd choice +label.time.of.selection.3 =Time of selection for 3rd choice +label.time.of.selection.4 =Time of selection for 4th choice +label.time.of.selection.5 =Time of selection for 5th choice +label.time.of.selection.6 =Time of selection for 6th choice +label.time.of.selection.7 =Time of selection for 7th choice +label.time.of.selection.8 =Time of selection for 8th choice +label.time.of.selection.9 =Time of selection for 9th choice +label.time.of.selection.10 =Time of selection for 10th choice +label.none =None +label.learners.feedback =Learner's feedback +label.monitoring.team.leader =team leader +label.authoring.import.qti =Import IMS QTI +label.waiting.for.leader =Please, wait while somebody will become a group leader. +label.users.from.group =Other learners participating in current group: +label.total =Total +label.report.by.team.tra =Report by team +label.table.below.shows.which.answer.teams.selected.first.try =The table below shows which answer the teams selected on the first try +label.denotes.correct.answer =*- Denotes the correct answer +label.legend =Legend +label.median =Median +label.avg.mean =Ave. Mean +label.score =Score: +label.you.ve.got =Your score: {0} +label.your.answer =Your answer: +label.other.groups =Other groups: +label.all =All +monitor.summary.date.restriction =Date and time restriction +monitor.summary.when.date.restriction.is.set =If a date and time restriction is set, learners will not be able to submit assignments after this date. +monitor.summary.after.date =Date and time: +monitor.summary.set.restriction =Set restriction +monitor.summary.unset.restriction =Remove restriction +authoring.info.teacher.set.restriction =The teacher has set a restriction for submission from {0}. +label.sorry.the.deadline.has.passed =Sorry, the deadline to participate in this activity has passed. Please contact your teacher for further details. +monitor.summary.notification =Notification +monitor.summary.date.restriction.set =Date restriction has been set +monitor.summary.date.restriction.removed =Date restriction has been removed +label.monitoring.heading =Scratchie monitoring +admin.page.title =Scratchie Settings +admin.success =Configuration successfully saved. +admin.return =Return to maintain LAMS +admin.button.save =Save +admin.extra.mark =Enable an extra mark for the first correct scratchie attempt option. +admin.preset.marks =Marks in a form of a comma-separated values +error.required.fields.missing =Marks should not be left blank. Please, enter it in a format of comma separated values. +error.entered.marks.not.comma.separates =Entered marks are not in a correct format of comma separated values. +label.authoring.export.qti =Export IMS QTI +label.scratchie.options =Question options +label.activity.completion =End of activity +label.authoring.advanced.burning.questions =Option for burning questions +label.burning.questions =Burning questions +label.burning.question =Burning question? +label.time.limit =Time limit (minutes) +label.countdown.time.left =Time left +label.time.is.over =Time is over. Processing your answers... +label.are.you.ready =You are going to participate in activity that has time limitation. Are you ready to start? +label.ok =OK +label.count =Count +label.like =Like +label.unlike =Unlike +label.general.burning.question =General burning question +label.waiting.for.leader.launch.time.limit =Leader has not started the activity. Please wait until he commences it. +label.waiting.for.leader.submit.notebook =Time limit set by teacher is expired. Please wait until a group leader submits notebook. +label.authoring.advanced.shuffle.items =Shuffle questions +label.summary.downloaded =Excel file downloaded. +label.number.groups.finished =Number of groups finished +label.graph.help =In the graph(s) below, click on a bar in the graph and then use your mouse wheel to zoom in and out of the graph. Once you zoom in, the grey selection in the bottom graph can be dragged left or right to show a different set of marks. +label.lowest.mark =Lowest mark: +label.highest.mark =Highest mark: +label.marks =Marks +label.number.groups.in.mark.range =Number of groups in mark range +label.average.mark =Average mark +message.monitoring.edit.activity.warning =Warning: if you edit and modify a question or change an answer that a leader has already answered, then the mark for the whole group for the modified question will be deleted permanently as it is assumed that the question has changed. +label.show.confidence.level =Show confidence levels from the following activity +label.no.confidence.levels.activities =There are no activities with confidence levels to choose from. +label.save.learning.design =In order to select activity with confidence levels please save your sequence first. +label.change.marking.allocation =Change marking allocation +label.change.marking.allocation.warning =Attention: changing marking allocation will affect the way marks get calculated. +label.modify.default.marking =Modify default marking +label.burning.questions.autosaved =Burning questions autosaved +label.tra.questions.marks =tRA Questions & Marks +label.attendance =Attendance +label.show.students.choices =Show students' choices +label.hide.students.choices =Hide students' choices +label.tra.results.by.team =tRA results by team +label.average =average +label.print =Print +label.teams.notuppercase =Teams +label.authoring.advanced.show.scratchies.in.results =Show results to learners after completion +label.scroll.down.to.burning.question =Scroll down to corresponding burning question +label.expand.all =Expand all +label.collapse.all =Collapse all +outcome.authoring.title =Learning outcomes +outcome.authoring.input =Search and select by outcome name or code +outcome.authoring.existing =Added outcomes +outcome.authoring.existing.none =none +message.qb.modified.update =The question in Question Bank will be updated +message.qb.modified.version =A new version of the question will be created in Question Bank +message.qb.modified.new =A new question will be created in Question Bank +label.qb.stats =Question indexes +label.qb.participant.count =Test participant count +label.qb.difficulty.index =Difficulty index +label.qb.discrimination.index =Discrimination index +label.qb.point.biserial =Point biserial +#======= End labels: Exported 224 labels for en AU ===== Index: lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/MonitoringController.java =================================================================== diff -u -r23980a8cbd4e0d8d4e0b7ac4ad02e510d5653b75 -re82b4549b14d551aced42d534a0b001f449f02bc --- lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/MonitoringController.java (.../MonitoringController.java) (revision 23980a8cbd4e0d8d4e0b7ac4ad02e510d5653b75) +++ lams_tool_scratchie/src/java/org/lamsfoundation/lams/tool/scratchie/web/controller/MonitoringController.java (.../MonitoringController.java) (revision e82b4549b14d551aced42d534a0b001f449f02bc) @@ -27,8 +27,10 @@ import java.util.Date; import java.util.LinkedHashMap; import java.util.List; +import java.util.Map; import java.util.Set; import java.util.TimeZone; +import java.util.TreeSet; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; @@ -40,6 +42,8 @@ import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; +import org.lamsfoundation.lams.qb.dto.QbStatsActivityDTO; +import org.lamsfoundation.lams.qb.service.IQbService; import org.lamsfoundation.lams.tool.scratchie.ScratchieConstants; import org.lamsfoundation.lams.tool.scratchie.dto.BurningQuestionItemDTO; import org.lamsfoundation.lams.tool.scratchie.dto.GroupSummary; @@ -50,6 +54,7 @@ import org.lamsfoundation.lams.tool.scratchie.model.ScratchieItem; import org.lamsfoundation.lams.tool.scratchie.model.ScratchieUser; import org.lamsfoundation.lams.tool.scratchie.service.IScratchieService; +import org.lamsfoundation.lams.tool.scratchie.util.ScratchieItemComparator; import org.lamsfoundation.lams.usermanagement.dto.UserDTO; import org.lamsfoundation.lams.util.DateUtil; import org.lamsfoundation.lams.util.ExcelCell; @@ -75,6 +80,9 @@ @Autowired private IScratchieService scratchieService; + @Autowired + private IQbService qbService; + @RequestMapping("/summary") private String summary(HttpServletRequest request) { @@ -288,6 +296,17 @@ if (scratchie != null) { LeaderResultsDTO leaderDto = scratchieService.getLeaderResultsDTOForLeaders(scratchie.getContentId()); sessionMap.put("leaderDto", leaderDto); + + Map qbStats = new LinkedHashMap<>(); + Set items = new TreeSet<>(new ScratchieItemComparator()); + items.addAll(scratchie.getScratchieItems()); + + for (ScratchieItem item : items) { + QbStatsActivityDTO questionStats = qbService.getActivityStatsByContentId(scratchie.getContentId(), + item.getQbQuestion().getUid()); + qbStats.put(item.getQbQuestion().getName(), questionStats); + } + request.setAttribute("qbStats", qbStats); } return "pages/monitoring/parts/statisticpart"; } Index: lams_tool_scratchie/web/pages/monitoring/parts/statisticpart.jsp =================================================================== diff -u -r7475d08afc280b5e2e5ddf04e8bf35e3166aaf80 -re82b4549b14d551aced42d534a0b001f449f02bc --- lams_tool_scratchie/web/pages/monitoring/parts/statisticpart.jsp (.../statisticpart.jsp) (revision 7475d08afc280b5e2e5ddf04e8bf35e3166aaf80) +++ lams_tool_scratchie/web/pages/monitoring/parts/statisticpart.jsp (.../statisticpart.jsp) (revision e82b4549b14d551aced42d534a0b001f449f02bc) @@ -1,69 +1,124 @@ -<%@ include file="/common/taglibs.jsp"%> - - - - - - - - - - - - - - - - -

- -
-
- - - - - - - - - - - - - - -
- : - - - - : - - -
- - - - - - - -
-
-
-
-
-
-
- -
-
- +<%@ include file="/common/taglibs.jsp"%> + + + + + + + + + + + + + + + + +

+ +
+
+ + + + + + + + + + + + + + +
+ : + + + + : + + +
+ + + + + + + +
+
+
+
+
+
+
+ +
+
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ # + + + + + + + + + + +
+ ${i.index + 1} + + + + + ---
+
+ + +