Giter Club home page Giter Club logo

moodle-report_advancedgrading's Introduction

moodle-report_advancedgrading Moodle Plugin CI

Created by Marcus Green. Report to display a breakdown of grading for assignments that use advanced grading methods,e.g. Rubrics and Marking Guide. Displays in an HTML table with options to export/download to an Excel spreadsheet or a comma separated text file.

Contact Moodle Partner Catalyst EU (https://www.catalyst-eu.net/) for custom development and consultancy.

Install from the command line at the root of your moodle installation as follows.

git clone https://github.com/marcusgreen/moodle-report_advancedgrading report/advancedgrading

Also available from the Moodle plugins database at

https://moodle.org/plugins/report_advancedgrading

More documentation can be found here

https://github.com/marcusgreen/moodle-report_advancedgrading/wiki

moodle-report_advancedgrading's People

Contributors

gbarat87 avatar izendegi avatar juancs avatar marcusgreen avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

moodle-report_advancedgrading's Issues

Bug: User group data is not exported

Describe the bug
When groups are being used in an assignment, the data exported does not account for it, it only lists the user in a group who had submitted the assignment.

To Reproduce
Steps to reproduce the behavior:
Go to course add assignment with

  • 'Grade' as 'Rubric'
  • 'Submission type' as 'Online text'
  • 'Group submission settings' as 'Student submit in groups: Yes'
    Go to assign -> Advanced grading, and add grading template

Login as a few students and make submission
Go to assignment submission and grade a few submissions
Go to assignment and click more 'Rubric breakdown report'

Expected behavior
In the exported CSV file, it should list:

  • Every student details and grade
  • Also have a separate column for 'group'
    Like the way it is listed on the Assignment -> View all submissions pages

View the below screenshots for reference:
Assignment -> More -> 'Rubric breakdown report'
Screenshot from 2024-03-14 12-32-21

Assignment -> View all submissions
Screenshot from 2024-03-14 12-32-04

Javascript ordering and pagination isn't localized

Hi (again),

While testing this plugin we've also detected that the ordering and pagination always is shown in English and doesn't change if the user in browsing Moodle in another language.

The JavaScript used seems to be DataTables, and I've seen in their website that it already has a i18n mechanism, but don't know if it would be possible to add it to this plugin and make the JavaScript show in the same language of the Moodle interface:

https://datatables.net/manual/i18n

Report in course context with course secondary navigation NOT module navigation links

Hi, the report page construct a table for a single instance of Assignment, just a single course_module.
The information shown belongs to a a single instance, so it should show the navigation, secondary navigation, for that module instance.

Yet, the page is constructed in course context and show secondary navigation links corresponding to a course main page. Using moodle 4.1.

It seems that changing locallib.php function init(array $data)
$PAGE->set_context(context_course::instance($data['courseid']));
to
$PAGE->set_context(context_module::instance($data['modid']));
makes the magic: secondary navigation is then the assignment instance one.
However there is a warning about reading id of an empty object.

Rubric breakdown report tab is visible to students

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to an assignment as a student
  2. Click on rubric breakdown report
  3. See error

image

Moodle 4.3.2

Of course the error is correct, students don't have access to the report. But they should not see the option at all, because now they will click on it and report an error.

A strings isn't localized

I've seen that there is a string in the header, the one which tells which the grading method is, that isn't localized:

irudia

I think that the values there are rubric and marking guide, in that case I believe that these core strings can be used for that localization:
gradingform_guide | pluginname
gradingform_rubric | pluginname

Issue with number of submissions

Describe the bug
A client of ours using the plugin described that it was failing to bring through the correct number of submissions when used with an assignment activity.

If there were 20 submissions, when the report was run, at the bottom of the page it would say, for example, 'showing 1-10 of 13 submissions'. If you enter the grader report, click into 'grade' and click through a few entries, then return to the report, it would increase slightly and say 'showing 10-10 of 16 submissions'.

To Reproduce
Steps to reproduce the behavior:

  1. Create an assignment activity with a significant number of submissions
  2. Once all of the submissions have been gathered, access the marking guide breakdown report
  3. As the bottom of the page, it should say 'showing 1-10 of X submissions', which is lower than the genuine number of submissions
  4. Exit and go to 'View all submissions'
  5. Click 'grade' in one of them and use the change user arrows to toggle through a few without changing anything, but having to click 'save and continue' regardless
  6. Exit and return the the marking guide breakdown report
  7. The number of submissions at the bottom should have increased by a few more submissions

Expected behavior
The total number of submissions returned by the report should match the number received.

Screenshots

1 - showing total number of submissions
neb1-submissions

2 - when accessing the report initially
neb2

3 - into the grading screen to click through some submissions
neb3-gradingscreen

4 - returning to the report afterwards
neb4

Desktop (please complete the following information):

  • OS: Windows 10
  • Browser: Chrome
  • Version: 110.0.5481.78

Additional context
Add any other context about the problem here.

The plugin don't apply the filters everywhere

Hi,

We are testing this plugin (which is great, btw) and we've detected that there are some places inside the plugin where the Moodle filters aren't applied, at least these:

  • The assignment name in the breadcrumb
  • The course, the assignment and the rubric names in the header table
  • The rubric criteria and level definitions

irudia

'Graded by' report issue

'Graded by' report entry always updated when a teacher merely views an assignment submission when clicking 'Grade' for that student, within the assignment 'View all submissions' page.

If there are multiple teachers for a course and one teacher graded the assignment, if another teacher enters into the Moodle grading page, the report entry is updated with the new teacher even though they have not made any changes - they simply view (and quit out of) the grading page. The time and date is also updated.

I would expect that the 'Graded by' entry in the report is only updated when 'Save changes' is selected.

Direct users to add a grading form if it doesn't exist

Describe the bug
Not a bug, but an edge case caused by user misconfiguration that could be handled to inform users.

While testing, some assignments were using the 'Rubric' grading method without having set an advanced grading form. However, the option to view the breakdown report the plugin provides is still shown. Since no grading form was created/assigned to the assignment, the get_grading_definition function in locallib.php errors when executed.

To Reproduce
Steps to reproduce the behavior:

  1. Create new course
  2. Add an assignment to module
  3. Set grading method to 'Rubric' or 'Marking Guide'
  4. Option to view breakdown report is shown
  5. Clicking this option displays error

Expected behavior
Direct and notify users to create an advanced grading form.

Screenshots
advancedgrading-error

Desktop (please complete the following information):

  • OS: Ubuntu 22.04
  • Browser: Firefox 120.0

Problem loading datatables JS breaks javascript for site

Hi, I have found that this plugin breaks javascript in my site, making navigation unusable.

Working with theme moove or boost, having this plugin installed makes the site unusable due to JS not working, so navigation stops to work.

When viewing the page https://localhost/moodle41ulpgc/report/advancedgrading/rubric.php
the browser JS console has the mesasge

The resource “https://localhost/moodle41ulpgc/lib/requirejs.php/-1/datatables.net.js” was blocked due to discondance on MIME type (“text/html”) (X-Content-Type-Options: nosniff).

Uncaught Error: Script error for "datatables.net", needed by: core/menu_navigation
http://requirejs.org/docs/errors.html#scripterror

Suggestion: a profile field should be selected by default

This is an excellent and much needed plugin to get the detail of scores entered in a marking guide. One suggestion based on my experience:

When installing the plugin none of the profile field settings in /admin/settings.php?section=reportadvancedgrading are selected by default. For me, this resulted in a table with columns out of sync (example: https://cloud.lenguas-vivas.com/index.php/f/95961) which I initially thought was a bug. When any of the profile fields are selected in the settings, the table displays correctly. My suggestion would be for (at least) one of the profile fields to be selected by default to prevent this confusion.

To Reproduce

  1. Install the plugin
  2. Go to an assignment and set up a marking guide.
  3. Mark a students assignment
  4. Select Filter > Marking guide breakdown report
  5. Table is displayed as in the excel example above with row 7 shifted one column to the left

Expected behavior
The student name to appear by default

Desktop:

  • OS: Windows 10 Pro 22H2
  • Browser: Chrome 110.0.5481.178

Moodle:

  • 3.11.8 (Build: 20220711)
  • mysql (5.7.39-42)

Report should spread out like the gradebook report

Describe the bug
The html output does not occupy all the space it could across the page, i.e. it would be nice if it spread out like the gradebook does. I tried to work out how the Gradebook does it but without success.

Site level reporting of Advanced Grading

This is not a bug, just a possible enhancement question.

Would it be helpful and possible to extend this report to cover all courses in a specific year for example?

Thank you!

Only active grading instances should be shown

Describe the bug
Several advanced grading methods checks for INSTANCE_STATUS_INCOMPLETE (0) status of the grading instance showing results that are not accurante with the real status of the graded user.

That status means:

The grader started grading but did clicked neither submit nor cancel

I don't think this status is the most correct. In fact I've arrived to a situation where a student is not graded but the report keeps showing me some grades in a rubric criteria.

INSTANCE_STATUS_ACTIVE (1) seems to be a more appropiate flag to check for. In fact, this is something that is already done in btec.php.

Failing unit test

My unit tests seem to be failing, I ran the command:

vendor/bin/phpunit report/advancedgrading/tests/locallib_test.php

Output:

Moodle 4.1.6+ (Build: 20231102), 141337c28fa0721de8f52460c111224ffc699c74
Php: 7.4.33, mysqli: 8.0.34, OS: Linux 6.2.0-36-generic x86_64
PHPUnit 9.5.28 by Sebastian Bergmann and contributors.

..F                                                                 3 / 3 (100%)

Time: 02:11.747, Memory: 107.00 MB

There was 1 failure:

1) report_advancedgrading\locallib_test::test_guide
Failed asserting that an array contains 'admin_452525f043d9bb60aa3da1ebf45ca6b5'.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.