/** * Return the output for a form to launch a zip or xls download, it is then submitted * on load via Javascript * * @param str $type the type of download that needs to be launched * @param int $partid the Turnitin id of the assignment part * @param int $userid the Turnitin user id * @param str $buttonstring string for the submit button * @return output form */ public static function output_download_launch_form($type, $userid, $partid, $submissionids = array(), $buttonstring = "Submit") { // Initialise Comms Object. $turnitincomms = new turnitintooltwo_comms(); $turnitincall = $turnitincomms->initialise_api(); // Construct LTI Form Launcher. $lti = new TiiLTI(); $lti->setAssignmentId($partid); $lti->setUserId($userid); $lti->setRole("Instructor"); $lti->setButtonText($buttonstring); if (!empty($submissionids)) { $lti->setSubmissionIds($submissionids); } switch ($type) { case "orig_zip": $ltifunction = "outputDownloadZipForm"; break; case "pdf_zip": $ltifunction = "outputDownloadPDFZipForm"; $lti->setFormTarget(''); break; case "xls_inbox": $ltifunction = "outputDownloadXLSForm"; break; case "origchecked_zip": $ltifunction = "outputDownloadZipForm"; break; case "gmpdf_zip": $ltifunction = "outputDownloadGradeMarkZipForm"; $lti->setFormTarget(''); break; } // Read the LTI launch form in the output buffer. ob_start(); $turnitincall->{$ltifunction}($lti); $launchdownload = ob_get_contents(); ob_end_clean(); return $launchdownload; }