entityManager = $entityManager; $this->wp = $wp; } public function duplicate(FormEntity $formEntity): FormEntity { $duplicate = clone $formEntity; // translators: %s is name of the form which has been duplicated. $duplicate->setName(sprintf(__('Copy of %s', 'mailpoet'), $formEntity->getName())); // reset timestamps $now = Carbon::createFromTimestamp($this->wp->currentTime('timestamp')); $duplicate->setCreatedAt($now); $duplicate->setUpdatedAt($now); $duplicate->setDeletedAt(null); $this->entityManager->persist($duplicate); $this->entityManager->flush(); return $duplicate; } }