Open Journal Systems  3.3.0
SubmissionArtworkFileDAODelegate.inc.php
1 <?php
2 
20 import('lib.pkp.classes.submission.SubmissionFileDAODelegate');
21 import('lib.pkp.classes.submission.SubmissionArtworkFile');
22 
24 
25  //
26  // Public methods
27  //
35  function insertObject($artworkFile, $sourceFile, $isUpload = false) {
36  // First insert the data for the super-class.
37  $artworkFile = parent::insertObject($artworkFile, $sourceFile, $isUpload);
38  if (!$artworkFile) return null;
39 
40  // Now insert the artwork-specific data.
41  $this->update(
42  'INSERT INTO submission_artwork_files
43  (file_id, revision, caption, chapter_id, contact_author, copyright_owner, copyright_owner_contact, credit, permission_file_id, permission_terms)
44  VALUES
45  (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)',
46  array(
47  $artworkFile->getFileId(),
48  $artworkFile->getRevision(),
49  $artworkFile->getCaption(),
50  $artworkFile->getChapterId(),
51  $artworkFile->getContactAuthor(),
52  $artworkFile->getCopyrightOwner(),
53  $artworkFile->getCopyrightOwnerContactDetails(),
54  $artworkFile->getCredit(),
55  $artworkFile->getPermissionFileId(),
56  $artworkFile->getPermissionTerms()
57  )
58  );
59 
60  return $artworkFile;
61  }
62 
69  function updateObject($artworkFile, $previousFile) {
70  // Update the parent class table first.
71  if (!parent::updateObject($artworkFile, $previousFile)) return false;
72 
73  // Now update the artwork file table.
74  $this->update(
75  'UPDATE submission_artwork_files
76  SET
77  file_id = ?,
78  revision = ?,
79  caption = ?,
80  chapter_id = ?,
81  contact_author = ?,
82  copyright_owner = ?,
83  copyright_owner_contact = ?,
84  credit = ?,
85  permission_file_id = ?,
86  permission_terms = ?
87  WHERE file_id = ? and revision = ?',
88  array(
89  (int)$artworkFile->getFileId(),
90  (int)$artworkFile->getRevision(),
91  $artworkFile->getCaption(),
92  is_null($artworkFile->getChapterId()) ? null : (int)$artworkFile->getChapterId(),
93  $artworkFile->getContactAuthor(),
94  $artworkFile->getCopyrightOwner(),
95  $artworkFile->getCopyrightOwnerContactDetails(),
96  $artworkFile->getCredit(),
97  is_null($artworkFile->getPermissionFileId()) ? null : (int)$artworkFile->getPermissionFileId(),
98  $artworkFile->getPermissionTerms(),
99  (int)$previousFile->getFileId(),
100  (int)$previousFile->getRevision()
101  )
102  );
103  return true;
104  }
105 
109  function deleteObject($submissionFile) {
110  // First delete the submission file entry.
111  if (!parent::deleteObject($submissionFile)) return false;
112 
113  // Delete the artwork file entry.
114  return $this->update(
115  'DELETE FROM submission_artwork_files
116  WHERE file_id = ? AND revision = ?',
117  array(
118  (int)$submissionFile->getFileId(),
119  (int)$submissionFile->getRevision()
120  )
121  );
122  }
123 
128  function fromRow($row) {
129  $artworkFile = parent::fromRow($row);
130  $artworkFile->setCredit($row['credit']);
131  $artworkFile->setCaption($row['caption']);
132  $artworkFile->setChapterId(is_null($row['chapter_id']) ? null : (int)$row['chapter_id']);
133  $artworkFile->setContactAuthor($row['contact_author']);
134  $artworkFile->setCopyrightOwner($row['copyright_owner']);
135  $artworkFile->setPermissionTerms($row['permission_terms']);
136  $artworkFile->setPermissionFileId(is_null($row['permission_file_id']) ? null : (int)$row['permission_file_id']);
137  $artworkFile->setCopyrightOwnerContactDetails($row['copyright_owner_contact']);
138 
139  return $artworkFile;
140  }
141 
145  function newDataObject() {
146  return new SubmissionArtworkFile();
147  }
148 }
149 
150 
SubmissionArtworkFileDAODelegate\newDataObject
newDataObject()
Definition: SubmissionArtworkFileDAODelegate.inc.php:145
SubmissionArtworkFileDAODelegate
Base class for operations for retrieving and modifying ArtworkFile objects.
Definition: SubmissionArtworkFileDAODelegate.inc.php:23
SubmissionArtworkFileDAODelegate\insertObject
insertObject($artworkFile, $sourceFile, $isUpload=false)
Definition: SubmissionArtworkFileDAODelegate.inc.php:35
SubmissionArtworkFile
Artwork file class.
Definition: SubmissionArtworkFile.inc.php:19
SubmissionArtworkFileDAODelegate\fromRow
fromRow($row)
Definition: SubmissionArtworkFileDAODelegate.inc.php:128
DAO\update
update($sql, $params=false, $callHooks=true, $dieOnError=true)
Definition: DAO.inc.php:214
SubmissionFileDAODelegate
Abstract class to support DAO delegates that provide operations to retrieve and modify SubmissionFile...
Definition: SubmissionFileDAODelegate.inc.php:21
SubmissionArtworkFileDAODelegate\deleteObject
deleteObject($submissionFile)
Definition: SubmissionArtworkFileDAODelegate.inc.php:109
SubmissionArtworkFileDAODelegate\updateObject
updateObject($artworkFile, $previousFile)
Definition: SubmissionArtworkFileDAODelegate.inc.php:69