summaryrefslogtreecommitdiff
path: root/bin/ui
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-03-26 15:53:08 -0600
committermo khan <mo@mokhan.ca>2025-03-26 15:53:08 -0600
commit83ccdf9dbfa21f13cf6733a0a24fb009973c337a (patch)
tree7804d93a50460f29afc874d6e7119cc433346e6e /bin/ui
parentd51fa3b27207f729d954de8c697f86deb85984af (diff)
feat: extract a navigation header for each page in UI
Diffstat (limited to 'bin/ui')
-rwxr-xr-xbin/ui104
1 files changed, 74 insertions, 30 deletions
diff --git a/bin/ui b/bin/ui
index 427d212..97ae043 100755
--- a/bin/ui
+++ b/bin/ui
@@ -179,18 +179,34 @@ class UI
html = with_layout(binding) do
<<~ERB
<%- if current_user?(request) -%>
- <a href="/groups.html">Groups</a>
+ <nav>
+ <ul class="pico-background-pink-100">
+ <li><strong>UI</strong></li>
+ </ul>
+ <ul>
+ <li><a href="/groups.html">Groups</a></li>
+ <li>
+ <form action="/logout" method="post">
+ <input type="submit" value="Logout" />
+ </form>
+ </li>
+ </ul>
+ </nav>
<h1>Access Token</h1>
<pre><%= request.session[:access_token] %></pre>
+
<h1>ID Token</h1>
<pre><%= request.session[:id_token] %></pre>
-
- <form action="/logout" method="post">
- <input type="submit" value="Logout" />
- </form>
<%- else -%>
- <a href="/saml/new">SAML Login</a>
- <a href="/oidc/new">OIDC Login</a>
+ <nav>
+ <ul class="pico-background-pink-100">
+ <li><strong>UI</strong></li>
+ </ul>
+ <ul>
+ <li><a href="/saml/new">SAML Login</a></li>
+ <li><a href="/oidc/new">OIDC Login</a></li>
+ </ul>
+ </nav>
<%- end -%>
ERB
end
@@ -259,19 +275,27 @@ class UI
request.session[:id_token] = tokens[:id_token]
request.session[:refresh_token] = tokens[:access_token]
- template = <<~ERB
- <!DOCTYPE html>
- <html>
- <head><title></title></head>
- <body style="background-color: pink;">
- <pre style="display: none;"><%= response.body %></pre>
- <pre><%= JSON.pretty_generate(request.session[:access_token]) %></pre>
- <a href="/index.html">Home</a>
- <a href="/groups.html">Groups</a>
- </body>
- </html>
- ERB
- html = ERB.new(template, trim_mode: '-').result(binding)
+ html = with_layout(binding) do
+ <<~ERB
+ <nav>
+ <ul class="pico-background-pink-100">
+ <li><strong>UI</strong></li>
+ </ul>
+ <ul>
+ <li><a href="/index.html">Home</a></li>
+ <li><a href="/groups.html">Groups</a></li>
+ <li>
+ <form action="/logout" method="post">
+ <input type="submit" value="Logout" />
+ </form>
+ </li>
+ </ul>
+ </nav>
+ <h1>Access Token</h1>
+ <pre style="display: none;"><%= response.body %></pre>
+ <pre><%= JSON.pretty_generate(request.session[:access_token]) %></pre>
+ ERB
+ end
[200, { 'Content-Type' => "text/html" }, [html]]
else
[response.code, response.header, [response.body]]
@@ -288,11 +312,21 @@ class UI
groups = JSON.parse(response.body, symbolize_names: true)
html = with_layout(binding) do
<<~ERB
- <a href="/index.html">Home</a>
- <a href="/groups.html">Groups</a>
- <form action="/logout" method="post">
- <input type="submit" value="Logout" />
- </form>
+ <nav>
+ <ul class="pico-background-pink-100">
+ <li><strong>UI</strong></li>
+ </ul>
+ <ul>
+ <li><a href="/index.html">Home</a></li>
+ <li><a href="/groups.html">Groups</a></li>
+ <li>
+ <form action="/logout" method="post">
+ <input type="submit" value="Logout" />
+ </form>
+ </li>
+ </ul>
+ </nav>
+
<table>
<thead>
<tr>
@@ -334,11 +368,21 @@ class UI
html = with_layout(binding) do
<<~ERB
- <a href="/index.html">Home</a>
- <a href="/groups.html">Groups</a>
- <form action="/logout" method="post">
- <input type="submit" value="Logout" />
- </form>
+ <nav>
+ <ul class="pico-background-pink-100">
+ <li><strong>UI</strong></li>
+ </ul>
+ <ul>
+ <li><a href="/index.html">Home</a></li>
+ <li><a href="/groups.html">Groups</a></li>
+ <li>
+ <form action="/logout" method="post">
+ <input type="submit" value="Logout" />
+ </form>
+ </li>
+ </ul>
+ </nav>
+
<table>
<thead>
<tr>