16 import(
'lib.pkp.classes.submission.form.PKPSubmissionSubmitStep4Form');
36 parent::execute(...$functionParams);
40 import(
'classes.mail.ArticleMailTemplate');
46 $router = $request->getRouter();
47 if ($mail->isEnabled()) {
49 $mail->setFrom($this->context->getData(
'contactEmail'), $this->context->getData(
'contactName'));
50 $authorMail->setFrom($this->context->getData(
'contactEmail'), $this->context->getData(
'contactName'));
52 $user = $request->getUser();
54 if (!isset($primaryAuthor)) {
56 $primaryAuthor = $authors[0];
58 $mail->addRecipient($user->getEmail(), $user->getFullName());
60 if ($user->getEmail() != $primaryAuthor->getEmail()) {
61 $authorMail->addRecipient($primaryAuthor->getEmail(), $primaryAuthor->getFullName());
66 foreach ($assignedAuthors as $author) {
67 $authorEmail = $author->getEmail();
70 if ($authorEmail != $primaryAuthor->getEmail() && $authorEmail != $user->getEmail()) {
71 $authorMail->addRecipient($author->getEmail(), $author->getFullName());
74 $mail->bccAssignedSubEditors(
$submission->getId(), WORKFLOW_STAGE_ID_SUBMISSION);
76 $mail->assignParams(array(
77 'authorName' => $user->getFullName(),
78 'authorUsername' => $user->getUsername(),
79 'editorialContactSignature' =>
$context->getData(
'contactName'),
80 'submissionUrl' => $router->url($request,
null,
'authorDashboard',
'submission',
$submission->getId()),
83 $authorMail->assignParams(array(
84 'submitterName' => $user->getFullName(),
85 'editorialContactSignature' =>
$context->getData(
'contactName'),
88 if (!$mail->send($request)) {
89 import(
'classes.notification.NotificationManager');
91 $notificationMgr->createTrivialNotification($request->getUser()->getId(), NOTIFICATION_TYPE_ERROR, array(
'contents' => __(
'email.compose.error')));
94 $recipients = $authorMail->getRecipients();
95 if (!empty($recipients)) {
96 if (!$authorMail->send($request)) {
97 import(
'classes.notification.NotificationManager');
99 $notificationMgr->createTrivialNotification($request->getUser()->getId(), NOTIFICATION_TYPE_ERROR, array(
'contents' => __(
'email.compose.error')));
105 import(
'classes.log.SubmissionEventLogEntry');
106 import(
'lib.pkp.classes.log.SubmissionLog');