/** * * @param TiiSubmission $submission */ public function replaceSubmission($submission) { $params_merge = $this->getResubmissionFormHash($submission); if (is_null($submission->getSubmissionDataPath()) && is_null($submission->getSubmissionDataUrl())) { $params_merge['custom_submission_data'] = $submission->getSubmissionDataText(); } else { if (is_null($submission->getSubmissionDataUrl())) { // CURL uploading with @ has been deprecated in PHP 5.5 if (class_exists('CURLFile')) { $finfo = new finfo(FILEINFO_MIME); $mimetype = $finfo->file($submission->getSubmissionDataPath()); $params_merge['custom_submission_data'] = new CurlFile($submission->getSubmissionDataPath(), $mimetype); } else { $params_merge['custom_submission_data'] = '@' . $submission->getSubmissionDataPath(); } } } $transport = $this->transportData($params_merge); $response = new Response($this); if ($response->getStatusCode() == 'failure') { throw new TurnitinSDKException($response->getStatusCode(), $response->getDescription()); } else { $dom = $response->getDomObject(); $tiiSubmission = new TiiSubmission(); $tiiSubmission->setSubmissionId($dom->getElementsByTagName('lis_result_sourcedid')->item(0)->nodeValue); $tiiSubmission->setTextExtract(@$dom->getElementsByTagName('submission_data_extract')->item(0)->nodeValue); $response->setSubmission($tiiSubmission); } return $response; }