about summary refs log tree commit diff stats
path: root/pkgs/by-name/ba/back/templates/issue.html
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-03-08 21:50:22 +0100
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-03-09 13:44:42 +0100
commita9ff6e1c86ad51b3fa568ea7caa992df5db8c316 (patch)
tree65cb6404fce4f84be9ed6561ed152d0d21e3b875 /pkgs/by-name/ba/back/templates/issue.html
parentscripts/get_dns.sh: Init (diff)
downloadnixos-server-a9ff6e1c86ad51b3fa568ea7caa992df5db8c316.zip
pkgs/back: Support listing all repos via the `/` path
This change required porting all webhandling from rocket to hyper,
because we needed fine grained control over the path the user
requested. This should also improve the memory and resources footprint
because hyper is more lower level.

I also changed all of the templates from `format!()` calls to a real
templating language because I needed to touch most code paths anyway.
Diffstat (limited to 'pkgs/by-name/ba/back/templates/issue.html')
-rw-r--r--pkgs/by-name/ba/back/templates/issue.html57
1 files changed, 57 insertions, 0 deletions
diff --git a/pkgs/by-name/ba/back/templates/issue.html b/pkgs/by-name/ba/back/templates/issue.html
new file mode 100644
index 0000000..5b452c5
--- /dev/null
+++ b/pkgs/by-name/ba/back/templates/issue.html
@@ -0,0 +1,57 @@
+<!doctype html>
+<html lang="en">
+    <head>
+        <title>{{ HtmlString::from(issue.title.clone()) }} | Back</title>
+        <link
+            href="/style.css"
+            rel="stylesheet"
+            type="text/css" />
+        <meta
+            content="width=device-width,initial-scale=1"
+            name="viewport" />
+    </head>
+    <body>
+        <div class="content">
+            <nav>
+                <a href="/{{repo_path}}/issues/open">Open Issues</a>
+                <a href="/{{repo_path}}/issues/closed">Closed Issues</a>
+            </nav>
+            <header>
+                <h1>{{issue.title|safe}}</h1>
+                <div class="issue-number">{{issue.id}}</div>
+            </header>
+            <main>
+                <div class="issue-info">
+                    <span class="created-by-at"
+                        >Opened by <span class="user-name">{{issue.author.name|safe}}</span>
+                        <span class="user-email">&lt;{{issue.author.email|safe}}&gt;</span> at
+                        <span class="timestamp">{{issue.timestamp}}</span></span
+                    >
+                </div>
+                {{issue.message|safe}} {% if !issue.comments.is_empty() %}
+                <ol class="issue-history">
+                    {% for comment in issue.comments %}
+                    <li
+                        class="comment"
+                        id="{{comment.id}}">
+                        {{comment.message|safe}}
+                        <p class="comment-info">
+                            <span class="user-name"
+                                >{{comment.author.name|safe}} at {{comment.timestamp}}</span
+                            >
+                        </p>
+                    </li>
+                    {% endfor %}
+                </ol>
+                {% endif %}
+            </main>
+            <footer>
+                <nav>
+                    <a href="/{{repo_path}}/issues/open">Open Issues</a>
+                    <a href="{{source_code_repository_url}}">Source code</a>
+                    <a href="/{{repo_path}}/issues/closed">Closed Issues</a>
+                </nav>
+            </footer>
+        </div>
+    </body>
+</html>