bifroest/app/templates/hugin_plan.html
2026-10-27 08:34:17 +01:00

48 lines
2.6 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{% extends "base.html" %}
{% block title %}Hugin abgleichen · {{ workspace.name }}{% endblock %}
{% block content %}
{% set wbase = '/workspaces/' ~ workspace.id %}
{% set labels = {'neu': ('badge-info', 'neu'), 'aktualisieren': ('badge-warning', 'Update verfügbar'), 'entfällt': ('badge-danger', 'entfällt'), 'unverändert': ('badge-default', 'unverändert')} %}
<div class="stack stack-sm">
<h1>Mit Hugin abgleichen</h1>
</div>
{% include "_flash.html" %}
{% if plan %}
<section class="card">
<div class="card-body stack">
<p class="text-sm text-muted">So würde Hugin die gewählten Pakete und die Pflichtpakete jetzt auflösen. Übernehmen lädt neue Versionen, prüft ihre Prüfsumme und schreibt sie fest; erst dann gelten sie in Chats.</p>
{% if plan.changes %}
<div class="table-wrap"><table>
<thead><tr><th>Paket</th><th>Art</th><th>Bisher</th><th>Neu</th><th></th></tr></thead>
<tbody>
{% for c in plan.changes %}{% set badge = labels[c.action] %}
<tr>
<td><code>{{ c.package_id }}</code>{% if c.mandatory %} <span class="badge badge-info">Pflicht</span>{% endif %}{% if c.deprecated %} <span class="badge badge-warning">veraltet</span>{% endif %}
{% if c.unsupported %}<p class="text-xs text-muted">{{ c.unsupported }}</p>{% endif %}</td>
<td>{{ kind_names.get(c.kind, c.kind) }}</td>
<td>{{ c.current or '–' }}</td>
<td>{{ c.new or '–' }}</td>
<td><span class="badge {{ badge[0] }}">{{ badge[1] }}</span></td>
</tr>
{% endfor %}
</tbody>
</table></div>
{% else %}<p class="text-muted text-sm">Keine Pakete: nichts gewählt und keine Pflichtpakete.</p>{% endif %}
{% if plan.major_available %}
<div class="alert alert-info" role="status"><div class="alert-content"><p>Neue Hauptversion verfügbar: {% for k, v in plan.major_available.items() %}<code>{{ k }}</code> {{ v }}{{ ', ' if not loop.last }}{% endfor %}. Dafür die Auswahl ändern, z. B. auf <code>@^</code> mit der neuen Hauptversion.</p></div></div>
{% endif %}
<div class="cluster">
{% if plan.pending %}
<form method="post" action="{{ wbase }}/hugin/apply">
<input type="hidden" name="_csrf" value="{{ p.csrf }}">
<button class="btn btn-primary btn-sm" type="submit">Übernehmen</button>
</form>
{% else %}<span class="text-sm text-muted">Alles aktuell.</span>{% endif %}
<a class="btn btn-ghost btn-sm" href="{{ wbase }}/settings?tab=hugin">Zurück</a>
</div>
</div>
</section>
{% else %}
<p><a class="btn btn-ghost btn-sm" href="{{ wbase }}/settings?tab=hugin">Zurück</a></p>
{% endif %}
{% endblock %}