summaryrefslogtreecommitdiff
path: root/cgithub/views
diff options
context:
space:
mode:
Diffstat (limited to 'cgithub/views')
-rw-r--r--cgithub/views/_wikiNav.eta4
-rw-r--r--cgithub/views/layout.eta1
-rw-r--r--cgithub/views/wiki.eta37
-rw-r--r--cgithub/views/wikiPages.eta16
4 files changed, 58 insertions, 0 deletions
diff --git a/cgithub/views/_wikiNav.eta b/cgithub/views/_wikiNav.eta
new file mode 100644
index 0000000..cc177c7
--- /dev/null
+++ b/cgithub/views/_wikiNav.eta
@@ -0,0 +1,4 @@
+<nav>
+ <a href="/<%= it.repo.owner %>/<%= it.repo.name %>/wiki">Wiki home</a>
+ <a href="/<%= it.repo.owner %>/<%= it.repo.name %>/wiki/_pages">Pages</a>
+</nav>
diff --git a/cgithub/views/layout.eta b/cgithub/views/layout.eta
index 6d1b052..1ac82cc 100644
--- a/cgithub/views/layout.eta
+++ b/cgithub/views/layout.eta
@@ -17,6 +17,7 @@ git clone git@github.com:<%= it.repo.owner %>/<%= it.repo.name %>.git</code></pr
<a href="/<%= it.repo.owner %>/<%= it.repo.name %>/issues">Issues</a>
<a href="/<%= it.repo.owner %>/<%= it.repo.name %>/pulls">Pull requests</a>
<a href="/<%= it.repo.owner %>/<%= it.repo.name %>/releases">Releases</a>
+ <a href="/<%= it.repo.owner %>/<%= it.repo.name %>/wiki">Wiki</a>
<% if (it.branch) { %>
<a href="/<%= it.repo.owner %>/<%= it.repo.name %>/commits/<%= it.branch %><%= it.path && it.path !== '/' ? '/' + it.path : '' %>">Commits</a>
<% } %>
diff --git a/cgithub/views/wiki.eta b/cgithub/views/wiki.eta
new file mode 100644
index 0000000..d6047e1
--- /dev/null
+++ b/cgithub/views/wiki.eta
@@ -0,0 +1,37 @@
+<% layout("./layout.eta"); it.path = "wiki/" + it.title %>
+
+<%~ include("./_wikiNav.eta", it) %>
+
+<div class="box wiki">
+ <header>
+ <span><%= it.title %></span>
+ <% if (it.updatedBy || it.updatedAt) { %>
+ <span class="timestamp">
+ <% if (it.updatedBy) { %><%= it.updatedBy %> edited this page<% } %>
+ <% if (it.updatedAt) { %><time title="<%= it.updatedAt %>"><%= it.updatedAt.split("T")[0] %></time><% } %>
+ </span>
+ <% } %>
+ </header>
+ <%~ it.bodyHtml %>
+ <% if (it.footerHtml) { %>
+ <footer><%~ it.footerHtml %></footer>
+ <% } %>
+</div>
+
+<% if (it.sidebarHtml) { %>
+ <div class="box wiki">
+ <header><span>Sidebar</span></header>
+ <%~ it.sidebarHtml %>
+ </div>
+<% } %>
+
+<% if (it.pages.length > 0) { %>
+ <details class="box wiki-pages">
+ <summary><%= it.pages.length %> page<%= it.pages.length === 1 ? "" : "s" %></summary>
+ <ul>
+ <% for (const page of it.pages) { %>
+ <li><a href="<%= page.href %>"><%= page.name %></a></li>
+ <% } %>
+ </ul>
+ </details>
+<% } %>
diff --git a/cgithub/views/wikiPages.eta b/cgithub/views/wikiPages.eta
new file mode 100644
index 0000000..58d6d21
--- /dev/null
+++ b/cgithub/views/wikiPages.eta
@@ -0,0 +1,16 @@
+<% layout("./layout.eta"); it.path = "wiki/_pages" %>
+
+<%~ include("./_wikiNav.eta", it) %>
+
+<table>
+ <% for (const page of it.pages) { %>
+ <tr>
+ <td><a href="<%= page.href %>"><%= page.name %></a></td>
+ <td class="timestamp">
+ <% if (page.updatedAt) { %>
+ <time title="<%= page.updatedAt %>"><%= page.updatedAt.split("T")[0] %></time>
+ <% } %>
+ </td>
+ </tr>
+ <% } %>
+</table>