diff --git a/src/Controller/PartController.php b/src/Controller/PartController.php index 506df24a..81b89221 100644 --- a/src/Controller/PartController.php +++ b/src/Controller/PartController.php @@ -180,6 +180,12 @@ class PartController extends AbstractController $em->persist($part); $em->flush(); $this->addFlash('info', 'part.edited_flash'); + + //Redirect to clone page if user wished that... + if ("save_and_clone" === $form->getClickedButton()->getName()) { + return $this->redirectToRoute('part_clone', ['id' => $part->getID()]); + } + //Reload form, so the SIUnitType entries use the new part unit $form = $this->createForm(PartBaseType::class, $part); } elseif ($form->isSubmitted() && ! $form->isValid()) { @@ -301,6 +307,11 @@ class PartController extends AbstractController $em->flush(); $this->addFlash('success', 'part.created_flash'); + //Redirect to clone page if user wished that... + if ("save_and_clone" === $form->getClickedButton()->getName()) { + return $this->redirectToRoute('part_clone', ['id' => $new_part->getID()]); + } + return $this->redirectToRoute('part_edit', ['id' => $new_part->getID()]); } diff --git a/src/Form/Part/PartBaseType.php b/src/Form/Part/PartBaseType.php index 6be12032..9a85882e 100644 --- a/src/Form/Part/PartBaseType.php +++ b/src/Form/Part/PartBaseType.php @@ -296,6 +296,9 @@ class PartBaseType extends AbstractType $builder //Buttons ->add('save', SubmitType::class, ['label' => 'part.edit.save']) + ->add('save_and_clone', SubmitType::class, [ + 'label' => 'part.edit.save_and_clone' + ]) ->add('reset', ResetType::class, ['label' => 'part.edit.reset']); } diff --git a/templates/Parts/edit/edit_part_info.html.twig b/templates/Parts/edit/edit_part_info.html.twig index 3a437a32..1cd0bba6 100644 --- a/templates/Parts/edit/edit_part_info.html.twig +++ b/templates/Parts/edit/edit_part_info.html.twig @@ -102,8 +102,12 @@ -
diff --git a/translations/messages.en.xlf b/translations/messages.en.xlf index a2fdcce0..dba4a47f 100644 --- a/translations/messages.en.xlf +++ b/translations/messages.en.xlf @@ -9213,5 +9213,11 @@ Element 3