$selval = $DB->pselectOne("SELECT mst.Scan_type \n FROM files f \n LEFT JOIN mri_scan_type mst ON (f.AcquisitionProtocolID=mst.ID)\n WHERE f.File LIKE CONCAT('%', :FName)", array('FName' => $this->Filename)); } $this->_saveFileQC($data['QCStatus'], $selval); $this->JSON = ['success' => 'Updated file QC information']; } /** * Save the QC value to the database. Only call this after everything * has been validated * * @param string $qcval The Pass/Fail status * @param string $selval The value to set the selected field to. * * @return none */ private function _saveFileQC($qcval, $selval) { $factory = \NDB_Factory::singleton(); $DB = $factory->Database(); $FileID = $DB->pselectOne("SELECT f.FileID FROM files f\n WHERE f.File LIKE CONCAT('%', :FName)", array('FName' => $this->Filename)); $AlreadySavedQC = $DB->pselectOne("SELECT COUNT(*) FROM files_qcstatus WHERE FileID=:FID", array('FID' => $FileID)); if ($AlreadySavedQC > 0) { $DB->update("files_qcstatus", ['QCStatus' => $qcval, 'Selected' => $selval], ['FileID' => $FileID]); } else { $DB->insert("files_qcstatus", ['QCStatus' => $qcval, 'Selected' => $selval, 'FileID' => $FileID]); } } } if (isset($_REQUEST['PrintImageQC'])) { $obj = new QC($_SERVER['REQUEST_METHOD'], $_REQUEST['CandID'], $_REQUEST['VisitLabel'], $_REQUEST['Filename']); print $obj->toJSONString(); }