Open Journal Systems  3.3.0
EventLogEntry.inc.php
1 <?php
2 
17 // Information Center events
18 define('SUBMISSION_LOG_NOTE_POSTED', 0x01000000);
19 define('SUBMISSION_LOG_MESSAGE_SENT', 0x01000001);
20 
21 class EventLogEntry extends DataObject {
22 
23  //
24  // Get/set methods
25  //
26 
31  function getUserId() {
32  return $this->getData('userId');
33  }
34 
39  function setUserId($userId) {
40  $this->setData('userId', $userId);
41  }
42 
47  function getDateLogged() {
48  return $this->getData('dateLogged');
49  }
50 
55  function setDateLogged($dateLogged) {
56  $this->setData('dateLogged', $dateLogged);
57  }
58 
63  function getEventType() {
64  return $this->getData('eventType');
65  }
66 
71  function setEventType($eventType) {
72  $this->setData('eventType', $eventType);
73  }
74 
79  function getAssocType() {
80  return $this->getData('assocType');
81  }
82 
87  function setAssocType($assocType) {
88  $this->setData('assocType', $assocType);
89  }
90 
95  function getAssocId() {
96  return $this->getData('assocId');
97  }
98 
103  function setAssocId($assocId) {
104  $this->setData('assocId', $assocId);
105  }
106 
111  function getMessage() {
112  return $this->getData('message');
113  }
114 
119  function setMessage($message) {
120  $this->setData('message', $message);
121  }
122 
127  function getIsTranslated() {
128  return $this->getData('isTranslated');
129  }
130 
135  function setIsTranslated($isTranslated) {
136  $this->setData('isTranslated', $isTranslated);
137  }
138 
145  function getTranslatedMessage($locale = null, $hideReviewerName = false) {
146  $message = $this->getMessage();
147  // If it's already translated, just return the message.
148  if ($this->getIsTranslated()) return $message;
149 
150  // Otherwise, translate it and include parameters.
151  if ($locale === null) $locale = AppLocale::getLocale();
152 
153  $params = array_merge($this->_data, $this->getParams());
154  unset($params['params']); // Clean up for translate call
155 
156  if ($hideReviewerName) {
157  $reviewAssignmentDao = DAORegistry::getDAO('ReviewAssignmentDAO'); /* @var $reviewAssignmentDao ReviewAssignmentDAO */
158  // Reviewer activity log entries (assigning, accepting, declining)
159  if (isset($params['reviewerName'])) {
160  $blindAuthor = true;
161  if (isset($params['reviewAssignmentId'])) {
162  $reviewAssignment = $reviewAssignmentDao->getById($params['reviewAssignmentId']);
163  if ($reviewAssignment && !in_array($reviewAssignment->getReviewMethod(), array(SUBMISSION_REVIEW_METHOD_BLIND, SUBMISSION_REVIEW_METHOD_DOUBLEBLIND))) {
164  $blindAuthor = false;
165  }
166  }
167  if ($blindAuthor) {
168  $params['reviewerName'] = __('editor.review.anonymousReviewer');
169  }
170  }
171  // Files submitted by reviewers
172  if (isset($params['fileStage']) && $params['fileStage'] === SUBMISSION_FILE_REVIEW_ATTACHMENT) {
173  assert(isset($params['fileId']) && isset($params['submissionId']));
174  $blindAuthor = true;
175  $submissionFileDao = DAORegistry::getDAO('SubmissionFileDAO'); /* @var $submissionFileDao SubmissionFileDAO */
176  $submissionFile = $submissionFileDao->getLatestRevision($params['fileId']);
177  if ($submissionFile && $submissionFile->getAssocType() === ASSOC_TYPE_REVIEW_ASSIGNMENT) {
178  $reviewAssignment = $reviewAssignmentDao->getById($submissionFile->getAssocId());
179  if ($reviewAssignment && !in_array($reviewAssignment->getReviewMethod(), array(SUBMISSION_REVIEW_METHOD_BLIND, SUBMISSION_REVIEW_METHOD_DOUBLEBLIND))) {
180  $blindAuthor = false;
181  }
182  }
183  if (isset($params['username']) && $blindAuthor) {
184  if (isset($params['username'])) {
185  $params['username'] = __('editor.review.anonymousReviewer');
186  }
187  if (isset($params['originalFileName'])) {
188  $params['originalFileName'] = '';
189  }
190  }
191  }
192  }
193 
194 
195  return __($message, $params, $locale);
196  }
197 
202  function getParams() {
203  return $this->getData('params');
204  }
205 
210  function setParams($params) {
211  $this->setData('params', $params);
212  }
213 
218  function getUserFullName() {
219  $userFullName =& $this->getData('userFullName');
220  if(!isset($userFullName)) {
221  $userDao = DAORegistry::getDAO('UserDAO'); /* @var $userDao UserDAO */
222  $userFullName = $userDao->getUserFullName($this->getUserId(), true);
223  }
224 
225  return ($userFullName ? $userFullName : '');
226  }
227 
232  function getUserEmail() {
233  $userEmail =& $this->getData('userEmail');
234 
235  if(!isset($userEmail)) {
236  $userDao = DAORegistry::getDAO('UserDAO'); /* @var $userDao UserDAO */
237  $userEmail = $userDao->getUserEmail($this->getUserId(), true);
238  }
239 
240  return ($userEmail ? $userEmail : '');
241  }
242 }
243 
244 
EventLogEntry\setMessage
setMessage($message)
Definition: EventLogEntry.inc.php:119
DataObject\getData
& getData($key, $locale=null)
Definition: DataObject.inc.php:100
EventLogEntry\setDateLogged
setDateLogged($dateLogged)
Definition: EventLogEntry.inc.php:55
EventLogEntry\getUserId
getUserId()
Definition: EventLogEntry.inc.php:31
EventLogEntry\getIsTranslated
getIsTranslated()
Definition: EventLogEntry.inc.php:127
DataObject
Any class with an associated DAO should extend this class.
Definition: DataObject.inc.php:18
EventLogEntry\getUserFullName
getUserFullName()
Definition: EventLogEntry.inc.php:218
DAORegistry\getDAO
static & getDAO($name, $dbconn=null)
Definition: DAORegistry.inc.php:57
EventLogEntry\setIsTranslated
setIsTranslated($isTranslated)
Definition: EventLogEntry.inc.php:135
EventLogEntry\getMessage
getMessage()
Definition: EventLogEntry.inc.php:111
EventLogEntry\getAssocId
getAssocId()
Definition: EventLogEntry.inc.php:95
EventLogEntry\getEventType
getEventType()
Definition: EventLogEntry.inc.php:63
EventLogEntry\setUserId
setUserId($userId)
Definition: EventLogEntry.inc.php:39
EventLogEntry\getParams
getParams()
Definition: EventLogEntry.inc.php:202
EventLogEntry\setAssocId
setAssocId($assocId)
Definition: EventLogEntry.inc.php:103
EventLogEntry
Describes an entry in the event log.
Definition: EventLogEntry.inc.php:21
EventLogEntry\getTranslatedMessage
getTranslatedMessage($locale=null, $hideReviewerName=false)
Definition: EventLogEntry.inc.php:145
EventLogEntry\getAssocType
getAssocType()
Definition: EventLogEntry.inc.php:79
EventLogEntry\getDateLogged
getDateLogged()
Definition: EventLogEntry.inc.php:47
EventLogEntry\getUserEmail
getUserEmail()
Definition: EventLogEntry.inc.php:232
EventLogEntry\setAssocType
setAssocType($assocType)
Definition: EventLogEntry.inc.php:87
EventLogEntry\setEventType
setEventType($eventType)
Definition: EventLogEntry.inc.php:71
AppLocale\getLocale
static getLocale()
Definition: env1/MockAppLocale.inc.php:40
DataObject\setData
setData($key, $value, $locale=null)
Definition: DataObject.inc.php:132
EventLogEntry\setParams
setParams($params)
Definition: EventLogEntry.inc.php:210