58 lines
4.1 KiB
HTML
58 lines
4.1 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="{{ language() }}">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>{{ _('Bug melden · MetalCircle') }}</title>
|
|
<link rel="icon" href="/static/images/metalcircle-circle.png">
|
|
<link rel="stylesheet" href="/static/css/style.css">
|
|
<link rel="stylesheet" href="/static/css/language.css">
|
|
</head>
|
|
<body>
|
|
<header><div class="header-inner">
|
|
<a href="/" class="logo"><img class="brand-logo" src="/static/images/metalcircle-full.png" alt="MetalCircle"></a>
|
|
{% include '_user_menu.html' %}
|
|
</div>{% include '_language_switch.html' %}</header>
|
|
<main>
|
|
<div class="page-title"><h1>{{ _('🐛 Bug melden') }}</h1><p>{{ _('Hilf uns, MetalCircle zu verbessern.') }}</p></div>
|
|
<section class="admin-section bug-report-section">
|
|
{% if issue_number %}
|
|
<p class="bug-success" role="status">{{ _('Bugreport #{number} wurde erfolgreich erstellt. Danke!').format(number=issue_number) }}</p>
|
|
<a class="button" href="/">{{ _('Zurück zur Übersicht') }}</a>
|
|
{% else %}
|
|
<p>{{ _('Deine Meldung geht direkt an unser internes Ticketsystem. Sie ist für das Projektteam sichtbar.') }}</p>
|
|
{% if error %}<p class="bug-error" role="alert">{{ error }}</p>{% endif %}
|
|
<form method="post" action="/bug-report" class="bug-report-form">
|
|
<input type="hidden" name="submission_id" value="{{ submission_id }}">
|
|
<label for="bug-title">{{ _('Titel') }} <small>{{ _('(Pflichtfeld)') }}</small></label>
|
|
<input id="bug-title" name="title" required minlength="3" maxlength="160" value="{{ form.title }}">
|
|
<label for="bug-description">{{ _('Bugbeschreibung') }} <small>{{ _('(Pflichtfeld)') }}</small></label>
|
|
<textarea id="bug-description" name="description" required minlength="10" maxlength="5000" rows="5">{{ form.description }}</textarea>
|
|
<label for="bug-expected">{{ _('Erwartetes Verhalten') }} <small>{{ _('(Pflichtfeld)') }}</small></label>
|
|
<textarea id="bug-expected" name="expected" required minlength="3" maxlength="3000" rows="3">{{ form.expected }}</textarea>
|
|
<label for="bug-steps">{{ _('Schritte zum Reproduzieren') }} <small>(optional)</small></label>
|
|
<textarea id="bug-steps" name="steps" maxlength="3000" rows="3">{{ form.steps }}</textarea>
|
|
<div class="bug-report-options">
|
|
<label for="bug-category">{{ _('Kategorie') }}
|
|
<select id="bug-category" name="category">{% for value, label in categories.items() %}<option value="{{ value }}"{% if form.category == value %} selected{% endif %}>{{ label | t }}</option>{% endfor %}</select>
|
|
</label>
|
|
<label for="bug-severity">{{ _('Schweregrad') }}
|
|
<select id="bug-severity" name="severity">{% for value, label in severities.items() %}<option value="{{ value }}"{% if form.severity == value %} selected{% endif %}>{{ label | t }}</option>{% endfor %}</select>
|
|
</label>
|
|
</div>
|
|
<label class="bug-context"><input type="checkbox" name="technical" value="true"{% if form.technical %} checked{% endif %}> {{ _('Technische Informationen mitsenden (optional)') }}</label>
|
|
<p class="bug-help">{{ _('Enthalten sind die betroffene Seite ohne URL-Parameter, Plattform, App-Version und Browsertyp. Dein Benutzername und deine User-ID werden immer aus deiner Anmeldung übernommen.') }}</p>
|
|
<p class="bug-help">{{ _('Betroffene Seite:') }} <code>{{ form.route }}</code></p>
|
|
<input type="hidden" name="route" value="{{ form.route }}">
|
|
<input type="hidden" name="platform" id="bug-platform" value="Web">
|
|
<input type="hidden" name="app_version" id="bug-app-version" value="">
|
|
<p class="bug-help">{{ _('Bitte keine Passwörter, Zugangstoken oder privaten Schlüssel eintragen.') }}</p>
|
|
<button type="submit" class="button"{% if blocked %} disabled{% endif %}>{{ _('Bugreport senden') }}</button>
|
|
</form>
|
|
{% endif %}
|
|
</section>
|
|
</main>
|
|
<script src="/static/js/bug-report.js" defer></script>
|
|
</body>
|
|
</html>
|