generated from cms/tibi-docs
447 lines
12 KiB
YAML
447 lines
12 KiB
YAML
name: page
|
|
uploadPath: ../media/page
|
|
|
|
meta:
|
|
label: Inhalt
|
|
muiIcon: tableOfContents
|
|
allowExportAll: true
|
|
backup:
|
|
active: true
|
|
collectionName: backups
|
|
defaultSort:
|
|
field: sort
|
|
order: MANUALLY
|
|
views:
|
|
- type: simpleList
|
|
selectionPriority: 0
|
|
primaryText: pageTitle
|
|
secondaryText: path
|
|
mediaQuery: "(min-width: 0px)"
|
|
tertiaryText: type
|
|
- type: table
|
|
selectionPriority: 1
|
|
mediaQuery: "(min-width: 700px)"
|
|
columns:
|
|
- source: type
|
|
name: Typ
|
|
filter: true
|
|
- source: path
|
|
name: Pfad
|
|
filter: true
|
|
- source: pageTitle
|
|
name: Titel
|
|
filter: true
|
|
- source: active
|
|
name: Aktiv
|
|
filter: true
|
|
|
|
tablist:
|
|
activeTab: general
|
|
|
|
tabs:
|
|
- name: general
|
|
label: Allgemein
|
|
subFields:
|
|
- source: path
|
|
- source: pageTitle
|
|
- source: type
|
|
- source: active
|
|
- source: sort
|
|
|
|
- name: teaser
|
|
label: Homepage Seitenteaser
|
|
subFields:
|
|
- source: teaser
|
|
|
|
- name: personPreview
|
|
label: Personenvorschau
|
|
subFields:
|
|
- source: personType
|
|
- source: personPreview
|
|
|
|
- name: jobOffer
|
|
label: Job Angebot
|
|
subFields:
|
|
- source: jobOffer
|
|
|
|
- name: site
|
|
label: Seite
|
|
subFields:
|
|
- source: rows
|
|
|
|
- name: meta
|
|
label: Meta
|
|
subFields:
|
|
- source: meta
|
|
|
|
subNavigation:
|
|
- name: seite
|
|
label:
|
|
de: Seiten
|
|
en: pages
|
|
muiIcon: book-open-page-variant
|
|
defaultSort:
|
|
field: "sort"
|
|
order: "MANUALLY"
|
|
setDefault:
|
|
field: type
|
|
value: page
|
|
|
|
views:
|
|
- type: table
|
|
columns:
|
|
- source: path
|
|
name: Pfad
|
|
filter: true
|
|
- source: pageTitle
|
|
name: Titel
|
|
filter: true
|
|
- source: active
|
|
name: Aktiv
|
|
filter: true
|
|
|
|
filter:
|
|
type: page
|
|
|
|
- name: teamMembers
|
|
label:
|
|
de: Teammitglieder
|
|
en: Team members
|
|
muiIcon: accountGroup
|
|
setDefault:
|
|
field: type
|
|
value: teamMembers
|
|
defaultSort:
|
|
field: "sort"
|
|
order: "MANUALLY"
|
|
views:
|
|
- type: table
|
|
columns:
|
|
- source: path
|
|
name: Pfad
|
|
fiter: true
|
|
- source: personType
|
|
name: Typ
|
|
filter: true
|
|
- source: pageTitle
|
|
name: Titel
|
|
filter: true
|
|
- source: active
|
|
name: Aktiv
|
|
filter: true
|
|
filter:
|
|
type: teamMembers
|
|
|
|
- name: jobOffers
|
|
label:
|
|
de: Stellenanzeigen
|
|
en: Job offers
|
|
muiIcon: briefcase
|
|
setDefault:
|
|
field: type
|
|
value: jobOffers
|
|
defaultSort:
|
|
field: "sort"
|
|
order: "MANUALLY"
|
|
views:
|
|
- type: table
|
|
columns:
|
|
- source: path
|
|
name: Pfad
|
|
filter: true
|
|
- source: pageTitle
|
|
name: Titel
|
|
filter: true
|
|
- source: active
|
|
name: Aktiv
|
|
filter: true
|
|
|
|
filter:
|
|
type: jobOffers
|
|
|
|
imageFilter:
|
|
xs:
|
|
- fit: true
|
|
height: 90
|
|
width: 90
|
|
resampling: lanczos
|
|
quality: 60
|
|
s:
|
|
- fit: true
|
|
height: 300
|
|
width: 300
|
|
resampling: lanczos
|
|
quality: 60
|
|
m:
|
|
- fit: true
|
|
height: 600
|
|
width: 600
|
|
resampling: lanczos
|
|
quality: 60
|
|
l:
|
|
- fit: true
|
|
height: 1240
|
|
width: 1240
|
|
resampling: lanczos
|
|
quality: 60
|
|
xl:
|
|
- fit: true
|
|
height: 2000
|
|
width: 2000
|
|
resampling: lanczos
|
|
quality: 60
|
|
|
|
permissions:
|
|
public:
|
|
methods:
|
|
get: true
|
|
post: false
|
|
put: false
|
|
delete: false
|
|
user:
|
|
methods:
|
|
get: true
|
|
post: true
|
|
put: true
|
|
delete: true
|
|
|
|
hooks:
|
|
post:
|
|
return:
|
|
type: javascript
|
|
file: hooks/clear_cache.js
|
|
put:
|
|
return:
|
|
type: javascript
|
|
file: hooks/clear_cache.js
|
|
|
|
projections:
|
|
navigation:
|
|
select:
|
|
path: 1
|
|
|
|
fields:
|
|
- type: string
|
|
name: path
|
|
meta:
|
|
label: Pfad
|
|
helperText: "Ein Pfad sollte mit einem / starten und ohne eins enden."
|
|
containerProps:
|
|
layout:
|
|
size:
|
|
default: "col-6"
|
|
small: "col-12"
|
|
large: "col-6"
|
|
|
|
- type: boolean
|
|
name: active
|
|
meta:
|
|
label: Aktiv
|
|
helperText: Ist dies Aktiviert, so wird die Seite verfügbar.
|
|
defaultValue: true
|
|
containerProps:
|
|
layout:
|
|
size:
|
|
default: "col-6"
|
|
small: "col-12"
|
|
large: "col-6"
|
|
|
|
- type: string
|
|
name: type
|
|
meta:
|
|
label: Inhaltstyp
|
|
widget: select
|
|
defaultValue: page
|
|
containerProps:
|
|
layout:
|
|
size:
|
|
default: "col-6"
|
|
small: "col-12"
|
|
large: "col-6"
|
|
choices:
|
|
- name: Seite
|
|
id: page
|
|
|
|
- name: Teammitglieder
|
|
id: teamMembers
|
|
|
|
- name: Stellenanzeigen
|
|
id: jobOffers
|
|
|
|
- name: pageTitle
|
|
type: string
|
|
meta:
|
|
label: Titel der Seite
|
|
helperText: "Dieser Titel wird in der Seite als h1 angezeigt."
|
|
containerProps:
|
|
layout:
|
|
size:
|
|
default: "col-6"
|
|
small: "col-12"
|
|
large: "col-6"
|
|
|
|
- name: personType
|
|
type: string
|
|
meta:
|
|
label: Typ
|
|
widget: select
|
|
defaultValue: chef
|
|
dependsOn:
|
|
eval: $.type == "teamMembers"
|
|
|
|
choices:
|
|
- name: Chef
|
|
id: chef
|
|
|
|
- name: Mitarbeiter
|
|
id: employee
|
|
|
|
- name: personPreview
|
|
type: object
|
|
meta:
|
|
label: Personenvorschau
|
|
dependsOn:
|
|
eval: $.type == "teamMembers"
|
|
subFields:
|
|
- name: initialImage
|
|
type: string
|
|
meta:
|
|
label: Bild
|
|
containerProps:
|
|
layout:
|
|
size:
|
|
default: "col-6"
|
|
small: "col-12"
|
|
large: "col-6"
|
|
dependsOn:
|
|
eval: $.personType == 'chef'
|
|
widget: foreignKey # Verwendetes Widget.
|
|
foreign:
|
|
collection: medialib # Name der Sammlung, in der die ausgewählten Daten gespeichert sind.
|
|
id: id # Feldname, das als eindeutige Kennung für die ausgewählten Daten verwendet wird.
|
|
subNavigation: 0 # Bestimmt, welche Navigation für die Auswahl der ausgewählten Daten angezeigt wird.
|
|
#projection: xyz
|
|
#sort: "title"
|
|
render:
|
|
defaultCollectionViews: true
|
|
|
|
- name: hoverImage
|
|
type: string
|
|
meta:
|
|
label: Bild beim Hover
|
|
containerProps:
|
|
layout:
|
|
size:
|
|
default: "col-6"
|
|
small: "col-12"
|
|
large: "col-6"
|
|
dependsOn:
|
|
eval: $.personType == 'chef'
|
|
widget: foreignKey # Verwendetes Widget.
|
|
foreign:
|
|
collection: medialib # Name der Sammlung, in der die ausgewählten Daten gespeichert sind.
|
|
id: id # Feldname, das als eindeutige Kennung für die ausgewählten Daten verwendet wird.
|
|
subNavigation: 0 # Bestimmt, welche Navigation für die Auswahl der ausgewählten Daten angezeigt wird.
|
|
#projection: xyz
|
|
#sort: "title"
|
|
render:
|
|
defaultCollectionViews: true
|
|
|
|
- name: name
|
|
type: string
|
|
meta:
|
|
label: Name
|
|
|
|
- !include fields/teaserHomepage.yml
|
|
|
|
- name: jobOffer
|
|
type: object
|
|
meta:
|
|
label: Job Angebot
|
|
dependsOn:
|
|
eval: $.type == "jobOffers"
|
|
subFields:
|
|
- name: title
|
|
type: string
|
|
meta:
|
|
label: Titel
|
|
|
|
- name: text
|
|
type: string
|
|
meta:
|
|
widget: richtext
|
|
label: Text
|
|
|
|
- name: emailButton
|
|
type: boolean
|
|
meta:
|
|
label: E-Mail Button Anzeigen
|
|
|
|
- name: emailSubject
|
|
type: string
|
|
meta:
|
|
label: E-Mail Betreff
|
|
dependsOn:
|
|
eval: $parent.emailButton == true
|
|
|
|
- name: rows
|
|
type: object[]
|
|
meta:
|
|
label: Zeilen
|
|
widget: grid
|
|
dependsOn:
|
|
eval: $.type != "jobOffers" && ($.type != "teamMembers" || $.personType == "chef")
|
|
metaElements:
|
|
- source: backgroundImage
|
|
- source: noBottomMargin
|
|
- source: noTopMargin
|
|
- source: flexWrapNormal
|
|
- source: twoToThree
|
|
- source: nextPage
|
|
|
|
subFields: !include fieldLists/row.yml
|
|
|
|
- name: meta
|
|
type: object
|
|
meta:
|
|
label: Meta Agaben
|
|
dependsOn:
|
|
eval: $.type == "page"
|
|
subFields:
|
|
- name: title
|
|
type: string
|
|
meta:
|
|
label: Titel
|
|
containerProps:
|
|
layout:
|
|
size:
|
|
default: "col-6"
|
|
small: "col-12"
|
|
large: "col-6"
|
|
|
|
- name: description
|
|
type: string
|
|
meta:
|
|
label: Beschreibung
|
|
containerProps:
|
|
layout:
|
|
size:
|
|
default: "col-6"
|
|
small: "col-12"
|
|
large: "col-6"
|
|
- name: keywords
|
|
type: string
|
|
meta:
|
|
label: Schlüsselwörter
|
|
- name: sort
|
|
type: number
|
|
meta:
|
|
label:
|
|
de: Manuelle Sortierung
|
|
en: Manual Sorting
|
|
inputProps:
|
|
{ readonly: true, placeholder: { de: "Wert wird automatisch gesetzt", en: "Value is set automatically" } }
|
|
helperText:
|
|
de: Dieses Feld wird für die manuelle Sortierung benötigt. Sobald ein Eintrag per Drag&Drop verschoben wurde, wird die neue Position innerhalb der Liste eingetragen.
|
|
en: This field is required for manual sorting. As soon as an entry is moved using Drag&Drop, the new position is entered in the list.
|