/** * Return the output for a form to launch the relevant LTi function * It is then submitted on load via Javascript * * @param string $userrole either Instructor or Learner * @param int $userid * @return output form */ public static function output_lti_form_launch($type, $userrole, $partid = 0, $classid = 0) { global $USER, $CFG; // Initialise Comms Object. $turnitincomms = new turnitintooltwo_comms(); $turnitincall = $turnitincomms->initialise_api(); $user = new turnitintooltwo_user($USER->id, $userrole); $lti = new TiiLTI(); $lti->setUserId($user->tii_user_id); $lti->setRole($userrole); $lti->setFormTarget(''); switch ($type) { case "messages_inbox": $ltifunction = "outputMessagesForm"; break; case "rubric_manager": if ($classid != 0) { $lti->setClassId($classid); } $ltifunction = "outputRubricManagerForm"; break; case "rubric_view": $lti->setAssignmentId($partid); $ltifunction = "outputRubricViewForm"; break; case "quickmark_manager": $ltifunction = "outputQuickmarkManagerForm"; break; case "peermark_manager": $lti->setAssignmentId($partid); $ltifunction = "outputPeerMarkSetupForm"; break; case "peermark_reviews": $lti->setAssignmentId($partid); $ltifunction = "outputPeerMarkReviewForm"; break; } ob_start(); $turnitincall->{$ltifunction}($lti); $rubricform = ob_get_contents(); ob_end_clean(); return $rubricform; }