diff --git a/lib/plagiarismlib.php b/lib/plagiarismlib.php index b8c854626ee..2ff95ab81bb 100644 --- a/lib/plagiarismlib.php +++ b/lib/plagiarismlib.php @@ -53,6 +53,31 @@ function plagiarism_get_links($linkarray) { return $output; } +/** + * returns array of plagiarism details about specified file + * + * @param int $cmid + * @param int $userid + * @param object $file moodle file object + * @return array - sets of details about specified file, one array of details per plagiarism plugin + * - each set contains at least 'analyzed', 'score', 'reporturl' + */ +function plagiarism_get_file_results($cmid, $userid, $file) { + global $CFG; + $allresults = array(); + if (empty($CFG->enableplagiarism)) { + return $allresults; + } + $plagiarismplugins = plagiarism_load_available_plugins(); + foreach($plagiarismplugins as $plugin => $dir) { + require_once($dir.'/lib.php'); + $plagiarismclass = "plagiarism_plugin_$plugin"; + $plagiarismplugin = new $plagiarismclass; + $allresults[] = $plagiarismplugin->get_file_results($cmid, $userid, $file); + } + return $allresults; +} + /** * saves/updates plagiarism settings from a modules config page - called by course/modedit.php * diff --git a/plagiarism/lib.php b/plagiarism/lib.php index ea58f52a200..6f473131921 100644 --- a/plagiarism/lib.php +++ b/plagiarism/lib.php @@ -40,6 +40,19 @@ class plagiarism_plugin { public function get_links($linkarray) { return ''; } + /** + * hook to allow plagiarism specific information to be returned unformatted + * @param int $cmid + * @param int $userid + * @param object $file moodle file object + * @return array containing at least: + * - 'analyzed' - whether the file has been successfully analyzed + * - 'score' - similarity score - ('' if not known) + * - 'reporturl' - url of originality report - '' if unavailable + */ + public function get_file_results($cmid, $userid, $file) { + return array('analyzed' => '', 'score' => '', 'reporturl' => ''); + } /** * hook to add plagiarism specific settings to a module settings page * @param object $mform - Moodle form