aboutsummaryrefslogtreecommitdiffstats
path: root/templates
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-05-12 12:39:10 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-05-12 12:39:10 +0200
commit1e4dff1995833538f436b381bc0450a7c0080bad (patch)
tree2dc620ac9ea683cbee412b8d5818b3992462677c /templates
downloadback-1e4dff1995833538f436b381bc0450a7c0080bad.zip
chore: Initial commit
Based on the version that was previously in `vhack.eu/nixos-server/pkgs/by-name/ba/back`.
Diffstat (limited to 'templates')
-rw-r--r--templates/issue.html74
-rw-r--r--templates/issues.html77
-rw-r--r--templates/repos.html62
3 files changed, 213 insertions, 0 deletions
diff --git a/templates/issue.html b/templates/issue.html
new file mode 100644
index 0000000..c7e4efc
--- /dev/null
+++ b/templates/issue.html
@@ -0,0 +1,74 @@
+<!--
+Back - An extremely simple git bug visualization system. Inspired by TVL's
+panettone.
+
+Copyright (C) 2025 Benedikt Peetz <benedikt.peetz@b-peetz.de>
+SPDX-License-Identifier: AGPL-3.0-or-later
+
+This file is part of Back.
+
+You should have received a copy of the License along with this program.
+If not, see <https://www.gnu.org/licenses/agpl.txt>.
+-->
+
+<!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>
diff --git a/templates/issues.html b/templates/issues.html
new file mode 100644
index 0000000..564827c
--- /dev/null
+++ b/templates/issues.html
@@ -0,0 +1,77 @@
+<!--
+Back - An extremely simple git bug visualization system. Inspired by TVL's
+panettone.
+
+Copyright (C) 2025 Benedikt Peetz <benedikt.peetz@b-peetz.de>
+SPDX-License-Identifier: AGPL-3.0-or-later
+
+This file is part of Back.
+
+You should have received a copy of the License along with this program.
+If not, see <https://www.gnu.org/licenses/agpl.txt>.
+-->
+
+<!doctype html>
+<html lang="en">
+ <head>
+ <title>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">
+ <header>
+ <h1>{{wanted_status}} Issues</h1>
+ </header>
+ <main>
+ <div class="issue-links">
+ <a href="/{{repo_path}}/issues/{{counter_status|lowercase}}/"
+ >View {{counter_status}} issues</a
+ >
+ <a href="{{source_code_repository_url}}">Source code</a>
+ <!--
+ <form class="issue-search" method="get">
+ <input name="search" title="Issue search query" type="search">
+ <input class="sr-only" type="submit" value="Search Issues">
+ </form>
+ -->
+ </div>
+ <ol class="issue-list">
+ {% for issue in issues -%}
+ <li>
+ <a href="/{{repo_path}}/issue/{{issue.id}}">
+ <p>
+ <span class="issue-subject">{{issue.title|safe}}</span>
+ </p>
+ <span class="issue-number">{{issue.id}}</span>
+ <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>
+ {% if !issue.comments.is_empty() +%}
+ <span class="comment-count">
+ - {{issue.comments.len()}}
+ comment{{issue.comments.len()|pluralize}}</span
+ >
+ {%+ endif %}
+ </a>
+ </li>
+ {%- endfor %}
+ </ol>
+ </main>
+ </div>
+ </body>
+</html>
diff --git a/templates/repos.html b/templates/repos.html
new file mode 100644
index 0000000..8aa71c4
--- /dev/null
+++ b/templates/repos.html
@@ -0,0 +1,62 @@
+<!--
+Back - An extremely simple git bug visualization system. Inspired by TVL's
+panettone.
+
+Copyright (C) 2025 Benedikt Peetz <benedikt.peetz@b-peetz.de>
+SPDX-License-Identifier: AGPL-3.0-or-later
+
+This file is part of Back.
+
+You should have received a copy of the License along with this program.
+If not, see <https://www.gnu.org/licenses/agpl.txt>.
+-->
+
+<!doctype html>
+<html lang="en">
+ <head>
+ <title>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">
+ <header>
+ <h1>Repositories</h1>
+ </header>
+ <main>
+ <div class="issue-links">
+ <a href="{{source_code_repository_url}}">Source code</a>
+ <!--
+ <form class="issue-search" method="get">
+ <input name="search" title="Issue search query" type="search">
+ <input class="sr-only" type="submit" value="Search Issues">
+ </form>
+ -->
+ </div>
+ <ol class="issue-list">
+ {% for repo in repos -%}
+ <li>
+ <a href="/{{repo.path}}/issues/open">
+ <p>
+ <span class="issue-subject">{{repo.path}}</span>
+ </p>
+ <span class="created-by-at">
+ <span class="timestamp">{{repo.description}}</span>
+ {{ "-" }}
+ <span class="user-name">{{repo.owner}}</span>
+ </span>
+ </a>
+ </li>
+ {%- endfor %}
+ </ol>
+ </main>
+ </div>
+ </body>
+</html>