Details

    • Type: Sub-task Sub-task
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 2.2
    • Fix Version/s: 2.2
    • Component/s: Grading methods
    • Labels:
      None
    • Affected Branches:
      MOODLE_22_STABLE
    • Fixed Branches:
      MOODLE_22_STABLE
    • Rank:
      18645

      Description

      (10:07:37) Martin: One noticeable hole at the moment is the ability to "drill down" from the grader report to show the advanced grades in detail.
      (10:08:04) Martin: I can see the UI like this:
      (10:08:49) Martin: 1) A new grader report preference  to enable/disable the display of "advanced grading details".
      (10:10:10) Martin: 2) A new icon (eg magnifying glass) that shows to the left of all grade numbers with advanced grading, in the grader report.   This should probably be there in editing and non-editing modes (if the preference is enabled, of course).
      (10:11:26) Martin: 3) Clicking this could either take you to the correct page in the source eg the assignment submission grading page (probably hard) or could just show you the form in the gradebook (could it be editable, actually?)
      (10:11:33) Martin: Something like that.
      (10:50:22) mudrd8mz@jabber.cz/glum: well, it works well for the Assignment. But what about a module like Workshop that calculates the grade in gradebook from several assessments (rubrics)?
      (10:58:25) Martin: OK, so should modules provide a "detailedgrades.php" page or callback function?
      (10:59:05) mudrd8mz@jabber.cz/glum: I guess that is the way. we want to see the form in the context (like the submission) anyway
      (10:59:43) mudrd8mz@jabber.cz/glum: callback function returning URL to see analysis of the given grade item
      (11:00:06) Martin: yep
      (11:00:14) mudrd8mz@jabber.cz/glum: as is mentioned in the spec, it is actually useful even without Advanced grading
      (11:01:02) mudrd8mz@jabber.cz/glum: I mean, such link-back to see details
      (11:01:26) Martin: Note that this may be different for teacher vs student
      (11:02:05) mudrd8mz@jabber.cz/glum: the script at the linked should deal with access rights & friends, no?
      (11:02:06) Martin: Currently (with assignment) on the student (user) grade report the links go to the assignment view.php, which actually works OK, as it does show the rubric
      (11:02:28) mudrd8mz@jabber.cz/glum: aha
      (11:02:37) mudrd8mz@jabber.cz/glum: right
      (11:02:58) Martin: but it's totally wrong for the teacher and the direct link from the grader report
      (11:03:14) mudrd8mz@jabber.cz/glum: yes
      (11:03:27) mudrd8mz@jabber.cz/glum: I guess view.php is hardcoded in the gradebook right?
      (11:03:34) Martin: Yep, I think
      (11:03:44) Martin: Perhaps we don't need to worry about the students
      (11:03:54) Martin: detailedgrades.php could be for graders only
      (11:04:19) Martin: Does Workshop show students their full grades on view.php ?
      (11:04:37) mudrd8mz@jabber.cz/glum: it does not sounds as significant extra work to make it work for both
      (11:05:24) Martin: it's just doubling up on the view.php and submissions.php
      (11:05:29) Martin: (in assignment)
      (11:05:40) mudrd8mz@jabber.cz/glum: yes, Workshop is supposed to show the final grades on view.php (it does not at the moment but it is reported bug)
      (11:06:03) Martin: For assignment I would link teachers straight to the normal submissions.php form, not a new one
      (11:06:12) mudrd8mz@jabber.cz/glum: yup
      (11:06:36) Martin: and in future that will be a page in grades anyway
      (11:07:11) mudrd8mz@jabber.cz/glum: future == when we store all grades in the gradebook only?
      (11:07:28) Martin: yes, and all the grading interfaces come from gradeslib
      (11:08:20) mudrd8mz@jabber.cz/glum: btw I never bought this idea
      (11:08:30) Martin:
      (11:09:16) Martin: I'm not 100% either, we can see later
      (11:09:41) Martin: I guess a callback like xxxx_grader_details() is clear enough?
      (11:09:50) mudrd8mz@jabber.cz/glum: yes
      (11:10:07) Martin: and it would return some URL that the grader report can use
      (11:10:50) Martin: and if it doesn't exist, then don't show any link at all, I guess
      (11:11:12) mudrd8mz@jabber.cz/glum: yeah, or fallback to view.php
      (11:11:20) mudrd8mz@jabber.cz/glum: hmm, no
      (11:11:23) Martin: I suppose it's only going to check the callback when advanced grading is already detected?
      (11:11:30) mudrd8mz@jabber.cz/glum: the column heading links there IIRC
      (11:11:44) Martin: yeah the column heading already links there
      (11:12:04) mudrd8mz@jabber.cz/glum: I don't think so. It should check the callback always
      (11:12:16) Martin: won't that slow things down a lot?
      (11:12:24) Martin: We really only want these extra icons polluting the cells which actually have more info
      (11:12:42) mudrd8mz@jabber.cz/glum: imagine quiz can link to the attempt overview
      (11:12:58) Martin: ah right yes
      (11:13:10) mudrd8mz@jabber.cz/glum: I believe modules' lib.php is loaded anyway
      (11:13:18) Martin: yep
      (11:13:31) mudrd8mz@jabber.cz/glum: so the performance should not be influenced much
      (11:13:35) Martin: hope so
      (11:13:35) mudrd8mz@jabber.cz/glum: </guessing>
      (11:13:43) Martin: it will be nice improvement I think
      (11:13:57) mudrd8mz@jabber.cz/glum: yes, pretty nice side effect
      (11:14:22) Martin: bueno!

      1. after.png
        145 kB
      2. before.png
        125 kB

        Issue Links

          Activity

          Hide
          Marina Glancy added a comment -

          Martin, David,

          please add me as watcher next time

          We actually already have a callback. It is called "Complete report" for user in the course.

          For assignment there is a function assignment_user_complete() which calls the function assignment_base::user_complete() and it is supposed to call assignment_base::view_feedback(). I have already altered the last one to display a feedback from advanced grading (because it is also called when student views his assignment).

          But there were some bugs and attemps to quickfix them in both functions user_complete() and view_feedback() in assignment_base which resulted in that view_feedback was actually not called when displaying the complete report for user. I fixed the code:
          https://github.com/marinaglancy/moodle/compare/wip-rubricrenderer-rubric...wip-MDL-29920-rubric
          and the result is that user complete report now looks good
          (See screenshots 'before' and 'after'
          or link for Martin: http://marina.moodle.local/rubric/course/user.php?user=3&id=2&mode=complete)
          There is also a workshop in this course and it has its own implementation of complete report (function workshop_user_complete()) which is not affected by my changes in assignment.

          So I thought that gradebook can link to the report. Maybe we can add a parameter to the course report so it displays information not on the whole course but on specified activity only and make a link from gradebook to this sub-report (if the current user has a permission to view the report of course).
          And in this case we we can also change the report 'outline report' and add a link to this 'complete sub-report' for each grade.

          Show
          Marina Glancy added a comment - Martin, David, please add me as watcher next time We actually already have a callback. It is called "Complete report" for user in the course. For assignment there is a function assignment_user_complete() which calls the function assignment_base::user_complete() and it is supposed to call assignment_base::view_feedback(). I have already altered the last one to display a feedback from advanced grading (because it is also called when student views his assignment). But there were some bugs and attemps to quickfix them in both functions user_complete() and view_feedback() in assignment_base which resulted in that view_feedback was actually not called when displaying the complete report for user. I fixed the code: https://github.com/marinaglancy/moodle/compare/wip-rubricrenderer-rubric...wip-MDL-29920-rubric and the result is that user complete report now looks good (See screenshots 'before' and 'after' or link for Martin: http://marina.moodle.local/rubric/course/user.php?user=3&id=2&mode=complete ) There is also a workshop in this course and it has its own implementation of complete report (function workshop_user_complete()) which is not affected by my changes in assignment. So I thought that gradebook can link to the report. Maybe we can add a parameter to the course report so it displays information not on the whole course but on specified activity only and make a link from gradebook to this sub-report (if the current user has a permission to view the report of course). And in this case we we can also change the report 'outline report' and add a link to this 'complete sub-report' for each grade.
          Hide
          Martin Dougiamas added a comment -

          It's good that the complete report is fixed, that needs to be done too, but I don't think it's the solution here for the link.

          I think it's better that we go to the original grading page in the activities. For the quiz example, there are all sorts of analysis tool that will not ever be on the "Complete" user report. And also we want to make it easy for the teacher to modify that grade there (or comment, etc) if they need to.

          Why not use the existing mod/xxxx/grade.php file and redirect to the right place. No callbacks required, and no extra load on gradebook. We just need to add more parameters to be able to select an exact user, instead of the general submissions page.

          Show
          Martin Dougiamas added a comment - It's good that the complete report is fixed, that needs to be done too, but I don't think it's the solution here for the link. I think it's better that we go to the original grading page in the activities. For the quiz example, there are all sorts of analysis tool that will not ever be on the "Complete" user report. And also we want to make it easy for the teacher to modify that grade there (or comment, etc) if they need to. Why not use the existing mod/xxxx/grade.php file and redirect to the right place. No callbacks required, and no extra load on gradebook. We just need to add more parameters to be able to select an exact user, instead of the general submissions page.
          Hide
          David Mudrak added a comment -

          I can see that Marina introduced new $userid param passed to grade.php in 502cf963263b56e4554cad6322a5ba13285b3930
          This is not enough for workshop. We need to know at least itemnumber there too as we do not know whether we should display the analysis for the grade for submission or grade for assessment. I was actually expecting that the grade.php would obtain other $elements properties, too. And in fact, maybe if it is given enough information from the $element, we do not need to change the API and introduce that $userid

          Show
          David Mudrak added a comment - I can see that Marina introduced new $userid param passed to grade.php in 502cf963263b56e4554cad6322a5ba13285b3930 This is not enough for workshop. We need to know at least itemnumber there too as we do not know whether we should display the analysis for the grade for submission or grade for assessment. I was actually expecting that the grade.php would obtain other $elements properties, too. And in fact, maybe if it is given enough information from the $element, we do not need to change the API and introduce that $userid
          Hide
          David Mudrak added a comment -

          Done. When enabled, the grader report now displays an icon next to each grade coming from a module that contains grade.php. The grade.php file is referenced with a link containing grade_item and grade_item identifiers so the module can decide what to display.

          Show
          David Mudrak added a comment - Done. When enabled, the grader report now displays an icon next to each grade coming from a module that contains grade.php. The grade.php file is referenced with a link containing grade_item and grade_item identifiers so the module can decide what to display.
          Hide
          David Mudrak added a comment -

          The User report now displays the analysis link, too. Finally I decided to display the icon next to the grade as we do in the Grader report instead of hacking the activity link. See the commit message and its context for more info.

          Show
          David Mudrak added a comment - The User report now displays the analysis link, too. Finally I decided to display the icon next to the grade as we do in the Grader report instead of hacking the activity link. See the commit message and its context for more info.

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: