summaryrefslogtreecommitdiffstats
path: root/src/main/resources/templates
diff options
context:
space:
mode:
authorGeorg Pfuetzenreuter2022-05-08 04:16:19 +0200
committerGeorg Pfuetzenreuter2022-05-08 04:16:19 +0200
commitf105d0e1ab01fca7a04f54a8cacf6372a5b2d6c0 (patch)
tree3aa606b8f504acfece71f3cc2476b32afac0d42d /src/main/resources/templates
parent67ead5b62d0b1291bde0b49ac602be7cdcf3d536 (diff)
downloadpubsh-web-f105d0e1ab01fca7a04f54a8cacf6372a5b2d6c0.tar.gz
pubsh-web-f105d0e1ab01fca7a04f54a8cacf6372a5b2d6c0.tar.bz2
pubsh-web-f105d0e1ab01fca7a04f54a8cacf6372a5b2d6c0.zip
User/Admin logic
Signed-off-by: Georg Pfuetzenreuter <mail@georg-pfuetzenreuter.net>
Diffstat (limited to 'src/main/resources/templates')
-rw-r--r--src/main/resources/templates/user.html62
1 files changed, 62 insertions, 0 deletions
diff --git a/src/main/resources/templates/user.html b/src/main/resources/templates/user.html
new file mode 100644
index 0000000..a5473ee
--- /dev/null
+++ b/src/main/resources/templates/user.html
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<html xmlns:th="http://www.thymeleaf.org">
+<head th:include="layout :: headerFragment">
+</head>
+<body>
+ <div id="container">
+ <div th:if="${message}" th:text="${message}" th:class="${'alert ' + alertClass}"/></div>
+ <h1>
+ Hello, <span th:text="${username}"></span>.
+ </h1>
+ <div th:if="${attribute01 != null}" th:text="${attribute01}"></div>
+ <h2>Available images:</h2>
+ <table>
+ <tr th:each="image: ${docker_images}" th:if="${image.repoTags[0] != '<none>:<none>'}">
+ <td>
+ <table>
+ <tr th:each="tag: ${image.repoTags}">
+ <td th:text="${tag}"/>
+ <td>
+ <form id="deletion_pseudoform" action="#" th:action="@{'/frontend/image/delete/{id}'(id=${tag})}" th:method="delete" th:tag="${tag}" th:onsubmit="return confirm('Do you really want to delete the imag with tag ' + this.getAttribute('tag') + '?');">
+ <button class="btn btn-danger" id="deletion_submission" type="submit">x</button>
+ </form>
+ </td>
+ </tr>
+ </table>
+ </td>
+ <td th:text="${image.created}" />
+ </tr>
+ </table>
+
+ <h2>Generate new throw-away shell:</h2>
+ <form th:object="${osChoice}" th:id="request_pseudoform" action="#" th:action="@{'/frontend/container/add'}" th:method="post" th:os="${osChoice}" th:onsubmit="return confirm('You are about to generate a shell with the OS ' + this.getAttribute('osoption') + ' - please be patient after you confirm, as the generation may take a short while.');">
+ <select class="form-control" th:object="${osChoice}" name="osChoice">
+ <option value="">Select operating system ...</option>
+ <option
+ th:each="osoption : ${availableOs}"
+ th:value="${osoption}"
+ th:attr="value=${osoption}"
+ th:text="${osoption}"></option>
+ </select>
+ <button class="btn btn-primary" th:id="request_submission" th:type="submit">Generate</button>
+ </form>
+
+ <h2>Existing containers:</h2>
+ <table>
+ <tr th:each="container: ${docker_containers}">
+ <td th:text="${container.names[0]}" />
+ <td th:text="${container.image}" />
+ <td th:text="${container.id}" />
+ <td th:text="${container.status}" />
+<td>
+<form id="deletion_pseudoform" action="#" th:action="@{'/frontend/container/delete/{id}'(id=${container.id})}" th:method="delete" th:containerid="${container.id}" th:containerShaSum="${container.imageId}" th:onsubmit="return confirm('Do you really want to delete the container with ID ' + this.getAttribute('containerid') + ' which is attached to the image with checksum ' + this.getAttribute('containerShaSum') + ' ?');">
+<button class="btn btn-danger" id="deletion_submission" type="submit">Delete</button>
+</form>
+</td>
+ </tr>
+ </table>
+ <p></p>
+ <a href="/logout">Logout</a>
+ </div>
+</body>
+</html>