mirror of
https://github.com/Part-DB/Part-DB-server.git
synced 2025-07-28 06:44:39 +02:00
61 lines
1.8 KiB
Twig
61 lines
1.8 KiB
Twig
|
{% set delete_btn %}
|
||
|
<button type="button" class="btn btn-danger lot_btn_delete" onclick="delete_attachment_entry(this);">
|
||
|
<i class="fas fa-trash-alt fa-fw"></i>
|
||
|
{% trans %}attachment.delete{% endtrans %}
|
||
|
</button>
|
||
|
{% endset %}
|
||
|
|
||
|
|
||
|
<table class="table table-striped" id="attachments_table" data-prototype="{{ form_widget(form.attachments.vars.prototype)|e('html_attr') }}">
|
||
|
<tbody>
|
||
|
{% for attachment in form.attachments %}
|
||
|
<tr>
|
||
|
<td>
|
||
|
{{ form_widget(attachment) }}
|
||
|
</td>
|
||
|
<td>
|
||
|
{{ delete_btn }}
|
||
|
</td>
|
||
|
</tr>
|
||
|
{% endfor %}
|
||
|
</tbody>
|
||
|
</table>
|
||
|
|
||
|
<button type="button" class="btn btn-success" onclick="create_attachment_entry(this)">
|
||
|
<i class="fas fa-plus-square fa-fw"></i>
|
||
|
{% trans %}attachment.create{% endtrans %}
|
||
|
</button>
|
||
|
|
||
|
<script>
|
||
|
function delete_attachment_entry(btn) {
|
||
|
window.bootbox.confirm('{% trans %}part_lot.edit.delete.confirm{% endtrans %}', function (result) {
|
||
|
if(result) {
|
||
|
$(btn).parents("tr").remove();
|
||
|
}
|
||
|
})
|
||
|
}
|
||
|
|
||
|
function create_attachment_entry(btn) {
|
||
|
//Determine the table, so we can determine, how many entries there are already.
|
||
|
$holder = $("#attachments_table");
|
||
|
|
||
|
var index = $holder.find(":input").length;
|
||
|
var newForm = $holder.data("prototype");
|
||
|
|
||
|
//Increase the index
|
||
|
newForm = newForm.replace(/__name__/g, index);
|
||
|
newForm = '<td>' + newForm + '</td>';
|
||
|
$newFormRow = $('<tr></tr>').html(newForm);
|
||
|
|
||
|
//Add delete button
|
||
|
$btn = '<td>' + '{{ delete_btn|e('js') }}' + '</td>';
|
||
|
$newFormRow.append($btn);
|
||
|
|
||
|
$holder.append($newFormRow);
|
||
|
|
||
|
//Reinit the selectpickers
|
||
|
$(".selectpicker").selectpicker();
|
||
|
$(".file").fileinput();
|
||
|
|
||
|
}
|
||
|
</script>
|