Panel doesn't update structure fields anymore

I have a huge problem with the panel right now: When I update a structure field in the content file, the content in the panel does not change. This is not good, because structure holds participants to an event, that have to be confirmed etc.

However it gets worse: When I save the page on the panel, everything is written back like it is displayed - i.e. I might have actually lost data every time I pressed save. I am at a complete loss right now - is there a secret panel cache or anything else I should try?

Edit: Updates to any non-structure field in the content file are immediately reflected in the panel.

I assume you have made sure that kirby/toolkit and the panel have been updated to the latest versions, i.e. 2.2.2?

I have indeed.

Kirby Information:
Toolkit Version: 2.2.2
Kirby Version: 2.2.2
Panel Version: 2.2.2

When did this problem occur? Right after updating to 2.2.2? Or did it work at first and the problem only occurred after a while? Do you use any plugins or other custom stuff? Do you get any error messages in the console or in the logs?

Probably right after the update. It was working fine before, and I just noticed today. I don’t know since when it is going on exactly.

I use some plugins: Hooks, an email provider, custom filters etc. Are those even loaded in the panel?

I also got the impression recently that things that were fixed in 2.2.1 do not work in 2.2.2 anymore, i.e. the problem with the checkboxes field. With the 2.2.2 testkit, however, the structure field seems to work fine.

Oh, I just saw you deleted your last post again, so it is not working with 2.2.1?

Edit: Plugins: I meant custom additions to the panel, Kirby stuff should not get loaded in the panel.

It did work in the sense that it updated the panel content once. But then never again :frowning: Might this be related to the session storage of unsaved changes?

I guess I’ll do a full downgrade to 2.2 now and hope for the best… 2.1 would be the last resort a huge mess to transfer all the data back from the user files to a page…

I have some custom fields: selector, markdown, … the typical stuff. I was using my own version of the structure field that I swapped out for the default implementation in the blueprint when I noticed the issues.

I think it really is: When I start a new incognito session, I get to see the current data from the file. Logging out and back in works as well.

i.e. the problem with the checkboxes field

Possibly related to this issue?

Any more info on that checkboxes bug? I’m not seeing an issue on GitHub, nor are my searches revealing much.

Yeah, I think we need to file an issue on GitHub, seems that the checkboxes problem is not in 2.2.1 but in 2.2.2. If you uncheck the checkboxes, the file is saved, but the original content is not overwritten.

I don’t think so. Everything but structure fields work fine.

Any news on that? Is anybody able to reproduce the issue?

  • Updating a structure field in the text file is not reflected in the panel
  • Logging out and back in / using a different browser / icognito session works to update the content

This is super annoying - I had to deactivate the panel to avoid further data loss and now people are sending angry emails because they can’t access their stuff anymore… Any help would be greatly appreciated!

No, I can’t reproduce this in any of my installations. Is there anything special about that structure field? Could you post your blueprint for testing? Have you tried to replace the panel folder with a fresh one?

I don’t think there is. The blueprint is quite big:

title: Lager / Ausflug
pages: false
files:
  sortable: true
fields:
  basics:
    label: Basics
    type: headline
  title:
    label: Titel
    type: text
    required: true
  beschreibung:
    label: Beschreibung
    type: markdown
    required: true
  start:
    label: Startdatum
    type: date
    required: true
    width: 1/2
  ende:
    label: Enddatum
    type: date
    width: 1/2
  gruppe:
    label: Jugendgruppe
    type: select
    options: query
    query: 
      page: jugendgruppen
      fetch: children
      value: '{{title}}'
      text: '{{title}}'
    help: Bitte nur angeben, wenn die Veranstaltung nur für (d)eine Gruppe ist.
  ab:
    label: Anmeldung
    type: headline
  anmeldung:
    type: toggle
    label: Ist eine Anmeldung für die Veranstaltung möglich / nötig?
    options: yes/no
  a:
    label: Organisatorisches
    type: headline
  preis:
    type: number
    label: Preis
    width: 1/2
  jlpreis:
    type: number
    label: Preis für Anwärter
    width: 1/2
  b: 
    type: info
    text: >
      Hier kannst Du Start und Ende des Anmeldezeitraumes festlegen. Das Anmeldeformular wird dann automatisch (de)aktiviert. Trägst du nichts ein, ist die Anmeldung unbegrenzt und ab sofort offen. 
  anmeldung_start:
    label: Start der Anmeldung
    type: date
    width: 1/2
  anmeldung_ende:
    label: Ende der Anmeldung
    type: date
    width: 1/2
  plaetze:
    label: Anzahl der Plätze
    type: number
    width: 1/4
  jlplaetze:
    label: Plätze für Jugendleiter
    type: number
    width: 1/4
  status:
    type: select
    label: Status
    options:
      ja: findet statt
      nein: abgesagt
      vorbei: vorbei
    default: ja
    width: 1/2
  p:
    type: headline
    label: Geld & Einverständniserklärungen
  einv-adresse:
    type: textarea
    size: medium
    label: Adresse, an die die Einverständniserklärung geschickt werden soll
  pdf:
    type: selector
    label: Einverständnis-PDF
    types: 
      - document
    help: Bitte links oben bei "Dateien" hochladen
  kto:
    type: text
    label: Kontoeigentümer
    width: 1/2
  bank:
    type: text
    label: Kreditinstitut
    width: 1/2
  bic:
    type: text
    label: BIC
    width: 1/2
  iban: 
    type: text
    label: IBAN
    width: 1/2
  e:
    type: headline
    label: Emails
  subject:
    type: text
    label: Betreff
  erfolgreich:
    type: markdown
    label: Erfolgreiche Anmeldung
  warteliste: 
    type: markdown
    label: Warteliste
  g:
    type: headline
    label: Gadget
  gadget:
    label: Gibt es ein Geschenk für die Teilnehmer?
    type: toggle
    text: yes/no
  gadget-name:
    label: Gadget-Name
    type: text
    width: 1/2
  gadget-sizes:
    label: Verfügbare Größen, kommasepariert
    type: tags
    width: 1/2
  t:
    type: headline
    label: Teilnehmer
  teilnehmer:
    label: Teilnehmerliste
    type: structure
    help: Bitte denke daran, alle Änderungen auch zu speichern!
    fields:
      vorname:
        label: Vorname
        type: text
        width: 1/2
      nachname:
        label: Nachname
        type: text
        width: 1/2
      status:
        label: Status
        type: select
        options:
          angemeldet: Angemeldet
          bezahlt: Bezahlt
          einv: Einverständniserklärung unterschrieben
          komplett: Bezahlt & unterschrieben
          liste: Auf der Warteliste
        width: 1/2
      typ:
        label: Typ
        type: select
        options:
          j: Jugendleiter
          t: Teilnehmer
          a: Anwärter
        width: 1/2
      strasse:
        label: Straße
        type: text
        width: 3/4
      hausnummer:
        label: Hausnummer
        type: text
        width: 1/4
      plz:
        label: PLZ
        type: number
        width: 1/4
      ort:
        label: Wohnort
        type: text
        width: 3/4
      telefon:
        label: Telefon
        type: text
      handy:
        label: Handy der Eltern
        type: text
      geb:
        label: Geburtstag
        type: date
      email:
        label: Email
        type: email
      veggie:
        label: Vegetarier
        type: select
        options:
          ja: Ja
          nein: Nein
      sonstiges:
        label: Sonstiges
        type: textarea
        size: medium
      gruppe:
        label: Jugendgruppe
        type: select
        options: query
        query: 
          page: jugendgruppen
          fetch: visibleChildren
          value: '{{title}}'
          text: '{{title}}'

The part causing problems is the huge teilnehmer structure at the bottom of the blueprint.

I have deleted and reuploaded the panel folder in all versions since 2.2 so often already, nothing works. Right now I’m back on 2.2.2.

Edit: Chrome 46 on Windows 10.

Do you mean live or not even after reloading?

Not even after reloading.

I just tested both the field and the complete blueprint in the testkit and it works fine, at least in my local environment which is on a Mac and Mamp.

I sent you a PM with more details about the page and a panel login. Would you mind checking the problem out on the live system?

Check your content files. Maybe switched to/from single/multilanguage?

The content files are fine. Updates to the structure field are just not reflected in the panel. The panel displays the structure content from the session storage rather than the content of the file.