Compare commits

..

4 Commits

Author SHA1 Message Date
606ce6b940
docs(swagger): Build new docs
Some checks failed
ci/woodpecker/tag/release Pipeline was successful
ci/woodpecker/push/build Pipeline failed
2024-12-17 17:51:51 +01:00
750fa70332
feat(models): Support nested groups 2024-12-17 17:51:11 +01:00
7d503edbc9
feat(templates): Support nested groups 2024-12-17 17:50:54 +01:00
5c9235df8d
fix(templates): Enable blank cards 2024-12-17 17:38:42 +01:00
8 changed files with 45 additions and 5 deletions

View File

@ -326,6 +326,17 @@ const docTemplate = `{
"properties": { "properties": {
"name": { "name": {
"type": "string" "type": "string"
},
"parent_group": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
}
}
} }
} }
}, },

View File

@ -317,6 +317,17 @@
"properties": { "properties": {
"name": { "name": {
"type": "string" "type": "string"
},
"parent_group": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
}
}
} }
} }
}, },

View File

@ -96,6 +96,13 @@ definitions:
properties: properties:
name: name:
type: string type: string
parent_group:
properties:
name:
type: string
required:
- name
type: object
required: required:
- name - name
type: object type: object

View File

@ -14,7 +14,10 @@ type Runner struct {
} }
type Group struct { type Group struct {
Name string `json:"name" validate:"required"` Name string `json:"name" validate:"required"`
ParentGroup struct {
Name string `json:"name" validate:"required"`
} `json:"parent_group" validate:"optional"`
} }
type ContractTemplateOptions struct { type ContractTemplateOptions struct {

View File

@ -50,8 +50,12 @@
<p style="font-size: 0.6rem; text-align: center; margin: 0; padding: 0;">{{ .Code }}</p> <p style="font-size: 0.6rem; text-align: center; margin: 0; padding: 0;">{{ .Code }}</p>
</div> </div>
</div> </div>
{{ if ne .Runner.FirstName "" }}
<p>{{ .Runner.LastName }}, {{ .Runner.FirstName }} {{ .Runner.MiddleName }}</p> <p>{{ .Runner.LastName }}, {{ .Runner.FirstName }} {{ .Runner.MiddleName }}</p>
<p>{{ .Runner.Group.Name }}</p> <p>{{ if ne .Runner.Group.ParentGroup.Name "" -}}{{ .Runner.Group.ParentGroup.Name }}/{{end -}}{{ .Runner.Group.Name }}</p>
{{ else }}
<p>Kein Läufer zugewiesen</p>
{{ end}}
{{ end}} {{ end}}
</div> </div>
{{ end }} {{ end }}

View File

@ -49,8 +49,12 @@
<p style="font-size: 0.6rem; text-align: center; margin: 0; padding: 0;">{{ .Code }}</p> <p style="font-size: 0.6rem; text-align: center; margin: 0; padding: 0;">{{ .Code }}</p>
</div> </div>
</div> </div>
{{ if ne .Runner.FirstName ""}}
<p>{{ .Runner.LastName }}, {{ .Runner.FirstName }} {{ .Runner.MiddleName }}</p> <p>{{ .Runner.LastName }}, {{ .Runner.FirstName }} {{ .Runner.MiddleName }}</p>
<p>{{ .Runner.Group.Name }}</p> <p>{{ if ne .Runner.Group.ParentGroup.Name "" -}}{{ .Runner.Group.ParentGroup.Name }}/{{end -}}{{ .Runner.Group.Name }}</p>
{{ else }}
<p>Blank card</p>
{{ end}}
</div> </div>
{{ end }} {{ end }}
</div> </div>

View File

@ -65,7 +65,7 @@
<p style="font-size: x-small; display: block;">Nachname</p> <p style="font-size: x-small; display: block;">Nachname</p>
</div> </div>
<div class="column is-6"> <div class="column is-6">
<span style="border-bottom: 1px solid; width: 100%; display: block;">{{ .Group.Name }}</span> <span style="border-bottom: 1px solid; width: 100%; display: block;"><p>{{ if ne .Group.ParentGroup.Name "" -}}{{ .Group.ParentGroup.Name }}/{{end -}}{{ .Group.Name }}</p></span>
<p style="font-size: x-small; display: block;">Team/ Klasse</p> <p style="font-size: x-small; display: block;">Team/ Klasse</p>
</div> </div>
</div> </div>

View File

@ -64,7 +64,7 @@
<p style="font-size: x-small; display: block;">Last Name</p> <p style="font-size: x-small; display: block;">Last Name</p>
</div> </div>
<div class="column is-6"> <div class="column is-6">
<span style="border-bottom: 1px solid; width: 100%; display: block;">{{ .Group.Name}}</span> <span style="border-bottom: 1px solid; width: 100%; display: block;"><p>{{ if ne .Group.ParentGroup.Name "" -}}{{ .Group.ParentGroup.Name }}/{{end -}}{{ .Group.Name }}</p></span>
<p style="font-size: x-small; display: block;">Team/class</p> <p style="font-size: x-small; display: block;">Team/class</p>
</div> </div>
</div> </div>