I can see use cases for this and have already found myself in the same situation.
There’s one massive thing that’s missing with Kirby for me its a demo of the backend. Sometimes you must show the backend in demo mode. With Kirby, you must install an instance locally or on a server before you can try anything.
Even on the GetKirby website. I don’t expect to have to download a CMS to test it. The “Try” Section should be able to let me try without having to install.
The opinion expressed above is not meant to be a rant and is only shared for discussion.
@bnomei, I’ve looked and never found a solution. What I ended up doing was create a copy of the website (and panel) that can be shared and I’d just give access to that one… Not ideal.
IMHO, demo mode is a bit different. In demo mode, you should probably be able to actually use the panel, only the stuff is not saved. But this is probably off-topic unless @bnomei’s use case is exactly that.
But I was asking for @bnomei’s specific use case (and how it relates to hooks) in order to find some sort of solution.
i created a frontend with registration and login. users can create content stored as page objects. this content is not public.
the panel can show everything that has been added by users.
the panel pages have custom sorting so content can be added on between.
101-contact
201-image-1
202-image-3
299-add-image-button
300-text-a
302-text-c (text b has been removed)
my customer wants to see what has beed added. i do not want him to press save in panel, because this would remove my custom sorting.
ah yes. like you said. the pages overview, where sorting by dragndrop is availabe. that should be blocked.
i do not care if the buttons are there or not actually. they just should not do anything.
so can i just stop the panel code before it updates/saves/creates? where would one do this?
to sum it up. for me it would be good enough if the panel is just cut of from creating/updateing content. the gui does not have to change.
this is temporary solution for a month. i can brief the client. i just do not want any accidents to happen.
As far as I can see, you would have to hack several panel files, the place to look at would be the controllers, e.g. lines 59 - 65 in /panel/app/controllers/pages.php to prevent saving of a page.