turnitin / moodle-plagiarism_turnitinsim

7 stars 9 forks source link

Feedback files in assignment activity #89

Closed taraghi closed 3 years ago

taraghi commented 3 years ago

in an assignment activity, teachers can upload files as feedback on the files already submitted (and graded) If Turnitin is enabled in the assignment activity, these feedback files are also checked for plagiarism, which makes no sense.

These files should be excluded from plagiarism checking.

JMarshall841 commented 3 years ago

This was resolved as a part of the latest release. https://github.com/turnitin/moodle-plagiarism_turnitinsim/releases/tag/v2021011801

anieminen commented 3 years ago

Hi,

I think we have an error that is related to the feedback files. Plugin plagiarism_turnitinsim is the latest version (v1.2 - 2021011801).

When a teacher clicks "View all submissions" button in an assignment that has Turnitin Integrity plugin enabled, the submissions page is broken and there is a database error:

Default exception handler: Error writing to database Debug: Column 'userid' cannot be null\nINSERT INTO mdl_plagiarism_turnitinsim_users (userid,turnitinid) VALUES(?,?)\n[array (\n 0 => NULL,\n 1 => 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',\n)]

I did some digging and it seems that the plugin is trying to handle a file, that has component => 'assignfeedback_editpdf'. So I guess that is a feedback file? The file record has no userid, which leads to the error.

Here is the full error message with debugging on:

Default exception handler: Error writing to database Debug: Column 'userid' cannot be null\nINSERT INTO mdl_plagiarism_turnitinsim_users (userid,turnitinid) VALUES(?,?)\n[array (\n 0 => NULL,\n 1 => 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',\n)]\nError code: dmlwriteexception\n line 489 of /lib/dml/moodle_database.php: dml_write_exception thrown\n line 1357 of /lib/dml/mysqli_native_moodle_database.php: call to moodle_database->query_end()\n line 1403 of /lib/dml/mysqli_native_moodle_database.php: call to mysqli_native_moodle_database->insert_record_raw()\n line 102 of /plagiarism/turnitinsim/classes/user.class.php: call to mysqli_native_moodle_database->insert_record()\n line 85 of /plagiarism/turnitinsim/classes/user.class.php: call to plagiarism_turnitinsim_user->create_turnitinid()\n line 614 of /plagiarism/turnitinsim/lib.php: call to plagiarism_turnitinsim_user->__construct()\n line 347 of /plagiarism/turnitinsim/lib.php: call to plagiarism_plugin_turnitinsim->submission_handler()\n line 48 of /lib/plagiarismlib.php: call to plagiarism_plugin_turnitinsim->get_links()\n line 1431 of /mod/assign/renderer.php: call to plagiarism_get_links()\n line 63 of /mod/assign/renderer.php: call to mod_assign_renderer->htmllize_tree()\n line 461 of /lib/outputrenderers.php: call to mod_assign_renderer->render_assign_files()\n line 50 of /mod/assign/renderer.php: call to plugin_renderer_base->render()\n line 6072 of /mod/assign/locallib.php: call to mod_assign_renderer->assign_files()\n line 302 of /mod/assign/feedback/editpdf/locallib.php: call to assign->render_area_files()\n line 286 of /mod/assign/feedback/editpdf/locallib.php: call to assign_feedback_editpdf->view()\n line 1438 of /mod/assign/gradingtable.php: call to assign_feedback_editpdf->view_summary()\n line 1547 of /mod/assign/gradingtable.php: call to assign_grading_table->format_plugin_summary_with_link()\n line 799 of /lib/tablelib.php: call to assign_grading_table->other_cols()\n line 588 of /mod/assign/gradingtable.php: call to flexible_table->format_row()\n line 1910 of /lib/tablelib.php: call to assign_grading_table->format_row()\n line 2034 of /lib/tablelib.php: call to table_sql->build_table()\n line 1469 of /mod/assign/renderer.php: call to table_sql->out()\n line 1250 of /mod/assign/renderer.php: call to mod_assign_renderer->flexible_table()\n line 461 of /lib/outputrenderers.php: call to mod_assign_renderer->render_assign_grading_table()\n line 4545 of /mod/assign/locallib.php: call to plugin_renderer_base->render()\n line 4641 of /mod/assign/locallib.php: call to assign->view_grading_table()\n line 649 of /mod/assign/locallib.php: call to assign->view_grading_page()\n line 55 of /mod/assign/view.php: call to assign->view()

JMarshall841 commented 3 years ago

Hi, This issue has been escalated to the engineering team via support. We are currently investigating the error and hope to have a fix out soon.

dwinn commented 3 years ago

Hi @anieminen, we have just released v2021030201 which fixes the issue with annotated PDFs throwing userid errors.

anieminen commented 3 years ago

Hi,

Thanks for the notice. I will upgrade the plugin.