/** * Warning display to indicate duplicated assignments, normally as a result of a backup and restore * * @param object $cm The moodle course module object for this instance * @param object $turnitintool The turnitin assignment data object * @return mixed Returns HTML duplication warning if the logged in users has grade rights otherwise null */ function turnitintool_duplicatewarning($cm, $turnitintool) { global $CFG; if (has_capability('mod/turnitintool:grade', turnitintool_get_context('MODULE', $cm->id))) { $parts = turnitintool_get_records('turnitintool_parts', 'turnitintoolid', $turnitintool->id); $dups = array(); $output = ''; foreach ($parts as $part) { $dup_parts = turnitintool_get_records_select('turnitintool_parts', 'tiiassignid=' . $part->tiiassignid . ' AND turnitintoolid!=' . $part->turnitintoolid . ' AND deleted=0'); $dup_parts = is_array($dup_parts) ? $dup_parts : array(); foreach ($dup_parts as $dup_part) { $dups[] = $dup_part; } if (is_array($dup_parts)) { } } if (count($dups) > 0) { $output .= turnitintool_box_start('generalbox boxwidthwide boxaligncenter notepost', 'warning', true); $output .= '<h3 class="error">' . get_string('notice') . '</h3>'; $output .= '<p>' . get_string('duplicatesfound', 'turnitintool') . '</p>'; $output .= '<ul>' . PHP_EOL; } foreach ($dups as $dup_part) { $dup_tii = turnitintool_get_record('turnitintool', 'id', $dup_part->turnitintoolid); $dup_cm = get_coursemodule_from_instance('turnitintool', $dup_tii->id); $dup_course = turnitintool_get_record('course', 'id', $dup_tii->course); $output .= '<li><a href="' . $CFG->wwwroot . '/mod/turnitintool/view.php?id=' . $dup_cm->id . '">'; $output .= $dup_course->fullname . ' (' . $dup_course->shortname . ') - ' . $dup_tii->name . ' - ' . $dup_part->partname . '<br />'; $output .= '</a></li>' . PHP_EOL; } if (count($dups) > 0) { $output .= '</ul>' . PHP_EOL; $output .= turnitintool_box_end(true); } return $output; } else { return ''; } }
echo turnitintool_view_options($cm, $turnitintool); } if ($do == 'tutors') { if (!is_null($notice)) { turnitintool_box_start('generalbox boxwidthwide boxaligncenter error', 'errorbox'); echo $notice; turnitintool_box_end(); } else { echo turnitintool_view_tiitutors($cm, $turnitintool, $tutors); } } // Finish the page echo '</div>'; if (isset($PAGE) and @is_callable(array($PAGE->requires, 'js'))) { // Are we using new moodle or old? // We already added the Moodle 2.0+ stuff } else { // These need to go to the botton here to avoid conflicts require_js($CFG->wwwroot . '/mod/turnitintool/scripts/datatables.min.js'); require_js($CFG->wwwroot . '/mod/turnitintool/scripts/datatables.plugins.js'); require_js($CFG->wwwroot . '/mod/turnitintool/scripts/inboxtable.js'); } turnitintool_footer($course); $parts = turnitintool_get_records('turnitintool_parts', 'turnitintoolid', $turnitintool->id); $parts_string = "("; foreach ($parts as $part) { $parts_string .= $parts_string != "(" ? " | " : ""; $parts_string .= $part->partname . ': ' . $part->tiiassignid; } $parts_string .= ")"; /* ?> */
turnitintool_update_record('turnitintool_users', $user); unset($tii); } else { turnitintool_delete_records('turnitintool_users', 'id', $userlink); } } unset($loader); turnitintool_redirect($CFG->wwwroot . '/mod/turnitintool/extras.php?do=unlinkusers'); } turnitintool_header(NULL, NULL, $_SERVER["REQUEST_URI"], get_string("modulenameplural", "turnitintool"), $SITE->fullname); echo '<div id="turnitintool_style">'; turnitintool_box_start('generalbox boxwidthwide boxaligncenter', 'general'); echo '<b>' . get_string('unlinkrelinkusers', 'turnitintool') . '</b><br /><br />'; echo '<form method="POST" id="turnitin_unlink" action="' . $CFG->wwwroot . '/mod/turnitintool/extras.php?do=unlinkusers"><div style="height: 400px;overflow: auto;"> '; if ($userrows = turnitintool_get_records('turnitintool_users')) { foreach ($userrows as $userdata) { if (!($user = turnitintool_get_record('user', 'id', $userdata->userid))) { $user->id = $user->userid; $user->lastname = get_string('nonmoodleuser', 'turnitintool'); $user->firstname = ''; $user->email = get_string('notavailableyet', 'turnitintool'); } $user->turnitin_uid = $userdata->turnitin_uid; $user->turnitin_utp = $userdata->turnitin_utp; $user->linkid = $userdata->id; $userarray[] = $user; } $lastname = array(); // Obtain the columns to sort on foreach ($userarray as $key => $row) {
$selectionarray = $CFG->turnitin_enablepseudo == 1 ? array(1 => get_string('yes', 'turnitintool')) : array(0 => get_string('no', 'turnitintool')); $pseudoselect = new admin_setting_configselect('turnitin_enablepseudo', get_string('enablepseudo', 'turnitintool'), get_string('enablepseudo_desc', 'turnitintool'), 0, $selectionarray); $pseudoselect->nosave = true; } else { if (turnitintool_count_records_select('turnitintool_users') > 0) { $pseudoselect = new admin_setting_configselect('turnitin_enablepseudo', get_string('enablepseudo', 'turnitintool'), get_string('enablepseudo_desc', 'turnitintool'), 0, array(0 => get_string('no', 'turnitintool'))); } else { $pseudoselect = new admin_setting_configselect('turnitin_enablepseudo', get_string('enablepseudo', 'turnitintool'), get_string('enablepseudo_desc', 'turnitintool'), 0, $options); } } $settings->add($pseudoselect); if (isset($CFG->turnitin_enablepseudo) and $CFG->turnitin_enablepseudo) { $CFG->turnitin_pseudofirstname = isset($CFG->turnitin_pseudofirstname) ? $CFG->turnitin_pseudofirstname : get_string('defaultcoursestudent'); $settings->add(new admin_setting_configtext('turnitin_pseudofirstname', get_string('pseudofirstname', 'turnitintool'), get_string('pseudofirstname_desc', 'turnitintool'), get_string('defaultcoursestudent'))); $lnoptions = array(0 => get_string('user')); $user_profiles = turnitintool_get_records('user_info_field'); foreach ($user_profiles as $profile) { $lnoptions[$profile->id] = get_string('profilefield', 'admin') . ': ' . $profile->name; } $settings->add(new admin_setting_configselect('turnitin_pseudolastname', get_string('pseudolastname', 'turnitintool'), get_string('pseudolastname_desc', 'turnitintool'), 0, $lnoptions)); $settings->add(new admin_setting_configselect('turnitin_lastnamegen', get_string('psuedolastnamegen', 'turnitintool'), get_string('psuedolastnamegen_desc', 'turnitintool'), 0, $options)); $settings->add(new admin_setting_configtext('turnitin_pseudosalt', get_string('pseudoemailsalt', 'turnitintool'), get_string('pseudoemailsalt_desc', 'turnitintool'), '')); $settings->add(new admin_setting_configtext('turnitin_pseudoemaildomain', get_string('pseudoemaildomain', 'turnitintool'), get_string('pseudoemaildomain_desc', 'turnitintool'), '')); } // Following are default values for new instance $settings->add(new admin_setting_heading('turnitin_defaults', get_string('defaults', 'turnitintool'), get_string('defaults_desc', 'turnitintool'))); $settings->add(new admin_setting_configselect('turnitin_default_type', get_string('type', 'turnitintool'), '', 0, turnitintool_filetype_array())); $settings->add(new admin_setting_configselect('turnitin_default_numparts', get_string('numberofparts', 'turnitintool'), '', 1, array(1 => 1, 2 => 2, 3 => 3, 4 => 4, 5 => 5))); $options = array(); $scales = get_scales_menu(); foreach ($scales as $value => $scale) {
if (!is_null($param_do) and ($param_do == "viewreport" or $param_do == "savereport")) { if ($param_do == 'viewreport') { echo '<pre>'; echo "====== Turnitintool Data Dump Output ======\n\n"; } else { if ($param_do == 'savereport') { $filename = 'tii_datadump_' . $CFG->turnitin_account_id . '_' . date('dmYhm', time()) . '.txt'; header('Content-type: text/plain'); header('Content-Disposition: attachment; filename="' . $filename . '"'); echo "====== Turnitintool Data Dump File ======\n\n"; } } $tables = array('turnitintool_users', 'turnitintool_courses', 'turnitintool', 'turnitintool_parts', 'turnitintool_submissions'); foreach ($tables as $table) { echo "== " . $table . " ==\n"; if ($data = turnitintool_get_records($table)) { $headers = array_keys(get_object_vars(current($data))); $columnwidth = 25; echo str_pad('', ($columnwidth + 2) * count($headers), "="); if ($table == 'turnitintool_users') { echo str_pad('', $columnwidth + 2, "="); } echo "\n"; foreach ($headers as $header) { echo ' ' . str_pad($header, $columnwidth, " ", 1) . '|'; } if ($table == 'turnitintool_users') { echo ' ' . str_pad('Name', $columnwidth, " ", 1) . '|'; } echo "\n"; echo str_pad('', ($columnwidth + 2) * count($headers), "=");