Refactor web UI to use HTML frames layout
Replace single-page layout with a frameset: left navigation frame with repo dropdown and page links, right content frame showing the selected page. Split the repo page into separate sub-pages: branches, changes, remote, and manage. Uses <frameset> for maximum compatibility with ancient browsers (Netscape 2+, IE 3+). Clone and delete forms target _top to reload the full frameset when the repo list changes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
54
src/main/resources/templates/changes.html
Normal file
54
src/main/resources/templates/changes.html
Normal file
@@ -0,0 +1,54 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns:th="http://www.thymeleaf.org">
|
||||
<head>
|
||||
<title th:text="'Changes - ' + ${name}">Changes</title>
|
||||
</head>
|
||||
<body>
|
||||
<h2>Changes</h2>
|
||||
|
||||
<h3>Modified Files (unstaged)</h3>
|
||||
<form method="post" th:action="@{/repo/{name}/stage(name=${name})}" th:if="${!#lists.isEmpty(modifiedFiles)}">
|
||||
<table border="1" cellpadding="4" cellspacing="0">
|
||||
<tr>
|
||||
<th>Stage</th>
|
||||
<th>File</th>
|
||||
</tr>
|
||||
<tr th:each="file : ${modifiedFiles}">
|
||||
<td><input type="checkbox" name="files" th:value="${file}"></td>
|
||||
<td th:text="${file}"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<br>
|
||||
<input type="submit" value="Stage Selected">
|
||||
</form>
|
||||
<p th:if="${#lists.isEmpty(modifiedFiles)}"><i>No modified files.</i></p>
|
||||
|
||||
<h3>Staged Files</h3>
|
||||
<form method="post" th:action="@{/repo/{name}/unstage(name=${name})}" th:if="${!#lists.isEmpty(stagedFiles)}">
|
||||
<table border="1" cellpadding="4" cellspacing="0">
|
||||
<tr>
|
||||
<th>Unstage</th>
|
||||
<th>File</th>
|
||||
</tr>
|
||||
<tr th:each="file : ${stagedFiles}">
|
||||
<td><input type="checkbox" name="files" th:value="${file}"></td>
|
||||
<td th:text="${file}"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<br>
|
||||
<input type="submit" value="Unstage Selected">
|
||||
</form>
|
||||
<p th:if="${#lists.isEmpty(stagedFiles)}"><i>No staged files.</i></p>
|
||||
|
||||
<form method="post" th:action="@{/repo/{name}/commit(name=${name})}" th:if="${!#lists.isEmpty(stagedFiles)}">
|
||||
<table border="0" cellpadding="4" cellspacing="0">
|
||||
<tr>
|
||||
<td>Commit message:</td>
|
||||
<td><input type="text" name="message" size="60"></td>
|
||||
<td><input type="submit" value="Commit"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user