###############################################################
# Content Blöcke
###############################################################

# Name/URL-Anteil der Kollektion
name: external
uploadPath: ../media/external

# Metaangaben zur Kollektion welche in der Admin-UI verwendet werden können
meta:
    # Navigationseintrag in der Admin-UI
    label: { de: "Extern", en: "External" }
    # Icon (Material UI) für den Navigationseintrag
    muiIcon: download
    # Identifizierung eines Eintrags für z.B. Select-Boxen in der Admin-UI
    rowIdentTpl: { twig: "{{ path }}" }
    # Standardsortierung der Liste
    defaultSort: { field: "file", order: "ASC" }
    # Admin-Backend Ansichten
    defaultImageFilter: s
    views:
        # Mobile Darstellung
        - type: simpleList
          mediaQuery: "(max-width:599px)"
          primaryText: path
          columns:
              - date
              - title
              - source: file
                type: file
        # Desktop
        - type: table
          mediaQuery: "(min-width:600px)"
          columns:
              - date
              - title
              - source: file
                type: file

imageFilter:
    xs:
        - fit: true
          height: 90
          width: 90
          resampling: "lancos"
          quality: 60
    s:
        - fit: true
          height: 300
          width: 300
          resampling: "lancos"
          quality: 60
    m:
        - fit: true
          height: 600
          width: 600
          resampling: "lancos"
          quality: 60
    l:
        - fit: true
          height: 1200
          width: 1200
          resampling: "lancos"
          quality: 60
    xl:
        - fit: true
          height: 2000
          width: 2000
          resampling: "lancos"
          quality: 60

# Zugriff auf diese Kollektion
permissions:
    # öffentlicher Zugriff
    public:
        methods:
            # Liste und Einzeleinträge lesen
            get: true
            # neuen Eintrag anlegen
            post: false
            # Eintrag editieren
            put: false
            # Eintrag löschen
            delete: false
    # zum Projekt zugeordneter Benutzer ohne Zusatzberechtigungen
    user:
        methods:
            get: true
            post: true
            put: true
            delete: true

hooks:
    post:
        return:
            type: javascript
            file: hooks/content/post_return.js
    put:
        return:
            type: javascript
            file: hooks/content/put_return.js
    delete:
        return:
            type: javascript
            file: hooks/content/delete_return.js

# Feldliste der Kollektion
fields:
    - name: date
      type: string
      meta:
          filter: true
          widget: date
          inputProps:
              type: "datetime-local"
          label:
              de: Datum
              en: Date
          helperText:
              de: "Dieses Feld wird nur zur Filterung innerhalb vom Tibi-CMS verwendet."
              en: "This field is only used for filtering within Tibi-CMS."
    - name: title
      type: string
      meta:
          filter: true
          label: { de: "Titel", en: "Title" }
          helperText:
              de: "Dieses Feld wird nur zur Filterung innerhalb vom Tibi-CMS verwendet."
              en: "This field is only used for filtering within Tibi-CMS."
    - name: file
      type: file
      meta:
          masterDomain: "http://localhost:3002"
          widget: image
          label: { de: "Datei", en: "File" }
          externalUrl: true
