feat: Excel-Import glätten und Dokumentlistenaktionen korrigieren

This commit is contained in:
2026-07-22 14:34:14 +02:00
parent 6df5c101c5
commit eb503df94b
11 changed files with 129 additions and 36 deletions
@@ -1,5 +1,28 @@
{% extends 'generic/object.html' %}
{% load helpers %}
{% block head %}
{{ block.super }}
<style>
.documentation-content { overflow-x: auto; }
.documentation-content table {
width: auto !important;
max-width: 100%;
table-layout: auto;
font-size: .875rem;
line-height: 1.25;
}
.documentation-content th,
.documentation-content td {
min-width: 3rem;
max-width: 22rem;
padding: .25rem .4rem !important;
overflow-wrap: anywhere;
word-break: normal;
vertical-align: top;
}
.documentation-content p { max-width: 90rem; }
</style>
{% endblock head %}
{% block extra_controls %}
<a href="{% url 'plugins:netbox_documentation:document_print' pk=object.pk %}" target="_blank" class="btn btn-outline-secondary">
<i class="mdi mdi-printer"></i> Drucken / PDF
@@ -9,7 +32,7 @@
<div class="row">
<div class="col col-md-9">
{% if object.summary %}<p class="lead">{{ object.summary }}</p>{% endif %}
<div class="card"><div class="card-body rendered-markdown">{{ object.rendered_body|safe }}</div></div>
<div class="card"><div class="card-body rendered-markdown documentation-content">{{ object.rendered_body|safe }}</div></div>
</div>
<div class="col col-md-3">
{% if object.category %}<div class="card mb-3"><h5 class="card-header">Ordner</h5><a class="list-group-item list-group-item-action" href="{{ object.category.get_absolute_url }}"><i class="mdi mdi-folder"></i> {{ object.category }}</a></div>{% endif %}
@@ -6,9 +6,8 @@
<h5 class="card-header">Word, Excel oder PDF importieren</h5>
<div class="card-body"><form method="post" enctype="multipart/form-data">{% csrf_token %}{% render_form form %}
<div class="text-muted mb-3">
DOCX übernimmt Überschriften, Listen und Tabellen. Beim normalen XLSX-Import werden alle Blätter in einer Dokumentation zusammengeführt.
Mit <strong>„Excel mit mehreren Arbeitsblättern“</strong> entsteht dagegen je nicht leerem Blatt eine eigene Dokumentation im verpflichtend gewählten Zielordner; eingebettete Standardbilder werden soweit möglich übernommen.
PDF benötigt eine echte Textebene; Scan-OCR ist nicht enthalten.
Importhinweise
<span class="mdi mdi-help-circle-outline" data-bs-toggle="tooltip" title="DOCX übernimmt Überschriften, Listen und Tabellen. Beim normalen XLSX-Import werden alle Blätter zusammengeführt. Der Mehrblattimport erzeugt je Blatt eine Dokumentation im Zielordner. PDF benötigt eine echte Textebene; Scan-OCR ist nicht enthalten." aria-label="Importhinweise"></span>
</div>
<button type="submit" class="btn btn-primary">Importieren</button>
</form></div>
@@ -16,7 +16,7 @@
.summary { color: #4b5563; font-size: 13pt; margin: 0 0 1rem; }
.meta { display: flex; flex-wrap: wrap; gap: .4rem 1.25rem; padding: .65rem 0; margin-bottom: 1.4rem; color: #6b7280; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; font-size: 9pt; }
.content img { max-width: 100%; height: auto; }
.content table { width: 100%; border-collapse: collapse; margin: 1em 0; }
.content table { width: auto; max-width: 100%; border-collapse: collapse; margin: 1em 0; font-size: 9pt; line-height: 1.25; }
.content th, .content td { border: 1px solid #777; padding: .35rem .5rem; vertical-align: top; }
.content pre, .content code { white-space: pre-wrap; overflow-wrap: anywhere; font-family: Consolas, monospace; }
.content a { color: #174ea6; overflow-wrap: anywhere; }