In our project we have a special pagetype that should only be used in very special cases. It is therefore requested that this pagetype is only available to a small set of users (a group of "special-editors"). I was hoping to find an access right property on the pagetype-settings, but couldn't find any. How can we set access restrictions on a pagetype?
You can't... That's a weakness I'm hoping EPiServer will fix in a future release. There are several customers who needs it.
You could easily replace this page with your own implementation (filter the list of page types based on the currently logged on user):
And you might want to hook up some events when pages are being created / loaded in the editor, and revalidate the page type against the logged on user etc.
Yup, you can do "everything" with EPiServer. That's why it so great to work with as a developer. But, my point was that this is a feature that should be a part of the default installation.
Just found out that there's a module on Epicode you can use for this :) Check it out at:
--Lars Øyvind Bodahlwww.epinova.no
I totally agree with you Lars, it should be a part of the product. The project on epicode looks ok, but it's not bulletproof :)
Page-type security alone will never be enough to solve all cases. Though it would have been nice to have in the product.
The available page types can actually differ on both user, role, location in tree, type of parent page and time of day (!). :-)
What I'd like to see is some sort of event, factory or override that lets us filter the list of available page types ourself. That - AND - page type security would be nice.
Steve - this is exactly what EPiCode.NewPage does (without adding pagetype security) but id does filter and group pagetypes, based on role and location in tree. Grouping is done by regexing the pagetypenames.
One thing you can do is to make a tab on Ordinary Page only aviable for the selected users. Then you can put a property that can select user controls on that tab.
This code is based on Itera.MultiProperty and I think you already have that based on comments
Of course you have to convert your page to a user control, and maybe add a master page selector on the tab too
Thomas, I know, the NewPage module is great! I was thinking about the part of the discussion that was about having this as a standard part of the product.