Skip to content

Commit

Permalink
New filtercode {tiieula} will output the turnitineula.
Browse files Browse the repository at this point in the history
  • Loading branch information
JohnOLane committed Oct 9, 2024
1 parent a048c5a commit 63f8ead
Showing 1 changed file with 70 additions and 0 deletions.
70 changes: 70 additions & 0 deletions filter.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,10 @@
use core_user\table\participants_filterset;
use core_user\table\participants_search;
use Endroid\QrCode\QrCode;
use Integrations\PhpSdk\TiiLTI;

require_once($CFG->dirroot . '/course/renderer.php');
require_once($CFG->dirroot . '/plagiarism/turnitin/lib.php');

/**
* Extends the moodle_text_filter class to provide plain text support for new tags.
Expand Down Expand Up @@ -5278,6 +5280,74 @@ function ($matches) use ($infowrapper) {
}
}

// Tag: {tiieula}...{/tiieula}.
// Output the Turnitin end user liscence agreement.
if (stripos($text, '{/tiieula}') !== false) {
global $OUTPUT;

static $tiiconnection;

$tiiplagiarismplugin = new plagiarism_plugin_turnitin();
$output = '';

$tiiplagiarismplugin->load_page_components();

if (empty($tiiconnection)) {
$tiiconnection = $tiiplagiarismplugin->test_turnitin_connection();
}
if ($tiiconnection) {
$user = new turnitin_user($USER->id, 'Learner');
$eulaaccepted = ($user->useragreementaccepted == 0) ? $user->get_accepted_user_agreement() : $user->useragreementaccepted;

if ($eulaaccepted != 1) {
$eulalink = html_writer::tag('span',
get_string('turnitinppulapre', 'plagiarism_turnitin'),
array('class' => 'pp_turnitin_eula_link tii_tooltip', 'id' => 'rubric_manager_form')
);
$eulaignoredclass = ($eulaaccepted == 0) ? ' pp_turnitin_eula_ignored' : '';
$eula = html_writer::tag('div', $eulalink, array('class' => 'pp_turnitin_eula'.$eulaignoredclass,
'data-userid' => $user->id));

$form = turnitin_view::output_launch_form(
"useragreement",
0,
$user->tiiuserid,
"Learner",
get_string('turnitinppulapre', 'plagiarism_turnitin'),
false
);
$form .= " ".get_string('noscriptula', 'plagiarism_turnitin');

$noscripteula = html_writer::tag('noscript', $form, array('class' => 'warning turnitin_ula_noscript'));
}
}

if (!empty($eula)) {
$output .= $eula.$noscripteula;

$turnitincomms = new turnitin_comms();
$turnitincall = $turnitincomms->initialise_api();

$customdata = array("disable_form_change_checker" => true,
"elements" => array(array('html', $OUTPUT->box('', '', 'useragreement_inputs'))));

$eulaform = new turnitin_form($turnitincall->getApiBaseUrl().TiiLTI::EULAENDPOINT, $customdata,
'POST', $target = 'eulaWindow', array('id' => 'eula_launch'));
$output .= $OUTPUT->box($eulaform->display(), 'tii_useragreement_form', 'useragreement_form');
}

$newtext = preg_replace_callback(
'/\{tiieula\}(.*)\{\/tiieula\}/isuU',
function ($matches) use ($output) {
return $output;
},
$text
);
if ($newtext !== false) {
$text = $newtext;
}
}

/* ---------------- Apply all of the filtercodes so far. ---------------*/

if ($this->replacetags($text, $replace) == false) {
Expand Down

0 comments on commit 63f8ead

Please sign in to comment.