| Server IP : 195.130.67.5 / Your IP : 216.73.217.154 Web Server : Microsoft-IIS/10.0 System : Windows NT WEBSERVER1 10.0 build 17763 (Windows Server 2016) i586 User : IUSR ( 0) PHP Version : 7.4.19 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /inetpub/wwwroot/Topogeo/ojs/classes/submission/form/comment/ |
Upload File : |
<?php
/**
* @file classes/submission/formform/comment/EditorDecisionCommentForm.inc.php
*
* Copyright (c) 2003-2012 John Willinsky
* Distributed under the GNU GPL v2. For full terms see the file docs/COPYING.
*
* @class EditorDecisionCommentForm
* @ingroup submission_form
*
* @brief EditorDecisionComment form.
*/
// $Id$
import('classes.submission.form.comment.CommentForm');
class EditorDecisionCommentForm extends CommentForm {
/**
* Constructor.
* @param $article object
*/
function EditorDecisionCommentForm($article, $roleId) {
parent::CommentForm($article, COMMENT_TYPE_EDITOR_DECISION, $roleId, $article->getId());
}
/**
* Display the form.
*/
function display() {
$templateMgr =& TemplateManager::getManager();
$templateMgr->assign('pageTitle', 'submission.comments.editorAuthorCorrespondence');
$templateMgr->assign('articleId', $this->article->getArticleId());
$templateMgr->assign('commentAction', 'postEditorDecisionComment');
$templateMgr->assign('hiddenFormParams',
array(
'articleId' => $this->article->getArticleId()
)
);
$isEditor = $this->roleId == ROLE_ID_EDITOR || $this->roleId == ROLE_ID_SECTION_EDITOR ? true : false;
$templateMgr->assign('isEditor', $isEditor);
parent::display();
}
/**
* Assign form data to user-submitted data.
*/
function readInputData() {
$this->readUserVars(
array(
'commentTitle',
'comments'
)
);
}
/**
* Add the comment.
*/
function execute() {
parent::execute();
}
/**
* Email the comment.
*/
function email() {
$roleDao =& DAORegistry::getDAO('RoleDAO');
$userDao =& DAORegistry::getDAO('UserDAO');
$journal =& Request::getJournal();
// Create list of recipients:
// Editor Decision comments are to be sent to the editor or author,
// the opposite of whomever wrote the comment.
$recipients = array();
if ($this->roleId == ROLE_ID_EDITOR || $this->roleId == ROLE_ID_SECTION_EDITOR) {
// Then add author
$user =& $userDao->getUser($this->article->getUserId());
if ($user) $recipients = array_merge($recipients, array($user->getEmail() => $user->getFullName()));
} else {
// Then add editor
$editAssignmentDao =& DAORegistry::getDAO('EditAssignmentDAO');
$editAssignments =& $editAssignmentDao->getEditAssignmentsByArticleId($this->article->getArticleId());
$editorAddresses = array();
while (!$editAssignments->eof()) {
$editAssignment =& $editAssignments->next();
$editorAddresses[$editAssignment->getEditorEmail()] = $editAssignment->getEditorFullName();
}
// If no editors are currently assigned to this article,
// send the email to all editors for the journal
if (empty($editorAddresses)) {
$editors =& $roleDao->getUsersByRoleId(ROLE_ID_EDITOR, $journal->getId());
while (!$editors->eof()) {
$editor =& $editors->next();
$editorAddresses[$editor->getEmail()] = $editor->getFullName();
}
}
$recipients = array_merge($recipients, $editorAddresses);
}
parent::email($recipients);
}
}
?>