Files
server/src/main/resources/templates/dashboard.html

46 lines
1.7 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Imgfloat Dashboard</title>
<link rel="stylesheet" href="/css/styles.css" />
</head>
<body>
<div class="container">
<h1>Welcome, <span th:text="${username}">user</span></h1>
<p>Manage your overlay or invite channel admins.</p>
<div class="actions">
<a class="button" th:href="@{'/view/' + ${channel} + '/admin'}">Admin console</a>
<a class="button" th:href="@{'/view/' + ${channel} + '/broadcast'}">Broadcast overlay</a>
<form th:action="@{/logout}" method="post">
<button class="secondary" type="submit">Logout</button>
</form>
</div>
<div class="panel">
<h3>Channel admins</h3>
<p>Add trusted moderators who can upload overlay assets on your behalf.</p>
<div class="actions">
<input id="new-admin" placeholder="Twitch username" />
<button type="button" onclick="addAdmin()">Add admin</button>
</div>
<ul id="admin-list" class="stacked-list"></ul>
</div>
<div th:if="${adminChannels != null}"
class="panel">
<h3>Channels you administer</h3>
<p th:if="${#lists.isEmpty(adminChannels)}">No admin invitations yet.</p>
<ul th:if="${!#lists.isEmpty(adminChannels)}">
<li th:each="channelName : ${adminChannels}">
<a th:href="@{'/view/' + ${channelName} + '/admin'}"
th:text="${channelName}">channel</a>
</li>
</ul>
</div>
</div>
<script th:inline="javascript">
const broadcaster = /*[[${channel}]]*/ '';
</script>
<script src="/js/dashboard.js"></script>
</body>
</html>