diff options
| author | Paul-Christian Volkmer | 2024-03-04 10:12:12 +0100 |
|---|---|---|
| committer | Paul-Christian Volkmer | 2024-03-04 10:12:12 +0100 |
| commit | 9392bcadc98c123515e41b66901607bef6c5cf81 (patch) | |
| tree | 79867c7edb5c91e53de47ed9a31cba3c87cebee3 | |
| parent | a008641192be4fce50fcac31be02cd035964eafe (diff) | |
feat: add admin role assignment
| -rw-r--r-- | src/main/kotlin/dev/dnpm/etl/processor/security/UserRole.kt | 3 | ||||
| -rw-r--r-- | src/main/resources/static/style.css | 12 | ||||
| -rw-r--r-- | src/main/resources/templates/configs/userroles.html | 7 |
3 files changed, 16 insertions, 6 deletions
diff --git a/src/main/kotlin/dev/dnpm/etl/processor/security/UserRole.kt b/src/main/kotlin/dev/dnpm/etl/processor/security/UserRole.kt index 4de31f5..a1d45c8 100644 --- a/src/main/kotlin/dev/dnpm/etl/processor/security/UserRole.kt +++ b/src/main/kotlin/dev/dnpm/etl/processor/security/UserRole.kt @@ -34,7 +34,8 @@ data class UserRole( enum class Role(val value: String) { GUEST("guest"), - USER("user") + USER("user"), + ADMIN("admin") } interface UserRoleRepository : CrudRepository<UserRole, Long> { diff --git a/src/main/resources/static/style.css b/src/main/resources/static/style.css index 0dd5820..a746832 100644 --- a/src/main/resources/static/style.css +++ b/src/main/resources/static/style.css @@ -449,7 +449,7 @@ td.clipboard.clipped { } .btn.btn-red:hover, .btn.btn-red:active { - background: darkred !important; + background: darkred; } .btn.btn-blue { @@ -458,7 +458,7 @@ td.clipboard.clipped { } .btn.btn-blue:hover, .btn.btn-blue:active { - background: darkslategray !important; + background: darkslategray; } .btn.btn-delete:before { @@ -466,6 +466,14 @@ td.clipboard.clipped { padding: .2rem; } +button:disabled, +.btn:disabled { + background: slategray !important; + color: lightgray; + filter: none; + cursor: default; +} + input.inline { border: none; font-size: 1.1rem; diff --git a/src/main/resources/templates/configs/userroles.html b/src/main/resources/templates/configs/userroles.html index 23cc5f2..f5e4586 100644 --- a/src/main/resources/templates/configs/userroles.html +++ b/src/main/resources/templates/configs/userroles.html @@ -21,16 +21,17 @@ <td> <div class="userrole-form"> <form th:hx-put="@{/configs/userroles/{id}(id=${userRole.id})}" hx-target="#userroles"> - <select name="role"> + <select name="role" th:disabled="${#authorization.authentication.getName() == userRole.username}"> <option th:selected="${userRole.role.value == 'guest'}" value="GUEST">Gast</option> <option th:selected="${userRole.role.value == 'user'}" value="USER">Benutzer</option> + <option th:selected="${userRole.role.value == 'admin'}" value="ADMIN">Administrator</option> </select> - <button class="btn btn-blue">Übernehmen</button> + <button class="btn btn-blue" th:disabled="${#authorization.authentication.getName() == userRole.username}">Übernehmen</button> </form> </div> </td> <td> - <button class="btn btn-red" th:hx-delete="@{/configs/userroles/{id}(id=${userRole.id})}" hx-target="#userroles">Löschen</button> + <button class="btn btn-red" th:hx-delete="@{/configs/userroles/{id}(id=${userRole.id})}" hx-target="#userroles" th:disabled="${#authorization.authentication.getName() == userRole.username}">Löschen</button> </td> </tr> </tbody> |
