Skip to content

Commit

Permalink
Merge pull request #101 from turnitin/develop
Browse files Browse the repository at this point in the history
Release 2021011801
  • Loading branch information
dwinn authored Jan 18, 2021
2 parents dbdc427 + f6035b4 commit c1b641f
Show file tree
Hide file tree
Showing 56 changed files with 1,147 additions and 453 deletions.
55 changes: 55 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,58 @@
### Date: 2021-January-18
### Release: v2021011801

#### :zap: What's new

---

#### Support for Moodle 3.10

You can now confidently use Turnitin with Moodle 3.10.

#### Improved loading screen for the Turnitin Integrity Viewer

We’ve improved the loading screen you see when you launch the Turnitin Integrity viewer. The new loading screen includes an animation to indicate that the viewer is still opening and will be ready soon.

You can use this new animation to tell if something may have gone wrong and needs to be investigated.

#### Styling and workflow improvements to the Turnitin EULA

We haven’t made any changes to the EULA itself, but we have adjusted the styling of the box that is shown to ask you to review and accept it when a user first uses Turnitin. We’ve also taken the opportunity to fix a few bugs that could interrupt the intended EULA workflow

#### Get Help in all of Turnitin’s supported languages

Did you know we offer full step-by-step guidance for all Turnitin features? You’ll find direct links to the pages relevant for the language you view the Turnitin Integrity plugin in.

#### Use Turnitin with older submissions

If you enable Turnitin for an assignment after submissions have already been made, we will now queue these for report generation the next time you view the inbox in Moodle. These files will have the QUEUED status. If a student has not accepted the Turnitin EULA yet, we will instead show Awaiting EULA and will only process the file after the student has accepted it.

#### :wrench: Fixes and enhancements

---

#### Assignment settings have the correct spacing

The Turnitin settings configured when creating a Moodle assignment could have odd spacing. We’ve cleaned this up so the settings flow as they should.

#### Feedback and Intro files will no longer be checked for similarity

We no longer check any feedback or intro files you attach to an assignment for your students for similarity.

#### Deleting a course module will now also delete any attached Turnitin submissions

If a course module is deleted, along with its Moodle Assignments, we will now also delete any relevant Turnitin settings or entries in our database.

#### dateformat now uses the correct format

Thanks to our friends at OpenLMS who let us know that the download_as_dataformat() method was deprecated in Moodle 3.9. We’ve now updated this to the latest code to ensure everything works correctly for all users.

#### Accept the Turnitin EULA once for all assignment types

The EULA could show multiple times for each type of Moodle assignment. Now users only have to accept it once and we will remember this choice when generating Similarity Reports for Moodle Assignments, Workshops, Forums, and quizzes.

---

### Date: 2020-September-23
### Release: v2020092301

Expand Down
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Turnitin Integrity Plugin for Moodle

Description:
-
Utilize **Turnitin Integrity’s** Similarity Report and Authorship investigating tools within Moodles assignment workflow by integrating with the Turnitin Integrity plugin. **Turnitin Integrity** is a commercial plagiarism and authorship detection system whose features depend on which paid license has been selected. This plugin is developed and maintained by Turnitin.
Utilize **Turnitin Integrity’s** Similarity Report and Authorship investigating tools within Moodle's assignment workflow by integrating with the Turnitin Integrity plugin. **Turnitin Integrity** is a commercial plagiarism and authorship detection system whose features depend on which paid license has been selected. This plugin is developed and maintained by Turnitin.

Features:
-
Expand All @@ -19,15 +19,18 @@ Useful Links

Installation
-
Before installing this plugin firstly make sure you are logged in as an Administrator and that you are using Moodle 3.5 or higher.

To install, all you need to do is copy all the files into the plagiarism/turnitinsim directory on your moodle installation. You should then go to `"Site Administration" > "Notifications"` and follow the on screen instructions.
To install, all you need to do is copy all the files into the plagiarism/turnitinsim directory on your Moodle installation. You should then go to `"Site Administration" > "Notifications"` and follow the on screen instructions.

Plagiarism plugins also need to be enabled before this plugin can be used. This should happen as part of the install process but if it doesn't then you can do this by going to `"Site Administration" > "Advanced Features"` and ticking the `"Enable plagiarism plugins"` checkbox before saving.

Configuring
-
To configure the plugin go to `"Site administration" > "Plugins" > "Plagiarism" > "Turnitin Integrity plagiarism plugin"` and enter your API key and API URL.

Other options can also be set, such as which Moodle modules to enable the plugin for or logging. Logging can be useful in scenarios where there is a problem with your installation. Default settings for the plugin can also be enabled so that you don't have to configure every individual assignment each time.

Testing
-
This plugin contains a full suite of PHPUnit tests which can be run against your Moodle installation.
Expand Down
46 changes: 4 additions & 42 deletions ajax/eula_response.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@

require_once(__DIR__."/../../../config.php");
require_once(__DIR__."/../lib.php");
require_once(__DIR__."/../classes/eula.class.php");

require_login();

Expand All @@ -34,51 +35,12 @@

// Get any params passed in.
$action = required_param('action', PARAM_ALPHAEXT);
$contextid = optional_param('contextid', 0, PARAM_INT);

$tsrequest = new plagiarism_turnitinsim_request();

switch ($action) {
case "accept_eula":
// Get current user record.
$user = $DB->get_record('plagiarism_turnitinsim_users', array('userid' => $USER->id));

// Update EULA accepted version and timestamp for user.
$data = new stdClass();
$data->id = $user->id;
$data->lasteulaaccepted = get_config('plagiarism_turnitinsim', 'turnitin_eula_version');
$data->lasteulaacceptedtime = time();
$lang = $tsrequest->get_language();
$data->lasteulaacceptedlang = $lang->localecode;
$DB->update_record('plagiarism_turnitinsim_users', $data);

// If we have a context id then this is an instructor. So we update current submissions.
if (!empty($contextid)) {
$eula = new plagiarism_turnitinsim_eula();

// Get all submissions in this context.
$context = context::instance_by_id($contextid);
$submissions = $DB->get_records(
'plagiarism_turnitinsim_sub',
array(
'cm' => $context->instanceid,
'status' => TURNITINSIM_SUBMISSION_STATUS_EULA_NOT_ACCEPTED,
'submitter' => $USER->id
)
);

// Set each paper in this module submitted by this user to queued.
foreach ($submissions as $submission) {
$data = new stdClass();
$data->id = $submission->id;
$data->status = TURNITINSIM_SUBMISSION_STATUS_QUEUED;
$data->cm = $context->instanceid;
$data->tiiattempts = 0;
$data->tiiretrytime = 0;

$DB->update_record('plagiarism_turnitinsim_sub', $data);
}
}
echo json_encode(["success" => true]);
echo $eula->accept_eula();

break;
}
}
2 changes: 1 addition & 1 deletion amd/build/cv_launch.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit c1b641f

Please sign in to comment.