17 import(
'lib.pkp.classes.db.DAO');
18 import(
'classes.issue.IssueFile');
39 $this->_inlineableTypes = $inlineableTypes;
48 function getById($fileId, $issueId =
null) {
49 $params = array((
int) $fileId);
50 if ($issueId) $params[] = (int) $issueId;
55 ' . ($issueId?
' AND f.issue_id = ?':
''),
59 if (isset($result) && $result->RecordCount() != 0) {
60 $returner = $this->
_fromRow($result->GetRowAssoc(
false));
81 $issueFile->setId($row[
'file_id']);
82 $issueFile->setIssueId($row[
'issue_id']);
83 $issueFile->setServerFileName($row[
'file_name']);
84 $issueFile->setFileType($row[
'file_type']);
85 $issueFile->setFileSize($row[
'file_size']);
86 $issueFile->setContentType($row[
'content_type']);
87 $issueFile->setOriginalFileName($row[
'original_file_name']);
88 $issueFile->setDateUploaded($this->
datetimeFromDB($row[
'date_uploaded']));
89 $issueFile->setDateModified($this->
datetimeFromDB($row[
'date_modified']));
90 HookRegistry::call(
'IssueFileDAO::_returnIssueFileFromRow', array(&$issueFile, &$row));
102 'INSERT INTO issue_files
112 (?, ?, ?, ?, ?, ?, %s, %s)',
114 $this->datetimeToDB($issueFile->getDateModified())
117 (
int) $issueFile->getIssueId(),
118 $issueFile->getServerFileName(),
119 $issueFile->getFileType(),
120 $issueFile->getFileSize(),
121 $issueFile->getContentType(),
122 $issueFile->getOriginalFileName()
127 return $issueFile->getId();
136 sprintf(
'UPDATE issue_files
143 original_file_name = ?,
148 $this->datetimeToDB($issueFile->getDateModified())
151 (
int) $issueFile->getIssueId(),
152 $issueFile->getServerFileName(),
153 $issueFile->getFileType(),
154 $issueFile->getFileSize(),
155 $issueFile->getContentType(),
156 $issueFile->getOriginalFileName(),
157 (
int) $issueFile->getId()
161 return $issueFile->getId();
179 'DELETE FROM issue_files WHERE file_id = ?', (
int) $fileId
189 'DELETE FROM issue_files WHERE issue_id = ?', (
int) $issueId