-
-
Notifications
You must be signed in to change notification settings - Fork 223
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Re-implement support for timed node visibility #4759
Comments
Thank you for being so diligent with the tickets and documentation, it helps soooo much <3 |
We discussed serveral different approches and concluded to start with a less inversive one.
Also we want to put the "Timable Node Visibility" feature in a dedicated package within the neos development collection. Other open topics:
|
As we don't keep anyting hidden anymore, I would change the naming of "hiddenBefore" and "hiddenAfter" to the more precisly:
WDYT? |
Good idea, a migration of existing Fusion code would be very helpful. |
I created a ticket for this: neos/rector#41 |
Prior to Neos 9 nodes had the internal properties
_hiddenBeforeDateTime
and_hiddenAfterDateTime
that allowed editors to schedule content (de)publications ahead of time.This approach has some severe caveats, especially in the more explicit event sourced world of Neos 9.0, mainly:
There are some more issues, but the two above were the main reason why we decided to leave this feature out.
However, it seems that this is a common requirement for people so these are the ideas we had to re-implement this feature:
A backend module that allows editor to explicitly schedule commands (for now
DisableNodeAggregate
andEnableNodeAggregate
) potentially with a custom view that allows to do that directly from the inspector.A cronjob then picks up these scheduled commands and executes them in time (if it turns out to be a requirement to have this without an actual cronjob, we could add an option that triggers this via HTTP middleware or similar – looking up scheduled commands would be a matter of a very simple SQL query)
This approach has some advantages:
initiatingUserId
metadata). Consequently all depending code (projections, catch up hooks, ...) don't have to deal with another concept and would "just work"The text was updated successfully, but these errors were encountered: