Open Journal Systems  3.3.0
StaticPagesDAO.inc.php
1 <?php
2 
15 import('lib.pkp.classes.db.DAO');
16 import('plugins.generic.staticPages.classes.StaticPage');
17 
18 class StaticPagesDAO extends DAO {
19 
25  function getById($staticPageId, $contextId = null) {
26  $params = array((int) $staticPageId);
27  if ($contextId) $params[] = $contextId;
28 
29  $result = $this->retrieve(
30  'SELECT * FROM static_pages WHERE static_page_id = ?'
31  . ($contextId?' AND context_id = ?':''),
32  $params
33  );
34 
35  $returner = null;
36  if ($result->RecordCount() != 0) {
37  $returner = $this->_fromRow($result->GetRowAssoc(false));
38  }
39  $result->Close();
40  return $returner;
41  }
42 
49  function getByContextId($contextId, $rangeInfo = null) {
50  $result = $this->retrieveRange(
51  'SELECT * FROM static_pages WHERE context_id = ?',
52  (int) $contextId,
53  $rangeInfo
54  );
55 
56  return new DAOResultFactory($result, $this, '_fromRow');
57  }
58 
65  function getByPath($contextId, $path) {
66  $result = $this->retrieve(
67  'SELECT * FROM static_pages WHERE context_id = ? AND path = ?',
68  array((int) $contextId, $path)
69  );
70 
71  $returner = null;
72  if ($result->RecordCount() != 0) {
73  $returner = $this->_fromRow($result->GetRowAssoc(false));
74  }
75  $result->Close();
76  return $returner;
77  }
78 
84  function insertObject($staticPage) {
85  $this->update(
86  'INSERT INTO static_pages (context_id, path) VALUES (?, ?)',
87  array(
88  (int) $staticPage->getContextId(),
89  $staticPage->getPath()
90  )
91  );
92 
93  $staticPage->setId($this->getInsertId());
94  $this->updateLocaleFields($staticPage);
95 
96  return $staticPage->getId();
97  }
98 
103  function updateObject($staticPage) {
104  $this->update(
105  'UPDATE static_pages
106  SET context_id = ?,
107  path = ?
108  WHERE static_page_id = ?',
109  array(
110  (int) $staticPage->getContextId(),
111  $staticPage->getPath(),
112  (int) $staticPage->getId()
113  )
114  );
115  $this->updateLocaleFields($staticPage);
116  }
117 
122  function deleteById($staticPageId) {
123  $this->update(
124  'DELETE FROM static_pages WHERE static_page_id = ?',
125  (int) $staticPageId
126  );
127  $this->update(
128  'DELETE FROM static_page_settings WHERE static_page_id = ?',
129  (int) $staticPageId
130  );
131  }
132 
137  function deleteObject($staticPage) {
138  $this->deleteById($staticPage->getId());
139  }
140 
145  function newDataObject() {
146  return new StaticPage();
147  }
148 
153  function _fromRow($row) {
154  $staticPage = $this->newDataObject();
155  $staticPage->setId($row['static_page_id']);
156  $staticPage->setPath($row['path']);
157  $staticPage->setContextId($row['context_id']);
158 
159  $this->getDataObjectSettings('static_page_settings', 'static_page_id', $row['static_page_id'], $staticPage);
160  return $staticPage;
161  }
162 
167  function getInsertId() {
168  return $this->_getInsertId('static_pages', 'static_page_id');
169  }
170 
175  function getLocaleFieldNames() {
176  return array('title', 'content');
177  }
178 
183  function updateLocaleFields(&$staticPage) {
184  $this->updateDataObjectSettings('static_page_settings', $staticPage, array(
185  'static_page_id' => $staticPage->getId()
186  ));
187  }
188 }
189 
DAOResultFactory
Wrapper around ADORecordSet providing "factory" features for generating objects from DAOs.
Definition: DAOResultFactory.inc.php:21
StaticPagesDAO\_fromRow
_fromRow($row)
Definition: StaticPagesDAO.inc.php:153
StaticPagesDAO\getById
getById($staticPageId, $contextId=null)
Definition: StaticPagesDAO.inc.php:25
StaticPagesDAO
Definition: StaticPagesDAO.inc.php:18
DAO\retrieveRange
& retrieveRange($sql, $params=false, $dbResultRange=null, $callHooks=true)
Definition: DAO.inc.php:176
DAO\retrieve
& retrieve($sql, $params=false, $callHooks=true)
Definition: DAO.inc.php:85
StaticPagesDAO\getInsertId
getInsertId()
Definition: StaticPagesDAO.inc.php:167
StaticPagesDAO\deleteObject
deleteObject($staticPage)
Definition: StaticPagesDAO.inc.php:137
StaticPagesDAO\getByPath
getByPath($contextId, $path)
Definition: StaticPagesDAO.inc.php:65
StaticPagesDAO\updateLocaleFields
updateLocaleFields(&$staticPage)
Definition: StaticPagesDAO.inc.php:183
DAO\update
update($sql, $params=false, $callHooks=true, $dieOnError=true)
Definition: DAO.inc.php:214
StaticPagesDAO\getByContextId
getByContextId($contextId, $rangeInfo=null)
Definition: StaticPagesDAO.inc.php:49
DAO\_getInsertId
_getInsertId($table='', $id='')
Definition: DAO.inc.php:255
StaticPage
Definition: StaticPage.inc.php:15
DAO\getDataObjectSettings
getDataObjectSettings($tableName, $idFieldName, $idFieldValue, $dataObject)
Definition: DAO.inc.php:582
StaticPagesDAO\insertObject
insertObject($staticPage)
Definition: StaticPagesDAO.inc.php:84
StaticPagesDAO\getLocaleFieldNames
getLocaleFieldNames()
Definition: StaticPagesDAO.inc.php:175
StaticPagesDAO\updateObject
updateObject($staticPage)
Definition: StaticPagesDAO.inc.php:103
DAO\updateDataObjectSettings
updateDataObjectSettings($tableName, $dataObject, $idArray)
Definition: DAO.inc.php:488
DAO
Operations for retrieving and modifying objects from a database.
Definition: DAO.inc.php:31
StaticPagesDAO\newDataObject
newDataObject()
Definition: StaticPagesDAO.inc.php:145
StaticPagesDAO\deleteById
deleteById($staticPageId)
Definition: StaticPagesDAO.inc.php:122