Skip to content

Commit ae46d13

Browse files
assigning the values ​​givenName and familyName for translation
issue: documentacao-e-tarefas/desenvolvimento_e_infra#1080 Signed-off-by: carlos@lepidus.com.br Signed-off-by: jhon@lepiidus.com.br
1 parent 95ca68d commit ae46d13

1 file changed

Lines changed: 14 additions & 4 deletions

File tree

classes/TranslationCreator.inc.php

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,10 @@ public function createTranslation($submissionId, $translationLocale)
1616
$newSubmissionId = $submissionDao->insertObject($newSubmission);
1717
$newSubmission->setData('id', $newSubmissionId);
1818

19+
$originalLocale = $submission->getData('locale');
20+
1921
foreach ($submission->getData('publications') as $publication) {
20-
$newPublicationId = $this->createTranslationPublication($publication, $newSubmissionId, $translationLocale);
22+
$newPublicationId = $this->createTranslationPublication($publication, $newSubmissionId, $translationLocale, $originalLocale);
2123

2224
if ($publication->getId() == $submission->getData('currentPublicationId')) {
2325
$newSubmission->setData('currentPublicationId', $newPublicationId);
@@ -28,7 +30,7 @@ public function createTranslation($submissionId, $translationLocale)
2830
return $newSubmissionId;
2931
}
3032

31-
private function createTranslationPublication($publication, $newSubmissionId, $translationLocale)
33+
private function createTranslationPublication($publication, $newSubmissionId, $translationLocale, $originalLocale)
3234
{
3335
$newPublication = clone $publication;
3436
$newPublication->setData('id', null);
@@ -39,18 +41,26 @@ private function createTranslationPublication($publication, $newSubmissionId, $t
3941
$newPublicationId = $publicationDao->insertObject($newPublication);
4042

4143
foreach ($publication->getData('authors') as $author) {
42-
$this->createTranslationAuthor($author, $newPublicationId, $translationLocale);
44+
$this->createTranslationAuthor($author, $newPublicationId, $translationLocale, $originalLocale);
4345
}
4446

4547
return $newPublicationId;
4648
}
4749

48-
private function createTranslationAuthor($author, $newPublicationId, $translationLocale)
50+
private function createTranslationAuthor($author, $newPublicationId, $translationLocale, $originalLocale)
4951
{
5052
$newAuthor = clone $author;
5153
$newAuthor->setData('id', null);
5254
$newAuthor->setData('publicationId', $newPublicationId);
5355
$newAuthor->setData('submissionLocale', $translationLocale);
56+
if (empty($author->getData('givenName', $translationLocale))) {
57+
$authorName = $author->getData('givenName', $originalLocale);
58+
$author->setData('givenName', $authorName, $translationLocale);
59+
}
60+
if (empty($author->getData('familyName', $translationLocale))) {
61+
$authorName = $author->getData('familyName', $originalLocale);
62+
$author->setData('familyName', $authorName, $translationLocale);
63+
}
5464

5565
$authorDao = DAORegistry::getDAO('AuthorDAO');
5666
return $authorDao->insertObject($newAuthor);

0 commit comments

Comments
 (0)