14 import(
'lib.pkp.classes.db.DAO');
25 $this->_plugin = $parentPlugin;
26 parent::__construct();
34 $this->_plugin->import(
'classes.DepositPoint');
44 public function getById($depositPointId, $contextId =
null) {
45 $params = array((
int) $depositPointId);
46 if ($contextId) $params[] = (int) $contextId;
49 'SELECT * FROM deposit_points WHERE deposit_point_id = ? ' . ($contextId?
' AND context_id = ?':
''),
54 if ($result->RecordCount() != 0) {
55 $returner = $this->
_fromRow($result->GetRowAssoc(
false));
68 $depositPoint->setId($row[
'deposit_point_id']);
69 $depositPoint->setContextId($row[
'context_id']);
70 $depositPoint->setSequence($row[
'seq']);
71 $depositPoint->setSwordUrl($row[
'url']);
72 $depositPoint->setType($row[
'type']);
73 $depositPoint->setSwordUsername($row[
'sword_username']);
74 $depositPoint->setSwordPassword($row[
'sword_password']);
75 $depositPoint->setSwordApikey($row[
'sword_apikey']);
78 'deposit_point_settings',
80 $row[
'deposit_point_id'],
94 'INSERT INTO deposit_points
103 (?, ?, ?, ?, ?, ?, ?)',
105 $depositPoint->getContextId(),
106 $depositPoint->getSwordUrl(),
107 $depositPoint->getSequence(),
108 $depositPoint->getType(),
109 $depositPoint->getSwordUsername(),
110 $depositPoint->getSwordPassword(),
111 $depositPoint->getSwordApikey(),
118 return $depositPoint->getId();
126 return array(
'name');
135 'deposit_point_id' => $depositPoint->getId()
146 'UPDATE deposit_points
155 WHERE deposit_point_id = ?',
157 $depositPoint->getContextId(),
158 $depositPoint->getSwordUrl(),
159 $depositPoint->getSequence(),
160 $depositPoint->getType(),
161 $depositPoint->getSwordUsername(),
162 $depositPoint->getSwordPassword(),
163 $depositPoint->getSwordApikey(),
164 $depositPoint->getId()
177 return $this->
deleteById($depositPoint->getId());
187 'SELECT COUNT(*) FROM deposit_points WHERE deposit_point_id = ? AND context_id = ?',
188 array((
int) $depositPointId, (
int) $contextId)
190 $returner = isset($result->fields[0]) && $result->fields[0] == 1 ? true :
false;
201 public function deleteById($depositPointId, $contextId =
null) {
202 if (isset($contextId) && !$this->
depositPointExists($depositPointId, $contextId))
return false;
204 'DELETE FROM deposit_points WHERE deposit_point_id = ?', $depositPointId
207 'DELETE FROM deposit_point_settings WHERE deposit_point_id = ?', $depositPointId
219 while ($depositPoint = $depositPoints->next()) {
231 public function getByContextId($contextId, $rangeInfo =
null, $type =
null) {
232 $params = array((
int) $contextId);
233 if ($type) $params[] = (int) $type;
235 'SELECT * FROM deposit_points WHERE context_id = ? '.($type?
' AND type = ?':
'').
' ORDER BY seq ASC',
249 'SELECT deposit_point_id FROM deposit_points WHERE context_id = ? ORDER BY seq',
252 for ($i=1; !$result->EOF; $i++) {
253 list($depositPointId) = $result->fields;
255 'UPDATE deposit_points SET seq = ? WHERE deposit_point_id = ?',
272 return $this->
_getInsertId(
'deposit_points',
'deposit_point_id');