marcusgreen / moodle-report_advancedgrading Goto Github PK
View Code? Open in Web Editor NEWExport grades from assignment using advanced grading methods in excel format
Export grades from assignment using advanced grading methods in excel format
Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
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.
If a teacher has added an image to the feedback on an assignment, viewing the grading report shows a broken image, but attempting to download the report throws a fatal error:
Exception - File @@PluginFile@@/filename.png not found!
line 352 of /report/advancedgrading/locallib.php: call to PhpOffice\PhpSpreadsheet\Reader\Html->loadFromString()
line 147 of /report/advancedgrading/locallib.php: call to download()
line 64 of /report/advancedgrading/rubric.php: call to send_output()
probably a few different methods to fix that - maybe doing a strip tags on the output might be an easy option.
The order of printing the headers in the report doesn't always seem to match the data itself. In some cases we've seen weird behavior and the titles of some columns have been swapped.
Getting the criteriarecord to populate in the right order in the $data array seems to fix this. (PR incoming.)
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
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:
View the below screenshots for reference:
Assignment -> More -> 'Rubric breakdown report'
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:
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
Recently we have developed a new Ranged rubrics plugin see https://github.com/catalyst/moodle-gradingform_rubric_ranges
Would be nice to get a support for this one as well.
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:
Expected behavior
The total number of submissions returned by the report should match the number received.
Screenshots
1 - showing total number of submissions
2 - when accessing the report initially
3 - into the grading screen to click through some submissions
4 - returning to the report afterwards
Desktop (please complete the following information):
Additional context
Add any other context about the problem here.
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!
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:
Expected behavior
Direct and notify users to create an advanced grading form.
Desktop (please complete the following information):
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.
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
Expected behavior
The student name to appear by default
Desktop:
Moodle:
I've seen that there is a string in the header, the one which tells which the grading method is, that isn't localized:
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
Describe the bug
A clear and concise description of what the bug is. We are using Moodle 4.3.2
When clicking on the Rubric Breakdown Report the following error occurs: Exception - count(): Argument #1 ($value) must be of type Countable|array, null given
To Reproduce
Screenshots
Our Rubric looks like this:
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:
'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.
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'.
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.
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.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.