backend:
  name: git-gateway
  branch: main
  commit_messages:
    create: "Create {{collection}} “{{slug}}”"
    update: "Update {{collection}} “{{slug}}”"
    delete: "Delete {{collection}} “{{slug}}”"
    uploadMedia: "[skip ci] Upload “{{path}}”"
    deleteMedia: "[skip ci] Delete “{{path}}”"

local_backend: true

site_url: "https://confraternitaviniasolomontello.it"
logo_url: "https://confraternitaviniasolomontello.netlify.app/logo.svg"

locale: it

media_folder: "/public/assets"
public_folder: "/assets"

search: true

slug:
  encoding: unicode
  clean_accents: true
  sanitize_replacement: "-"

editor:
  preview: false

collections:
  - name: posts
    label: Articoli
    label_singular: Articolo
    description: "Articoli del sito. Appariranno in ordine cronologico inverso nella pagina delle notizie."
    folder: src/content/posts/
    extension: md
    create: true
    delete: true
    media_folder: "/public/assets/images"
    public_folder: "/assets/images"
    fields:
      - label: Titolo
        name: title
        widget: string
      - label: Data di pubblicazione
        name: date
        widget: datetime
        default: "{{now}}"
        date_format: YYYY-MM-DD
        hint: "Seleziona la data di pubblicazione da mostrare. È un'impostazione cosmetica, che non influisce sulla pubblicazione effettiva (che può essere posteriore alla data indicata)."
      - label: Categoria
        name: category
        widget: select
        options:
          - "Assemblee"
          - "Comunicazioni"
          - "Eventi"
          - "Notizie tecniche"
          - "Pubblicazioni"
          - "Varie"
        default: "Eventi"
        hint: "Categoria dell'articolo."
      - label: Immagine di copertina
        name: image
        widget: image
        required: false
        choose_url: false
        media_library:
          config:
            multiple: false
            max_file_size: 5000000 # 5MB
      - label: Documento allegato
        name: document
        widget: file
        choose_url: false
        media_library:
          config:
            multiple: false
            max_file_size: 5000000 # 5MB
        required: false
        hint: "Sono supportati tutti i principali formati di documento, ma prediligi il formato PDF."
      - label: Bozza
        name: draft
        widget: boolean
        default: false
        required: false
        hint: "Seleziona questa opzione per salvare l'articolo come bozza e non renderlo pubblico."
      - label: Contenuto
        name: body
        widget: markdown
      - label: Galleria
        name: gallery
        widget: image
        required: false
        choose_url: false
        media_library:
          config:
            multiple: true
            max_file_size: 5000000 # 5MB
    identifier_field: title
    slug: "{{date}}_{{title}}"
    summary: "{{title}}"
    sortable_fields:
      - title
      - date
    view_filters:
      - label: Pubblicati
        field: draft
        pattern: false
      - label: Bozze
        field: draft
        pattern: true
    view_groups:
      - label: "Categoria"
        field: "category"

  - name: trips
    label: Viaggi
    label_singular: Viaggio
    description: "Viaggi. Appariranno in ordine cronologico inverso nella pagina dei viaggi."
    folder: src/content/trips/
    extension: md
    create: true
    delete: true
    media_folder: "/public/assets/images"
    public_folder: "/assets/images"
    fields:
      - label: Destinazione
        name: destination
        widget: string
      - label: Anno
        name: year
        widget: number
        value_type: int
        min: 1988
        max: 2050
        step: 1
        hint: "Anno del viaggio."
      - label: Data di partenza
        name: startDate
        widget: datetime
        date_format: YYYY-MM-DD
        hint: "Data di partenza del viaggio."
        required: false
      - label: Data di ritorno
        name: endDate
        widget: datetime
        date_format: YYYY-MM-DD
        hint: "Data di ritorno del viaggio."
        required: false
      - label: Immagine di copertina
        name: image
        widget: image
        required: false
        choose_url: false
        media_library:
          config:
            multiple: false
            max_file_size: 5000000 # 5MB
      - label: Bozza
        name: draft
        widget: boolean
        default: false
        required: false
        hint: "Seleziona questa opzione per salvare il viaggio come bozza e non renderlo pubblico."
      - label: Contenuto
        name: body
        widget: markdown
      - label: Galleria
        name: gallery
        widget: image
        required: false
        choose_url: false
        media_library:
          config:
            multiple: true
            max_file_size: 5000000 # 5MB
    identifier_field: destination

  - name: members
    label: Persone
    label_singular: Persona
    description: "Persone coinvolte nell'associazione, inclusi i membri del Consiglio."
    folder: src/content/members/
    extension: md
    create: true
    delete: true
    media_folder: "/public/assets/portraits"
    public_folder: "/assets/portraits"
    fields:
      - label: Nome
        name: name
        widget: string
        pattern: [
          '[A-Z]{1}[a-z][^A-Z]*',
          "Usa la maiuscola iniziale."
        ]
      - label: Cognome
        name: surname
        widget: string
        pattern: [
          '[A-Z]{1}[a-z][^A-Z]*',
          "Usa la maiuscola iniziale."
        ]
      - label: Sesso
        name: sex
        widget: select
        options:
          - Maschio
          - Femmina
          - Altro
      - label: Tipo
        name: type
        widget: select
        options:
          - Socio
          - Socio fondatore
          - Socio onorario
        default: "Socio"
        multiple: false
      - label: Ruolo nel Capitolo
        name: roleChapter
        widget: select
        options:
          - Gran Maestro
          - Cancelliere
          - Tesoriere
          - Segretario
          - Cerimoniere
          - Membro ad honorem
        required: false
        multiple: false
        hint: "Per rimuovere il ruolo, usa la X."
      - label: Ruolo nel Collegio Sindacale
        name: roleBoard
        widget: select
        options:
          - Presidente del Collegio Sindacale
          - Sindaco
        required: false
        multiple: false
        hint: "Per rimuovere il ruolo, usa la X."
      - label: Ruolo nel Collegio dei Probiviri
        name: roleAuditors
        widget: select
        options:
          - Membro del Collegio dei Probiviri
        required: false
        multiple: false
        hint: "Per rimuovere il ruolo, usa la X."
      - label: Titolo
        name: jobTitle
        widget: string
        required: false
        hint: "Indicare qui titoli lavorativi o accademici, come 'Arch.', 'Dott.', 'Ing.', ecc. Verrà mostrato accanto al nome."
      - label: Anno di nomina
        name: electionYear
        widget: datetime
        date_format: YYYY-MM-DD
        required: false
        hint: "Anno in cui la persona è stata nominata nel ruolo indicato."
      - label: Ritratto
        name: image
        widget: image
        required: false
        choose_url: false
        media_library:
          config:
            multiple: false
            max_file_size: 5000000 # 5MB
        hint: "L'immagina sarà centrata. Per un risultato ottimale, carica un ritratto quadrato."
    slug: "{{surname}}-{{name}}"
    summary: "{{surname | upper}} {{name}}"
    sortable_fields:
      - surname
      - name
    view_filters:
      - label: Membri del Capitolo
        field: roleChapter
        pattern: '.+'
      - label: Membri del Collegio Sindacale
        field: roleBoard
        pattern: '.+'
      - label: Membri del Collegio dei Probiviri
        field: roleAuditors
        pattern: '.+'
    view_groups:
      - label: Tipo di socio
        field: type
      - label: Sesso
        field: sex

  - name: settings
    label: Impostazioni
    description: "Impostazioni del sito e dei contenuti."
    files:
      - label: Social network
        name: socials
        file: "src/content/socials/socials.yml"
        extension: yml
        fields:
          - label: Instagram
            name: instagram
            widget: string
            pattern: [
              '(http(s)?)\:\/\/(www)?[a-zA-Z0-9@:%._\+\/?&~#=]{2,256}',
              "Il formato del URL non è corretto."
            ]
          - label: Facebook
            name: facebook
            widget: string
            pattern: [
              '(http(s)?)\:\/\/(www)?[a-zA-Z0-9@:%._\+\/?&~#=]{2,256}',
              "Il formato del URL non è corretto."
            ]
