/**
  * Initialise the API object
  *
  * @return object \APITurnitin
  */
 public function initialise_api($testingconnection = false)
 {
     global $CFG, $tiipp;
     $api = new TurnitinAPI($this->tiiaccountid, $this->tiiapiurl, $this->tiisecretkey, $this->tiiintegrationid, $this->langcode);
     // Enable logging if diagnostic mode is turned on.
     if ($this->diagnostic) {
         $api->setLogPath($CFG->tempdir . '/turnitintooltwo/logs/');
     }
     // Use Moodle's proxy settings if specified
     if (!empty($CFG->proxyhost)) {
         $api->setProxyHost($CFG->proxyhost);
     }
     if (!empty($CFG->proxyport)) {
         $api->setProxyPort($CFG->proxyport);
     }
     if (!empty($CFG->proxyuser)) {
         $api->setProxyUser($CFG->proxyuser);
     }
     if (!empty($CFG->proxypassword)) {
         $api->setProxyPassword($CFG->proxypassword);
     }
     if (!empty($CFG->proxytype)) {
         $api->setProxyType($CFG->proxytype);
     }
     if (!empty($CFG->proxybypass)) {
         $api->setProxyBypass($CFG->proxybypass);
     }
     $plugin_version = turnitintooltwo_get_version();
     $api->setIntegrationVersion($CFG->version);
     $api->setPluginVersion($plugin_version);
     if (is_readable("{$CFG->dataroot}/moodleorgca.crt")) {
         $certificate = realpath("{$CFG->dataroot}/moodleorgca.crt");
         $api->setSSLCertificate($certificate);
     }
     // Offline mode provided by Androgogic
     if (!empty($CFG->tiioffline) && !$istestingconnection && empty($tiipp->in_use)) {
         turnitintooltwo_print_error('turnitintoolofflineerror', 'turnitintooltwo');
     }
     $api->setTestingConnection($testingconnection);
     $api->setPerformanceLog(new turnitintooltwo_performancelog());
     return $api;
 }
コード例 #2
0
        $elements[] = array('text', 'nonsubmitters_subject', get_string('nonsubmitterssubject', 'turnitintooltwo'), '', '', 'required', get_string('nonsubmitterssubjecterror', 'turnitintooltwo'), PARAM_TEXT);
        $elements[] = array('textarea', 'nonsubmitters_message', get_string('nonsubmittersmessage', 'turnitintooltwo'), '', '', 'required', get_string('nonsubmittersmessageerror', 'turnitintooltwo'), PARAM_TEXT);
        $elements[] = array('advcheckbox', 'nonsubmitters_sendtoself', get_string('nonsubmitterssendtoself', 'turnitintooltwo'), '', array(0, 1));
        $customdata["checkbox_label_after"] = true;
        $elements[] = array('hidden', 'id', $cm->id);
        $elements[] = array('hidden', 'part', $part);
        $elements[] = array('hidden', 'action', 'emailnonsubmitters');
        $elements[] = array('submit', 'send_email', get_string('nonsubmitterssubmit', 'turnitintooltwo'));
        $customdata["elements"] = $elements;
        $customdata["hide_submit"] = true;
        $customdata["disable_form_change_checker"] = true;
        $optionsform = new turnitintooltwo_form('', $customdata);
        echo html_writer::tag('div', $output . $optionsform->display(), array('class' => 'nonsubmittersform'));
        unset($_SESSION['form_data']);
        break;
    case "emailsent":
        echo html_writer::tag('div', get_string('nonsubmittersformsuccess', 'turnitintooltwo'), array('class' => 'nonsubmittersformsuccessmsg'));
        break;
}
echo html_writer::end_tag("div");
echo html_writer::end_tag("div");
echo $OUTPUT->footer();
// This comment is here as it is useful for product support.
$partsstring = "(";
foreach ($parts as $part) {
    $partsstring .= $partsstring != "(" ? " | " : "";
    $partsstring .= $part->partname . ': ' . $part->tiiassignid;
}
$partsstring .= ")";
echo '<!-- Turnitin Moodle Direct Version: ' . turnitintooltwo_get_version() . ' - ' . $partsstring . ' -->';
コード例 #3
0
     $output = $helpdeskwizard->output_wizard($id);
     break;
 case "supportform":
     include "classes/helpdeskwizard/helpdeskwizard.php";
     $helpdeskwizard = new helpdeskwizard();
     $title = get_string('turnitinhelpdesk', 'turnitintooltwo');
     // Get the Turnitin class id if we are in a class context.
     $tiiclass = 0;
     if ($id != 0) {
         $course = turnitintooltwo_assignment::get_course_data($course->id);
         $tiiclass = isset($course->turnitin_cid) ? $course->turnitin_cid : 0;
     }
     $category = optional_param('category', "", PARAM_ALPHAEXT);
     $sub_category = optional_param('sub_category', "", PARAM_ALPHAEXT);
     $config = turnitintooltwo_admin_config();
     $plugin_version = turnitintooltwo_get_version();
     // Parameters to pass to support form.
     $params = array('category' => $category, 'sub_category' => $sub_category, 'class_id' => $tiiclass, 'vle_version' => 'Moodle (' . $CFG->branch . ') ' . $CFG->version, 'integration_id' => 'MoodleDirectV2', 'integration_version' => $plugin_version, 'account_id' => $config->accountid);
     // Output Iframe containing Turnitin Helpdesk form.
     $output = $helpdeskwizard->output_form($params);
     break;
 case "courses":
     require_capability('moodle/course:create', context_system::instance());
     $title = get_string('restorationheader', 'turnitintooltwo');
     $jsrequired = true;
     $output .= html_writer::tag('h2', get_string('restorationheader', 'turnitintooltwo'));
     $output .= html_writer::tag('p', get_string('coursebrowserdesc', 'turnitintooltwo'));
     $coursesearchform = html_writer::label(get_string('coursetitle', 'turnitintooltwo') . ': ', 'search_course_title');
     $coursesearchform .= html_writer::empty_tag('input', array('type' => 'text', 'id' => 'search_course_title', 'name' => 'search_course_title'));
     $coursesearchform .= html_writer::label(get_string('integration', 'turnitintooltwo') . ': ', 'search_course_integration');
     $coursesearchform .= html_writer::select($tiiintegrationids, 'search_course_integration', '', array('' => 'choosedots'), array('id' => 'search_course_integration'));
コード例 #4
0
 public function definition()
 {
     global $CFG, $DB, $USER, $COURSE;
     $config = turnitintooltwo_admin_config();
     // Module string is useful for product support.
     $modulestring = '<!-- Turnitin Moodle Direct Version: ' . turnitintooltwo_get_version() . ' - (';
     // Get Moodle Course Object.
     $course = turnitintooltwo_assignment::get_course_data($COURSE->id);
     // Create or edit the class in Turnitin.
     if ($course->turnitin_cid == 0) {
         $tiicoursedata = turnitintooltwo_assignment::create_tii_course($course, $USER->id);
         $course->turnitin_cid = $tiicoursedata->turnitin_cid;
         $course->turnitin_ctl = $tiicoursedata->turnitin_ctl;
     } else {
         turnitintooltwo_assignment::edit_tii_course($course);
         $course->turnitin_ctl = $course->fullname . " (Moodle TT)";
     }
     // Join this user to the class as an instructor and get their rubrics.
     $instructor = new turnitintooltwo_user($USER->id, 'Instructor');
     $instructor->join_user_to_class($course->turnitin_cid);
     $instructor->set_user_values_from_tii();
     $instructorrubrics = $instructor->get_instructor_rubrics();
     // Get rubrics that are shared on the account.
     $turnitinclass = new turnitintooltwo_class($course->id);
     $turnitinclass->read_class_from_tii();
     // Merge the arrays, prioitising instructor owned arrays.
     $rubrics = $instructorrubrics + $turnitinclass->sharedrubrics;
     $this->numsubs = 0;
     if (isset($this->_cm->id)) {
         $turnitintooltwoassignment = new turnitintooltwo_assignment($this->_cm->instance);
         $turnitintooltwoassignment->update_assignment_from_tii();
         $this->turnitintooltwo = $DB->get_record("turnitintooltwo", array("id" => $this->_cm->instance));
         $parts = $DB->get_records("turnitintooltwo_parts", array("turnitintooltwoid" => $this->_cm->instance, "deleted" => 0), 'id');
         $i = 0;
         foreach ($parts as $part) {
             $i++;
             $attributes = array("id", "partname", "dtstart", "dtdue", "dtpost", "maxmarks");
             foreach ($attributes as $att) {
                 $attribute = $att . $i;
                 $this->current->{$attribute} = $part->{$att};
             }
             $attribute = "numsubs" . $i;
             $this->current->{$attribute} = $DB->count_records('turnitintooltwo_submissions', array('turnitintooltwoid' => $this->turnitintooltwo->id, 'submission_part' => $part->id));
             $this->numsubs += $this->current->{$attribute};
             $modulestring .= $modulestring != "(" ? " | " : "";
             $modulestring .= $part->partname . ': ' . $part->tiiassignid;
         }
         $this->updating = true;
     } else {
         $this->updating = false;
         $instructordefaults = $instructor->get_instructor_defaults();
         if (empty($instructordefaults)) {
             $instructordefaults = array();
         }
         foreach ($instructordefaults as $k => $v) {
             $this->current->{$k} = $v;
         }
     }
     // Overwrite instructor default repository if admin is forcing repository setting
     switch ($config->repositoryoption) {
         case 2:
             // Force Standard Repository
             $this->current->submitpapersto = 1;
             break;
         case 3:
             // Force No Repository
             $this->current->submitpapersto = 0;
             break;
     }
     $modulestring .= ') -->';
     $this->show_form($rubrics, $modulestring, $course->turnitin_cid);
 }