コード例 #1
0
ファイル: ajax.php プロジェクト: aolley/MoodleDirectV2
     break;
 case "orig_zip":
 case "xls_inbox":
 case "origchecked_zip":
 case "gmpdf_zip":
     $assignmentid = required_param('assignment', PARAM_INT);
     $turnitintooltwoassignment = new turnitintooltwo_assignment($assignmentid);
     $cm = get_coursemodule_from_instance("turnitintooltwo", $assignmentid);
     if (has_capability('mod/turnitintooltwo:grade', context_module::instance($cm->id))) {
         $partid = optional_param('part', 0, PARAM_INT);
         $user = new turnitintooltwo_user($USER->id, 'Instructor');
         $user->edit_tii_user();
         if ($action == "orig_zip") {
             $cm = get_coursemodule_from_instance("turnitintooltwo", $assignmentid);
             $partdetails = $turnitintooltwoassignment->get_part_details($partid, "turnitin");
             $submissions = $turnitintooltwoassignment->get_submissions($cm, $partdetails->id);
             $submissionids = array();
             foreach ($submissions[$partdetails->id] as $k => $v) {
                 if (!empty($v->submission_objectid)) {
                     $submissionids[] = $v->submission_objectid;
                 }
             }
         } else {
             $submissionids = optional_param_array('submission_ids', array(), PARAM_INT);
         }
         echo turnitintooltwo_view::output_download_launch_form($action, $user->tii_user_id, $partid, $submissionids);
     }
     break;
 case "get_users":
     $PAGE->set_context(context_system::instance());
     if (is_siteadmin()) {
コード例 #2
0
ファイル: lib.php プロジェクト: aolley/MoodleDirectV2
/**
 * This is a standard Moodle module that prints out a summary of all activities of this kind in the My Moodle page for a user
 *
 * @param object $courses
 * @param object $htmlarray
 * @global type $USER
 * @global type $CFG
 * @global type $DB
 * @global type $OUTPUT
 * @return bool success
 */
function turnitintooltwo_print_overview($courses, &$htmlarray)
{
    global $USER, $CFG, $DB, $OUTPUT;
    if (empty($courses) || !is_array($courses) || count($courses) == 0) {
        return array();
    }
    if (!($turnitintooltwos = get_all_instances_in_courses('turnitintooltwo', $courses))) {
        return;
    }
    $submissioncount = array();
    foreach ($turnitintooltwos as $key => $turnitintooltwo) {
        $turnitintooltwoassignment = new turnitintooltwo_assignment($turnitintooltwo->id, $turnitintooltwo);
        $parts = $turnitintooltwoassignment->get_parts(false);
        $cm = get_coursemodule_from_id('turnitintooltwo', $turnitintooltwo->coursemodule);
        $context = context_module::instance($cm->id);
        $partsarray = array();
        $grader = has_capability('mod/turnitintooltwo:grade', $context);
        if ($grader) {
            $allusers = get_users_by_capability($context, 'mod/turnitintooltwo:submit', 'u.id', '', '', '', 0, '', false);
            $submissionsquery = $DB->get_records_select('turnitintooltwo_submissions', 'turnitintooltwoid = ? GROUP BY id, submission_part, submission_grade, submission_gmimaged', array($turnitintooltwo->id), '', 'id, submission_part, submission_grade, submission_gmimaged');
            foreach ($submissionsquery as $submission) {
                if (!isset($submissioncount[$submission->submission_part])) {
                    $submissioncount[$submission->submission_part] = array('graded' => 0, 'submitted' => 0);
                }
                if ($submission->submission_grade != 'NULL' and $submission->submission_gmimaged == 1) {
                    $submissioncount[$submission->submission_part]['graded']++;
                }
                $submissioncount[$submission->submission_part]['submitted']++;
            }
        }
        foreach ($parts as $part) {
            if (!isset($submissioncount[$part->id])) {
                $submissioncount[$part->id] = array('graded' => 0, 'submitted' => 0);
            }
            $partsarray[$part->id]['name'] = $part->partname;
            $partsarray[$part->id]['dtdue'] = $part->dtdue;
            if ($grader) {
                // If user is a grader.
                $numsubmissions = $submissioncount[$part->id]['submitted'];
                $graded = $submissioncount[$part->id]['graded'];
                $input = new stdClass();
                $input->submitted = $numsubmissions;
                $input->graded = $graded;
                $input->total = count($allusers);
                $input->gplural = $graded != 1 ? 's' : '';
                $partsarray[$part->id]['status'] = get_string('tutorstatus', 'turnitintooltwo', $input);
            } else {
                // If user is a student.
                $submission = $turnitintooltwoassignment->get_submissions($cm, $part->id, $USER->id, 1);
                if (!empty($submission[$part->id][$USER->id])) {
                    $input = new stdClass();
                    $input->modified = userdate($submission[$part->id][$USER->id]->submission_modified, get_string('strftimedatetimeshort', 'langconfig'));
                    $input->objectid = $submission[$part->id][$USER->id]->submission_objectid;
                    $partsarray[$part->id]['status'] = get_string('studentstatus', 'turnitintooltwo', $input);
                } else {
                    $partsarray[$part->id]['status'] = get_string('nosubmissions', 'turnitintooltwo');
                }
            }
        }
        $attributes["class"] = $turnitintooltwo->visible ? "" : "dimmed";
        $attributes["title"] = get_string('modulename', 'turnitintooltwo');
        $assignmentlink = html_writer::link($CFG->wwwroot . "/mod/turnitintooltwo/view.php?id=" . $turnitintooltwo->coursemodule, $turnitintooltwo->name, $attributes);
        $partsblock = "";
        foreach ($partsarray as $thispart) {
            $partstr = $thispart['name'] . ' - ' . get_string('dtdue', 'turnitintooltwo') . ': ' . userdate($thispart['dtdue'], get_string('strftimedatetimeshort', 'langconfig'), $USER->timezone);
            $partsblock .= $OUTPUT->box($OUTPUT->box($partstr, 'bold') . $OUTPUT->box($thispart['status'], 'italic'), 'info');
        }
        $str = html_writer::tag('div', html_writer::tag('div', get_string('modulename', 'turnitintooltwo') . ": " . $assignmentlink . $partsblock, array('class' => 'name')), array('class' => 'turnitintooltwo overview'));
        if (empty($htmlarray[$turnitintooltwo->course]['turnitintooltwo'])) {
            $htmlarray[$turnitintooltwo->course]['turnitintooltwo'] = $str;
        } else {
            $htmlarray[$turnitintooltwo->course]['turnitintooltwo'] .= $str;
        }
    }
}