mirror of
https://github.com/Part-DB/Part-DB-server.git
synced 2025-06-24 10:49:00 +02:00
Added option to "save and clone" a part, which is especially useful, when creatiing multiple similar parts.
This should (partly) fix issue 45.
This commit is contained in:
parent
d4818d2fa1
commit
6602015a5a
4 changed files with 26 additions and 2 deletions
|
@ -180,6 +180,12 @@ class PartController extends AbstractController
|
||||||
$em->persist($part);
|
$em->persist($part);
|
||||||
$em->flush();
|
$em->flush();
|
||||||
$this->addFlash('info', 'part.edited_flash');
|
$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
|
//Reload form, so the SIUnitType entries use the new part unit
|
||||||
$form = $this->createForm(PartBaseType::class, $part);
|
$form = $this->createForm(PartBaseType::class, $part);
|
||||||
} elseif ($form->isSubmitted() && ! $form->isValid()) {
|
} elseif ($form->isSubmitted() && ! $form->isValid()) {
|
||||||
|
@ -301,6 +307,11 @@ class PartController extends AbstractController
|
||||||
$em->flush();
|
$em->flush();
|
||||||
$this->addFlash('success', 'part.created_flash');
|
$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()]);
|
return $this->redirectToRoute('part_edit', ['id' => $new_part->getID()]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -296,6 +296,9 @@ class PartBaseType extends AbstractType
|
||||||
$builder
|
$builder
|
||||||
//Buttons
|
//Buttons
|
||||||
->add('save', SubmitType::class, ['label' => 'part.edit.save'])
|
->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']);
|
->add('reset', ResetType::class, ['label' => 'part.edit.reset']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -102,8 +102,12 @@
|
||||||
<button type="button" class="btn btn-primary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
<button type="button" class="btn btn-primary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
<span class="sr-only">Toggle Dropdown</span>
|
<span class="sr-only">Toggle Dropdown</span>
|
||||||
</button>
|
</button>
|
||||||
<div class="dropdown-menu p-2">
|
<div class="dropdown-menu">
|
||||||
{{ form_row(form.log_comment)}}
|
{{ form_widget(form.save_and_clone, {'attr': {'class': 'dropdown-item'}}) }}
|
||||||
|
<div class="dropdown-divider"></div>
|
||||||
|
<div class="p-2">
|
||||||
|
{{ form_row(form.log_comment)}}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -9213,5 +9213,11 @@ Element 3</target>
|
||||||
<target>e.g. +49 1234 567890</target>
|
<target>e.g. +49 1234 567890</target>
|
||||||
</segment>
|
</segment>
|
||||||
</unit>
|
</unit>
|
||||||
|
<unit id="tB_XJLr" name="part.edit.save_and_clone">
|
||||||
|
<segment>
|
||||||
|
<source>part.edit.save_and_clone</source>
|
||||||
|
<target>Save and clone</target>
|
||||||
|
</segment>
|
||||||
|
</unit>
|
||||||
</file>
|
</file>
|
||||||
</xliff>
|
</xliff>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue