Our pure JavaScript Scheduler component


Post by kirsten »

Hello again!

I’m seeing an issue in our scheduler pro implementation related to updating occurrences in recurring series. This happens if I update a single occurrence or "all future".

When I update an occurrence, the sync request succeeds. However, if I double click on the updated occurrence (which is no longer part of the same recurring series), nothing happens and the task edit popover does not open. (If I refresh the page, I can edit the event as expected.)

I am guessing this is related to updating the EventStore, though other updated events are working as expected. The sync request included an added event with a PhantomId, and the server is sending back that same PhantomId with the response (along with the id for the persisted record).

To debug the issue, I've been logging a “change” event in the EventStore to debug, and noticed that the “update” action that is logged post-sync has a different PhantomId from the PhantomId that is sent to the server, which could be related?

Here’s an example of what’s happening:

  1. I update an occurrence of a repeating event by dragging it an hour back or forward, then select “this only” or “all future” (doesn’t matter which)
  2. The sync request generated by updating the occurrence includes the following
    { PhantomId: "_generated:879a7aea-7180-4fa0-8c9a-0109e87f5f2c:2024-03-14" }
  3. The server sends back the PhantomId and the id for the newly-created record:
    { PhantomId: "_generated:879a7aea-7180-4fa0-8c9a-0109e87f5f2c:2024-03-14",
    id: "c680632d-1a87-4519-a0e3-c0cb06c89c97" }
  4. Then, I see an EventStore change with the “update” action, and the following changes:
     { id: {
        "value": "c680632d-1a87-4519-a0e3-c0cb06c89c97",
        "oldValue": "_generatedModelClass_73f07cbf-5b43-4ca9-a754-bd7567262e4b"
    } }

I'm not sure if the EventStore update change is relevant, but expected the oldValue to be the same as the PhantomId that was sent to/returned from the server.

I can work on making this reproducible - just thought I would reach out first to see if anyone had ideas on what might be causing this. I'm also happy to send more of the request / response payload - I just figured this was the most relevant.

Thanks!
Kirsten


Post by ghulam.ghous »

Hi Kirsten,

This does not look like an expected behaviour. Yes, in the update event, old value should be equal to the phantomId. You can use one of our demos and add your code to reproduce the issue. Please provide us with a test case, where we can run the code and reproduce the issue and assist you in a better way.

Regards,
Ghous


Post Reply