summaryrefslogtreecommitdiff
path: root/lib/nola_web/templates/page
diff options
context:
space:
mode:
Diffstat (limited to 'lib/nola_web/templates/page')
-rw-r--r--lib/nola_web/templates/page/api.html.eex35
-rw-r--r--lib/nola_web/templates/page/index.html.eex1
-rw-r--r--lib/nola_web/templates/page/irc.html.eex19
-rw-r--r--lib/nola_web/templates/page/user.html.eex43
-rw-r--r--lib/nola_web/templates/page/widget.html.eex20
5 files changed, 118 insertions, 0 deletions
diff --git a/lib/nola_web/templates/page/api.html.eex b/lib/nola_web/templates/page/api.html.eex
new file mode 100644
index 0000000..03dfa6b
--- /dev/null
+++ b/lib/nola_web/templates/page/api.html.eex
@@ -0,0 +1,35 @@
+<h1>sys.115ans.net/api</h1>
+
+<h2>Icecast Status</h2>
+
+<h3>GET /api/icecast.json</h3>
+
+<p>
+ Content-Type: <code>application/json</code>
+</p>
+
+<pre><code>
+{
+ "np": String,
+ "genre": null | String,
+ "live": false | true
+}
+</pre></code>
+
+<h3>GET /api/icecast.sse</h3>
+<p>
+ Content-Type: <code>text/event-stream</code>
+</p>
+
+<p>
+ Stream of:
+</p>
+
+ <ul>
+ <li><strong>icecast</strong> events (same format as <code>/api/icecast.json</code>)</li>
+ <li><strong>ping</strong> events (to keep-alive connection. You can safely ignore them)</li>
+ </ul>
+<p>
+ On client connection, the server sends the latest <code>icecast</code> status known.
+</p>
+
diff --git a/lib/nola_web/templates/page/index.html.eex b/lib/nola_web/templates/page/index.html.eex
new file mode 100644
index 0000000..1b8519a
--- /dev/null
+++ b/lib/nola_web/templates/page/index.html.eex
@@ -0,0 +1 @@
+<p>vOv</p>
diff --git a/lib/nola_web/templates/page/irc.html.eex b/lib/nola_web/templates/page/irc.html.eex
new file mode 100644
index 0000000..f6598ee
--- /dev/null
+++ b/lib/nola_web/templates/page/irc.html.eex
@@ -0,0 +1,19 @@
+<h1>bot `115ans</h1>
+
+<p>Si vous cherchez l'IRC c'est <a href="https://115ans.net/irc/">par là</a>.</p>
+
+<style type="text/css">
+.help-entry h1 {
+ font-size: 18px;
+}
+.help-entry h2 {
+ font-size: 16px;
+}
+</style>
+
+<div class="irchelps">
+ <%= for help <- @bot_helps do %>
+ <div class="help-entry"><%= help |> Earmark.as_html! |> raw() %></div>
+ <% end %>
+</div>
+
diff --git a/lib/nola_web/templates/page/user.html.eex b/lib/nola_web/templates/page/user.html.eex
new file mode 100644
index 0000000..de9f718
--- /dev/null
+++ b/lib/nola_web/templates/page/user.html.eex
@@ -0,0 +1,43 @@
+<div class="prose prose-lg">
+<ul>
+ <li><%= link("Help", to: "/-") %></li>
+ <%= unless List.keyfind(@metas, "identity-id", 0) do %>
+ <li><%= link("Connect with random.sh", to: Routes.open_id_path(@conn, :login)) %></li>
+ <% end %>
+</ul>
+
+<h2>channels</h2>
+<ul>
+ <%= for {net, channel} <- @memberships do %>
+ <li>
+ <% url = NolaWeb.Router.Helpers.irc_path(NolaWeb.Endpoint, :index, net, NolaWeb.format_chan(channel)) %>
+ <%= link([net, ": ", content_tag(:strong, channel)], to: url) %>
+ </li>
+ <% end %>
+</ul>
+
+<h2>connections</h2>
+<ul>
+ <%= for user <- @users do %>
+ <li>
+ <strong><%= user.network %></strong>: <strong><%= user.nick %></strong>!<%= user.username %>@<%= user.host %> <i><%= user.realname %></i><br />
+ <%= Enum.join(Enum.intersperse(Enum.map(user.privileges, fn({c, _}) -> c end), ", ")) %>
+ </li>
+ <% end %>
+</ul>
+
+<h2>account</h2>
+<ul>
+ <li>account-id: <%= @conn.assigns.account.id %></li>
+ <%= for {k, v} <- @metas do %>
+ <li><%= k %>: <%= to_string(v) %></li>
+ <% end %>
+</ul>
+
+<strong>irc auths:</strong>
+<ul>
+ <%= for {net, {predicate, v}} <- @predicates do %>
+ <li><%= net %>: <%= to_string(predicate) %>, <%= v %></li>
+ <% end %>
+</ul>
+</div>
diff --git a/lib/nola_web/templates/page/widget.html.eex b/lib/nola_web/templates/page/widget.html.eex
new file mode 100644
index 0000000..65853b3
--- /dev/null
+++ b/lib/nola_web/templates/page/widget.html.eex
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<link rel="stylesheet" href="<%= static_path(@conn, "/assets/css/widget.css") %>">
+<script src="<%= static_path(@conn, "/assets/js/soundmanager2-jsmin.js") %>"></script>
+<script src="<%= static_path(@conn, "/assets/js/widget.js") %>"></script>
+</head>
+<body>
+ <div id="player" class="<%= if @icecast.live, do: "live", else: "autodj" %>">
+ <div id="state">▶</div>
+ <div id="titles">
+ <div id="genre"><%= @icecast.genre %></div>
+ <div id="np"><%= @icecast.np %></div>
+ </div>
+ </div>
+</body>
+</html>