Added button to delete a log entry via the log detail page.

This commit is contained in:
Jan Böhmer 2023-05-15 23:02:30 +02:00
parent 5a3fc0fb43
commit 9be3eba694
3 changed files with 50 additions and 1 deletions

View file

@ -123,6 +123,25 @@ class LogController extends AbstractController
]); ]);
} }
/**
* @Route("/{id}/delete", name="log_delete", methods={"DELETE"})
*/
public function deleteLogEntry(Request $request, AbstractLogEntry $logEntry, EntityManagerInterface $entityManager): RedirectResponse
{
$this->denyAccessUnlessGranted('delete', $logEntry);
if ($this->isCsrfTokenValid('delete'.$logEntry->getId(), $request->request->get('_token'))) {
//Remove part
$entityManager->remove($logEntry);
//Flush changes
$entityManager->flush();
$this->addFlash('success', 'log.delete.success');
}
return $this->redirectToRoute('homepage');
}
/** /**
* @Route("/undo", name="log_undo", methods={"POST"}) * @Route("/undo", name="log_undo", methods={"POST"})
*/ */

View file

@ -74,8 +74,20 @@
{{ log_helper.undo_buttons(log_entry, target_element) }} {{ log_helper.undo_buttons(log_entry, target_element) }}
{% endif %} {% endif %}
</div> </div>
<div class="col-6 text-end"> <div class="col-6 text-end">
<button type="button" class="btn btn-sm btn-outline-danger">Delete Log entry</button> <form method="post" class="" action="{{ path('log_delete', {'id': log_entry.iD}) }}" {{ stimulus_controller('elements/delete_btn') }} {{ stimulus_action('elements/delete_btn', "submit", "submit") }}
data-delete-title="{% trans %}log.delete.message.title{% endtrans %}"
data-delete-message="{% trans %}log.delete.message{% endtrans %}">
<input type="hidden" name="_method" value="DELETE">
<input type="hidden" name="_token" value="{{ csrf_token('delete' ~ log_entry.id) }}">
<button type="submit" class="btn btn-sm btn-outline-danger" {% if not is_granted('delete', log_entry) %}disabled{% endif %}>
<i class="fa-solid fa-trash"></i>
{% trans %}log.details.delete_entry{% endtrans %}
</button>
</form>
</div> </div>
</div> </div>

View file

@ -11403,5 +11403,23 @@ Element 3</target>
<target>Parent</target> <target>Parent</target>
</segment> </segment>
</unit> </unit>
<unit id="GUthgcU" name="log.details.delete_entry">
<segment>
<source>log.details.delete_entry</source>
<target>Delete log entry</target>
</segment>
</unit>
<unit id="Wv0WAmO" name="log.delete.message.title">
<segment>
<source>log.delete.message.title</source>
<target>Do you really want to delete the log entry?</target>
</segment>
</unit>
<unit id="5tbpaLR" name="log.delete.message">
<segment>
<source>log.delete.message</source>
<target>If this is an element history entry, this breaks the element history! This can lead to unexpected results when using the time travel function.</target>
</segment>
</unit>
</file> </file>
</xliff> </xliff>