diff --git a/borgweb/borg/templates/borg/errors.html b/borgweb/borg/templates/borg/errors.html
new file mode 100644
index 0000000..11c36fa
--- /dev/null
+++ b/borgweb/borg/templates/borg/errors.html
@@ -0,0 +1,35 @@
+{% extends "borg/base.html" %}
+{% load cache %}
+{% load static %}
+
+{% block title %}{{ repo.label }} errors{% endblock %}
+{% block script %}
+{% endblock %}
+
+{% block style %}
+ {{ block.super }}
+ .error-container {
+ padding: 8px;
+ margin: 8px;
+ }
+{% endblock %}
+{% block body %}
+ {% if errors %}
+
+
+ {% for error in errors %}
+ -
+ {{ error.error }}
+
+ {% endfor %}
+
+ {% else %}
+
+ {% endif %}
+
+{% endblock %}
+
diff --git a/borgweb/borg/templates/borg/repo-template.html b/borgweb/borg/templates/borg/repo-template.html
deleted file mode 100644
index 416157b..0000000
--- a/borgweb/borg/templates/borg/repo-template.html
+++ /dev/null
@@ -1,23 +0,0 @@
-
\ No newline at end of file
diff --git a/borgweb/borg/urls.py b/borgweb/borg/urls.py
index 79da24e..1e299d5 100644
--- a/borgweb/borg/urls.py
+++ b/borgweb/borg/urls.py
@@ -20,6 +20,7 @@ urlpatterns = [
# Repo page
path('repo/', cache_page(60)(views.repo), name='repo'),
+ path('repo//errors', cache_page(60)(views.repo_errors), name='repo'),
# POST
path('post/repo', views.post_repo, name='post repo'),
diff --git a/borgweb/borg/views/views.py b/borgweb/borg/views/views.py
index 085f79c..6a63843 100644
--- a/borgweb/borg/views/views.py
+++ b/borgweb/borg/views/views.py
@@ -1,3 +1,4 @@
+from django.contrib.auth.decorators import permission_required
from django.shortcuts import render, get_object_or_404
from ..models import Repo
@@ -16,5 +17,11 @@ def repo(request, repo_label: str):
return render(request, 'borg/repo.html', {'repo': s_repo})
+@permission_required("borg.view_error")
+def repo_errors(request, repo_label: str):
+ s_repo = get_object_or_404(Repo, label__label=repo_label)
+ return render(request, 'borg/errors.html', {'errors': s_repo.label.errors.all().order_by('-time')})
+
+
def axes(request, credentials, *args, **kwargs):
return render(request, 'error/axes.html', {})