Code Duplication    Length = 29-29 lines in 2 locations

src/Kunstmaan/NodeBundle/Helper/NodeHelper.php 2 locations

@@ 298-326 (lines=29) @@
295
     *
296
     * @return NodeTranslation
297
     */
298
    public function copyPageFromOtherLanguage(Node $node, $sourceLocale, $locale)
299
    {
300
        $user = $this->getAdminUser();
301
302
        $sourceNodeTranslation = $node->getNodeTranslation($sourceLocale, true);
303
        $sourceNodeVersion = $sourceNodeTranslation->getPublicNodeVersion();
304
        $sourcePage = $sourceNodeVersion->getRef($this->em);
305
        $targetPage = $this->cloneHelper->deepCloneAndSave($sourcePage);
306
307
        /* @var NodeTranslation $nodeTranslation */
308
        $nodeTranslation = $this->em->getRepository(NodeTranslation::class)->createNodeTranslationFor($targetPage, $locale, $node, $user);
309
        $nodeVersion = $nodeTranslation->getPublicNodeVersion();
310
311
        $this->dispatch(
312
            new CopyPageTranslationNodeEvent(
313
                $node,
314
                $nodeTranslation,
315
                $nodeVersion,
316
                $targetPage,
317
                $sourceNodeTranslation,
318
                $sourceNodeVersion,
319
                $sourcePage,
320
                $sourceLocale
321
            ),
322
            Events::COPY_PAGE_TRANSLATION
323
        );
324
325
        return $nodeTranslation;
326
    }
327
328
    /**
329
     * @param Node   $node
@@ 372-400 (lines=29) @@
369
     *
370
     * @return NodeTranslation
371
     */
372
    public function createPageDraftFromOtherLanguage(Node $node, $sourceNodeTranslationId, $locale)
373
    {
374
        $user = $this->getAdminUser();
375
376
        $sourceNodeTranslation = $this->em->getRepository(NodeTranslation::class)->find($sourceNodeTranslationId);
377
        $sourceNodeVersion = $sourceNodeTranslation->getPublicNodeVersion();
378
        $sourcePage = $sourceNodeVersion->getRef($this->em);
379
        $targetPage = $this->cloneHelper->deepCloneAndSave($sourcePage);
380
381
        /* @var NodeTranslation $nodeTranslation */
382
        $nodeTranslation = $this->em->getRepository(NodeTranslation::class)->addDraftNodeVersionFor($targetPage, $locale, $node, $user);
383
        $nodeVersion = $nodeTranslation->getPublicNodeVersion();
384
385
        $this->dispatch(
386
            new RecopyPageTranslationNodeEvent(
387
                $node,
388
                $nodeTranslation,
389
                $nodeVersion,
390
                $targetPage,
391
                $sourceNodeTranslation,
392
                $sourceNodeVersion,
393
                $sourcePage,
394
                $sourceNodeTranslation->getLang()
395
            ),
396
            Events::RECOPY_PAGE_TRANSLATION
397
        );
398
399
        return $nodeTranslation;
400
    }
401
402
    /**
403
     * @param Node   $node