<!DOCTYPE html>
<html th:lang="${#locale.toString()}" th:lang-direction="#{language.direction}" xmlns:th="http://www.thymeleaf.org">

<th:block th:insert="~{fragments/common :: head(title=#{adminUserSettings.title})}"></th:block>

<body>
    <th:block th:insert="~{fragments/common :: game}"></th:block>
    <div id="page-container">
        <div id="content-wrap">
            <div th:insert="~{fragments/navbar.html :: navbar}"></div>
            <br> <br>
            <div class="container">
                <div class="row justify-content-center">
                    <div class="col-md-8">
			
                        <!-- User Settings Title -->
                        <h2 class="text-center" th:text="#{adminUserSettings.header}">Admin User Control Settings</h2>
                      

						
						
						<table class="table">
					    <thead>
					        <tr>
					            <th th:text="#{username}">Username</th>
					            <th th:text="#{adminUserSettings.roles}">Roles</th>
					            <th th:text="#{adminUserSettings.actions}">Actions</th>
					        </tr>
					    </thead>
					    <tbody>
					        <tr th:each="user : ${users}">
					            <td th:text="${user.username}"></td>
					            <td th:text="${user.getRolesAsString()}"></td>
					            <td>
					                <form th:if="${user.username != currentUsername}" th:action="@{'/api/v1/user/admin/deleteUser/' + ${user.username}}" method="post">
					                    <button type="submit" th:text="#{delete}">Delete</button>
					                </form>
					            </td>
					        </tr>
					    </tbody>
					</table>

						

						<h2 th:text="#{adminUserSettings.addUser}">Add New User</h2>
						<div th:if="${param.messageType != null and param.messageType.size() > 0 and param.messageType[0] == 'usernameExists'}" class="alert alert-danger">
						    <span th:text="#{usernameExistsMessage}">Default message if not found</span>
						</div>
					    <form action="/api/v1/user/admin/saveUser" method="post">
					        <div class="mb-3">
					            <label for="username" th:text="#{username}">Username</label>
					            <input type="text" class="form-control" name="username" required>
					        </div>
					        <div class="mb-3">
					            <label for="password" th:text="#{password}">Password</label>
					            <input type="password" class="form-control" name="password" required>
					        </div>
					        <div class="mb-3">
						        <label for="role" th:text="#{adminUserSettings.role}">Role</label>
						        <select name="role" class="form-control" required>
						            <option value="ROLE_ADMIN"  th:text="#{adminUserSettings.admin}">Admin</option>
						            <option value="ROLE_USER" th:text="#{adminUserSettings.user}">User</option>
						            <option value="ROLE_LIMITED_API_USER" th:text="#{adminUserSettings.apiUser}">Limited API User</option>
						            <option value="ROLE_WEB_ONLY_USER" th:text="#{adminUserSettings.webOnlyUser}">Web Only User</option>
						            <option value="ROLE_DEMO_USER" th:text="#{adminUserSettings.demoUser}">Demo User</option>
						        </select>
						    </div>
					        <div class="mb-3">
							    <input type="checkbox" class="form-check-input" id="forceChange" name="forceChange">
							    <label class="form-check-label" for="forceChange" th:text="#{adminUserSettings.forceChange}">Force user to change username/password on login</label>
							</div>
					        
					        <!-- Add other fields as required -->
					        <button type="submit" class="btn btn-primary"  th:text="#{adminUserSettings.submit}">Save User</button>
					    </form>
                    </div>
                </div>
            </div>

        </div>
        <div th:insert="~{fragments/footer.html :: footer}"></div>
    </div>
</body>
</html>
