Open Journal Systems  3.3.0
Deposit.inc.php
1 <?php
2 
14 class Deposit extends DataObject {
15 
21  public function __construct($uuid) {
22  parent::__construct();
23 
24  //Set up new deposits with a UUID
25  $this->setUUID($uuid);
26  }
27 
32  public function getObjectType() {
33  $depositObjects = $this->getDepositObjects();
34  $depositObject = $depositObjects->next();
35  return ($depositObject?$depositObject->getObjectType():null);
36  }
37 
42  public function getObjectId() {
43  $depositObjects = $this->getDepositObjects();
44  $depositObject = $depositObjects->next();
45  return ($depositObject?$depositObject->getObjectId():null);
46  }
47 
52  public function getDepositObjects() {
53  $depositObjectDao = DAORegistry::getDAO('DepositObjectDAO');
54  return $depositObjectDao->getByDepositId($this->getJournalId(), $this->getId());
55  }
56 
61  public function getUUID() {
62  return $this->getData('uuid');
63  }
64 
69  public function setUUID($uuid) {
70  $this->setData('uuid', $uuid);
71  }
72 
77  public function getJournalId() {
78  return $this->getData('journal_id');
79  }
80 
85  public function setJournalId($journalId) {
86  $this->setData('journal_id', $journalId);
87  }
88 
94  public function getStatus() {
95  return $this->getData('status');
96  }
97 
103  public function setStatus($status) {
104  $this->setData('status', $status);
105  }
106 
111  public function getLocalStatus() {
112  if ($this->getPackagingFailedStatus()) {
113  return __('plugins.generic.pln.status.packagingFailed');
114  }
115  if ($this->getTransferredStatus()) {
116  return __('plugins.generic.pln.status.transferred');
117  }
118  if ($this->getPackagedStatus()) {
119  return __('plugins.generic.pln.status.packaged');
120  }
121  if ($this->getNewStatus()) {
122  return __('plugins.generic.pln.status.new');
123  }
124  return __('plugins.generic.pln.status.unknown');
125  }
126 
131  public function getProcessingStatus() {
132  if ($this->getSentStatus()) {
133  return __('plugins.generic.pln.status.sent');
134  }
135  if ($this->getValidatedStatus()) {
136  return __('plugins.generic.pln.status.validated');
137  }
138  if ($this->getReceivedStatus()) {
139  return __('plugins.generic.pln.status.received');
140  }
141  return __('plugins.generic.pln.status.unknown');
142  }
143 
148  public function getLockssStatus() {
149  if ($this->getLockssAgreementStatus()) {
150  return __('plugins.generic.pln.status.agreement');
151  }
152  if ($this->getLockssSyncingStatus()) {
153  return __('plugins.generic.pln.status.syncing');
154  }
155  if ($this->getLockssReceivedStatus()) {
156  return __('plugins.generic.pln.status.received');
157  }
158  return __('plugins.generic.pln.status.unknown');
159  }
160 
167  public function getComplete() {
168  return __($this->getLockssAgreementStatus()?'common.yes':'common.no');
169  }
170 
175  public function getNewStatus() {
176  return $this->getStatus() == PLN_PLUGIN_DEPOSIT_STATUS_NEW;
177  }
178 
182  public function setNewStatus() {
183  $this->setStatus(PLN_PLUGIN_DEPOSIT_STATUS_NEW);
184  }
185 
191  protected function _getStatusField($field) {
192  return $this->getStatus() & $field;
193  }
194 
200  protected function _setStatusField($value, $field) {
201  if($value) {
202  $this->setStatus($this->getStatus() | $field);
203  } else {
204  $this->setStatus($this->getStatus() & ~$field);
205  }
206  }
207 
212  public function getPackagedStatus() {
213  return $this->_getStatusField(PLN_PLUGIN_DEPOSIT_STATUS_PACKAGED);
214  }
215 
220  public function setPackagedStatus($status = true) {
221  $this->_setStatusField($status, PLN_PLUGIN_DEPOSIT_STATUS_PACKAGED);
222  }
223 
228  public function getTransferredStatus() {
229  return $this->_getStatusField(PLN_PLUGIN_DEPOSIT_STATUS_TRANSFERRED);
230  }
231 
236  public function setTransferredStatus($status = true) {
237  $this->_setStatusField($status, PLN_PLUGIN_DEPOSIT_STATUS_TRANSFERRED);
238  }
239 
244  public function getPackagingFailedStatus() {
245  return $this->_getStatusField(PLN_PLUGIN_DEPOSIT_STATUS_PACKAGING_FAILED);
246  }
247 
252  public function setPackagingFailedStatus($status = true) {
253  $this->_setStatusField($status, PLN_PLUGIN_DEPOSIT_STATUS_PACKAGING_FAILED);
254  }
255 
260  public function getReceivedStatus() {
261  return $this->_getStatusField(PLN_PLUGIN_DEPOSIT_STATUS_RECEIVED);
262  }
263 
268  public function setReceivedStatus($status = true) {
269  $this->_setStatusField($status, PLN_PLUGIN_DEPOSIT_STATUS_RECEIVED);
270  }
271 
276  public function getValidatedStatus() {
277  return $this->_getStatusField(PLN_PLUGIN_DEPOSIT_STATUS_VALIDATED);
278  }
279 
284  public function setValidatedStatus($status = true) {
285  $this->_setStatusField($status, PLN_PLUGIN_DEPOSIT_STATUS_VALIDATED);
286  }
287 
292  public function getSentStatus() {
293  return $this->_getStatusField(PLN_PLUGIN_DEPOSIT_STATUS_SENT);
294  }
295 
300  public function setSentStatus($status = true) {
301  $this->_setStatusField($status, PLN_PLUGIN_DEPOSIT_STATUS_SENT);
302  }
303 
308  public function getLockssReceivedStatus() {
309  return $this->_getStatusField(PLN_PLUGIN_DEPOSIT_STATUS_LOCKSS_RECEIVED);
310  }
311 
316  public function setLockssReceivedStatus($status = true) {
317  $this->_setStatusField($status, PLN_PLUGIN_DEPOSIT_STATUS_LOCKSS_RECEIVED);
318  }
319 
324  public function getLockssSyncingStatus() {
325  return $this->_getStatusField(PLN_PLUGIN_DEPOSIT_STATUS_LOCKSS_SYNCING);
326  }
327 
332  public function setLockssSyncingStatus($status = true) {
333  $this->_setStatusField($status, PLN_PLUGIN_DEPOSIT_STATUS_LOCKSS_SYNCING);
334  }
335 
340  public function getLockssAgreementStatus() {
341  return $this->_getStatusField(PLN_PLUGIN_DEPOSIT_STATUS_LOCKSS_AGREEMENT);
342  }
343 
348  public function setLockssAgreementStatus($status = true) {
349  $this->_setStatusField($status, PLN_PLUGIN_DEPOSIT_STATUS_LOCKSS_AGREEMENT);
350  }
351 
356  public function getLastStatusDate() {
357  return $this->getData('dateStatus');
358  }
359 
364  public function setLastStatusDate($dateLastStatus) {
365  $this->setData('dateStatus', $dateLastStatus);
366  }
367 
372  public function getDateCreated() {
373  return $this->getData('dateCreated');
374  }
375 
380  public function setDateCreated($dateCreated) {
381  $this->setData('dateCreated', $dateCreated);
382  }
383 
388  public function getDateModified() {
389  return $this->getData('dateModified');
390  }
391 
396  public function setDateModified($dateModified) {
397  $this->setData('dateModified', $dateModified);
398  }
399 
404  public function setExportDepositError($exportDepositError) {
405  $this->setData('exportDepositError', $exportDepositError);
406  }
407 
412  public function getExportDepositError() {
413  return $this->getData('exportDepositError');
414  }
415 }
Deposit\getSentStatus
getSentStatus()
Definition: Deposit.inc.php:292
DataObject\getData
& getData($key, $locale=null)
Definition: DataObject.inc.php:100
Deposit\getLastStatusDate
getLastStatusDate()
Definition: Deposit.inc.php:356
Deposit\getPackagedStatus
getPackagedStatus()
Definition: Deposit.inc.php:212
Deposit\getLockssSyncingStatus
getLockssSyncingStatus()
Definition: Deposit.inc.php:324
DataObject
Any class with an associated DAO should extend this class.
Definition: DataObject.inc.php:18
Deposit\getDateCreated
getDateCreated()
Definition: Deposit.inc.php:372
Deposit\getObjectType
getObjectType()
Definition: Deposit.inc.php:32
Deposit\setPackagingFailedStatus
setPackagingFailedStatus($status=true)
Definition: Deposit.inc.php:252
Deposit\getReceivedStatus
getReceivedStatus()
Definition: Deposit.inc.php:260
DAORegistry\getDAO
static & getDAO($name, $dbconn=null)
Definition: DAORegistry.inc.php:57
Deposit\getUUID
getUUID()
Definition: Deposit.inc.php:61
Deposit\getObjectId
getObjectId()
Definition: Deposit.inc.php:42
Deposit\setLockssReceivedStatus
setLockssReceivedStatus($status=true)
Definition: Deposit.inc.php:316
Deposit\setLockssSyncingStatus
setLockssSyncingStatus($status=true)
Definition: Deposit.inc.php:332
Deposit\setPackagedStatus
setPackagedStatus($status=true)
Definition: Deposit.inc.php:220
Deposit\getComplete
getComplete()
Definition: Deposit.inc.php:167
Deposit\getNewStatus
getNewStatus()
Definition: Deposit.inc.php:175
Deposit\setLockssAgreementStatus
setLockssAgreementStatus($status=true)
Definition: Deposit.inc.php:348
Deposit
Container for deposit objects that are submitted to a PLN.
Definition: Deposit.inc.php:14
Deposit\getExportDepositError
getExportDepositError()
Definition: Deposit.inc.php:412
Deposit\getProcessingStatus
getProcessingStatus()
Definition: Deposit.inc.php:131
Deposit\setValidatedStatus
setValidatedStatus($status=true)
Definition: Deposit.inc.php:284
Deposit\getLockssReceivedStatus
getLockssReceivedStatus()
Definition: Deposit.inc.php:308
Deposit\setUUID
setUUID($uuid)
Definition: Deposit.inc.php:69
Deposit\_getStatusField
_getStatusField($field)
Definition: Deposit.inc.php:191
Deposit\setReceivedStatus
setReceivedStatus($status=true)
Definition: Deposit.inc.php:268
Deposit\setStatus
setStatus($status)
Definition: Deposit.inc.php:103
Deposit\getLockssAgreementStatus
getLockssAgreementStatus()
Definition: Deposit.inc.php:340
Deposit\getDepositObjects
getDepositObjects()
Definition: Deposit.inc.php:52
Deposit\setSentStatus
setSentStatus($status=true)
Definition: Deposit.inc.php:300
Deposit\getTransferredStatus
getTransferredStatus()
Definition: Deposit.inc.php:228
Deposit\setDateModified
setDateModified($dateModified)
Definition: Deposit.inc.php:396
Deposit\setLastStatusDate
setLastStatusDate($dateLastStatus)
Definition: Deposit.inc.php:364
DataObject\getId
getId()
Definition: DataObject.inc.php:206
Deposit\getStatus
getStatus()
Definition: Deposit.inc.php:94
Deposit\getLockssStatus
getLockssStatus()
Definition: Deposit.inc.php:148
Deposit\getLocalStatus
getLocalStatus()
Definition: Deposit.inc.php:111
Deposit\setTransferredStatus
setTransferredStatus($status=true)
Definition: Deposit.inc.php:236
Deposit\__construct
__construct($uuid)
Definition: Deposit.inc.php:21
Deposit\setDateCreated
setDateCreated($dateCreated)
Definition: Deposit.inc.php:380
Deposit\setJournalId
setJournalId($journalId)
Definition: Deposit.inc.php:85
Deposit\_setStatusField
_setStatusField($value, $field)
Definition: Deposit.inc.php:200
Deposit\getJournalId
getJournalId()
Definition: Deposit.inc.php:77
Deposit\setNewStatus
setNewStatus()
Definition: Deposit.inc.php:182
Deposit\getDateModified
getDateModified()
Definition: Deposit.inc.php:388
Deposit\getValidatedStatus
getValidatedStatus()
Definition: Deposit.inc.php:276
Deposit\getPackagingFailedStatus
getPackagingFailedStatus()
Definition: Deposit.inc.php:244
DataObject\setData
setData($key, $value, $locale=null)
Definition: DataObject.inc.php:132
Deposit\setExportDepositError
setExportDepositError($exportDepositError)
Definition: Deposit.inc.php:404