summaryrefslogtreecommitdiff
path: root/cgithub/views
diff options
context:
space:
mode:
authorJoe Mou <dev@mou.fo>2026-01-28 22:41:00 -0500
committerJoe Mou <dev@mou.fo>2026-01-28 23:03:09 -0500
commit94fcda59a064b5e8952d1bccb6b9a153c39acda1 (patch)
tree849ac2b7f33f62f774d145856eaee5267e3593ae /cgithub/views
parent631bc70d94cd12d0432cca1a220a3642eea6976a (diff)
Commits list
Diffstat (limited to 'cgithub/views')
-rw-r--r--cgithub/views/commits.eta25
-rw-r--r--cgithub/views/layout.eta3
2 files changed, 28 insertions, 0 deletions
diff --git a/cgithub/views/commits.eta b/cgithub/views/commits.eta
new file mode 100644
index 0000000..2ddcba3
--- /dev/null
+++ b/cgithub/views/commits.eta
@@ -0,0 +1,25 @@
+<% layout("./layout.eta") %>
+
+<%~ include("./_nav.eta", {...it, isTree: false}) %>
+
+<% for (const group of it.commitGroups) { %>
+ <h3><%= group.title %></h3>
+ <% for (const commit of group.commits) { %>
+ <div class="commit">
+ <div>
+ <div>
+ <a href="/<%= it.repo.owner %>/<%= it.repo.name %>/commit/<%= commit.oid %>"><%= commit.shortMessage %></a>
+ </div>
+ <div class="commit-author">
+ by
+ <% for (const author of commit.authors) { %>
+ <a href="/<%= author.login %>"><%= author.login %></a>
+ <% } %>
+ </div>
+ </div>
+ <div class="commit-sha">
+ <code><%= commit.oid.substring(0, 7) %></code>
+ </div>
+ </div>
+ <% } %>
+<% } %>
diff --git a/cgithub/views/layout.eta b/cgithub/views/layout.eta
index f4535df..a404437 100644
--- a/cgithub/views/layout.eta
+++ b/cgithub/views/layout.eta
@@ -13,6 +13,9 @@ git clone git@github.com:<%= it.repo.owner %>/<%= it.repo.name %>.git</code></pr
<nav>
<a href="/<%= it.repo.owner %>/<%= it.repo.name %>">Code</a>
<a href="/<%= it.repo.owner %>/<%= it.repo.name %>/issues">Issues</a>
+ <% if (it.branch) { %>
+ <a href="/<%= it.repo.owner %>/<%= it.repo.name %>/commits/<%= it.branch %><%= it.path && it.path !== '/' ? '/' + it.path : '' %>">Commits</a>
+ <% } %>
</nav>
</div>