🔒 Repository is read-only – file editing is disabled.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
{% extends "base.html" %}{% block title %}{{ t('admin_submissions') }}{% endblock %}
{% block content %}
{% include "admin/nav.html" %}
<div class="card">
<div class="card-header"><h2> {{ t('admin_submissions_title') }}</h2>
<div style="display:flex;gap:0.5rem"><a href="/admin" class="btn btn-sm">⬅ {{ t('admin_back_panel') }}</a></div>
</div>
{% if not pend %}
<p style="padding:1rem;color:var(--muted)">{{ t('admin_no_submissions') }}</p>
{% endif %}
{% for r in pend %}
{% set d = r.data %}
<div style="border:1px solid var(--border);border-radius:var(--radius-sm);margin:0.75rem;padding:0.75rem">
<div style="display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:0.5rem">
<div><strong>{{ d.pkgname }}</strong> <span class="text-muted">{{ d.pkgver }}-{{ d.pkgrel }}</span>
<div class="text-muted" style="font-size:0.78rem">{{ d.pkgdesc }}</div></div>
<div class="text-xs text-muted">{{ r.created_at }}</div>
</div>
<details>
<summary style="cursor:pointer;font-size:0.85rem">{{ t('admin_preview') }}</summary>
<pre style="background:#0d1117;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0.6rem;overflow:auto;font-size:0.8rem">pkgname: {{ d.pkgname }}
pkgver: '{{ d.pkgver }}'
pkgrel: {{ d.pkgrel }}
pkgdesc: '{{ d.pkgdesc }}'
url: '{{ d.url }}'
arch: x86_64
license: {{ d.license.split(',') }}
depends: {{ d.depends.split(',') }}
makedepends: {{ d.makedepends.split(',') }}
source:
- '{{ d.source.splitlines()[0] if d.source else "" }}'
sha256sums: {{ d.sha256sums or 'SKIP' }}
build: |-
{{ d.build.replace('\n', '\n ') }}
package: |-
{{ d.package.replace('\n', '\n ') }}</pre>
</details>
<div style="display:flex;gap:0.5rem;margin-top:0.5rem">
<form method="POST" action="/admin/recipes-pending/{{ r.id }}/approve" style="margin:0" onsubmit="return confirm('{{ t('admin_confirm_approve') }} {{ d.pkgname }}?')">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}">
<button class="btn btn-sm" style="background:#2ea043;color:#fff">✅ {{ t('admin_approve') }}</button>
</form>
<form method="POST" action="/admin/recipes-pending/{{ r.id }}/reject" style="margin:0" onsubmit="return confirm('{{ t('admin_confirm_reject') }} {{ d.pkgname }}?')">
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}">
<button class="btn btn-sm" style="background:#da3633;color:#fff"> {{ t('admin_reject') }}</button>
</form>
</div>
</div>
{% endfor %}
</div>
{% endblock %}