97 lines
2.4 KiB
Go Template
97 lines
2.4 KiB
Go Template
{{ define "page" }}
|
|
{{ $version := .VERSION }}
|
|
<link rel="stylesheet" type="text/css" href="/css/{{ .VERSION }}/configuration.css">
|
|
<script type="text/javascript">
|
|
function newArea() {
|
|
let name = prompt("Area name")
|
|
if (name === null)
|
|
return
|
|
|
|
if (name.trim() == '') {
|
|
alert("Name can't be empty")
|
|
return
|
|
}
|
|
|
|
location.href = `/area/new/${name.trim()}`
|
|
}
|
|
function renameArea(id, name) {
|
|
const newName = prompt('Rename area', name)
|
|
if (newName === null)
|
|
return
|
|
|
|
if (newName.trim() == '') {
|
|
alert("Name can't be empty")
|
|
return
|
|
}
|
|
location.href = `/area/rename/${id}/${newName.trim()}`
|
|
}
|
|
|
|
function newSection(areaID) {
|
|
let name = prompt("Section name")
|
|
if (name === null)
|
|
return
|
|
|
|
if (name.trim() == '') {
|
|
alert("Name can't be empty")
|
|
return
|
|
}
|
|
|
|
location.href = `/section/new/${areaID}/${name.trim()}`
|
|
}
|
|
function renameSection(id, name) {
|
|
const newName = prompt('Rename section', name)
|
|
if (newName === null)
|
|
return
|
|
|
|
if (newName.trim() == '') {
|
|
alert("Name can't be empty")
|
|
return
|
|
}
|
|
location.href = `/section/rename/${id}/${newName.trim()}`
|
|
}
|
|
|
|
function deleteArea(id, name) {
|
|
if (!confirm(`Are you sure you want to delete '${name}'?\nEverything in it will be deleted!`))
|
|
return
|
|
location.href = `/area/delete/${id}`
|
|
}
|
|
|
|
function deleteSection(id, name) {
|
|
if (!confirm(`Are you sure you want to delete '${name}'?\nEverything in it will be deleted!`))
|
|
return
|
|
location.href = `/section/delete/${id}`
|
|
}
|
|
</script>
|
|
|
|
{{ block "page_label" . }}{{end}}
|
|
|
|
<h1>Areas</h1>
|
|
|
|
<a href="#" onclick="newArea()">Create</a>
|
|
|
|
<div id="areas">
|
|
{{ range .Data.Areas }}
|
|
<div class="area">
|
|
<div class="name">
|
|
<div onclick="renameArea({{ .ID }}, '{{ .Name }}')">{{ .Name }}</div>
|
|
<img class="delete" src="/images/{{ $version }}/delete_white.svg" onclick="deleteArea({{ .ID }}, '{{ .Name }}')">
|
|
</div>
|
|
|
|
<div style="margin: 8px 16px">
|
|
<a href="#" onclick="newSection({{ .ID }})">Create</a>
|
|
</div>
|
|
{{ range .SortedSections }}
|
|
{{ if eq .ID 0 }}
|
|
{{ continue }}
|
|
{{ end }}
|
|
<div class="section configuration">
|
|
<div class="name" onclick="renameSection({{ .ID }}, {{ .Name }})">{{ .Name }}</div>
|
|
<img src="/images/{{ $version }}/delete.svg" onclick="deleteSection({{ .ID }}, '{{ .Name }}')">
|
|
</div>
|
|
{{ end }}
|
|
</div>
|
|
{{ end }}
|
|
</div>
|
|
|
|
{{ end }}
|