Click or drag to resize

IPageCreationRule Interface


Defines the criteria for creating a new Page, including Schema, location, and limitations on Groups and Users.

Page creation rules provide a controlled way to create pages; their main purpose is to enforce restrictions on page creation for nonadministrative users.

Because they provide ways to limit page creation locations, they can also be a used as shortcuts for creating pages quickly.

In addition, page creation rules can add newly created pages directly into workflows.

Namespace:  Ingeniux.CMS
Assembly:  Ingeniux.CMS.CSAPI (in Ingeniux.CMS.CSAPI.dll) Version: 10.6.308
Syntax
public interface IPageCreationRule : IEntity<IPageCreationRulesManager>, 
	IEntity, IEntityEvents

The IPageCreationRule type exposes the following members.

Properties
  NameDescription
Public propertyArchived
Gets/sets the archived value of this entity
(Inherited from IEntity.)
Public propertyAutoSelectParent
Gets and sets whether this page creation rule allows the currently selected Page to be used as a parent page for page creation. This property doesn't serve any purpose on the API level. It provides a suggestive value in the user interface layer.
Public propertyCreated
Gets the entity's creation date.
(Inherited from IEntity.)
Public propertyCreationUser
Gets the ID of the User who created this entity.
(Inherited from IEntity.)
Public propertyDescription
Gets and sets the description of the PCR
Public propertyIsDefault
Gets and sets whether this page creation rule is the default rule when more than one PCR is allowed for a given Group.
Public propertyLastModified
Gets the date when the entity was most recently modified.
(Inherited from IEntity.)
Public propertyLastModifiedUser
Gets the ID of the User who lasted edited the entity.
(Inherited from IEntity.)
Public propertyManager
Gets the manager that retrieved this entity instance.
(Inherited from IEntityTManager.)
Public propertySchema
Gets and sets the Schema that used to create Pages.
Public propertySession
Gets the session that retrieved this entity. An entity is always session-specific.
(Inherited from IEntity.)
Public propertySessionId
Gets the unique ID of the session that retrieved this entity.
(Inherited from IEntity.)
Public propertyStyleSheet
Gets and sets the overriding XSLT style sheet for this page creation rule.
Public propertyWorkFlowDefinition
Gets and sets the Workflow Definition to which this page creation rule is connected. Pages created via this page creation rule are automatically added to the specified Workflow.
Top
Methods
  NameDescription
Public methodAddGroup
Adds a new Group to the allowed groups that can use this page creation rule.
Public methodAddUser
Adds a new User to the list of users explicitly allowed to use this page creation rule.
Public methodAllowPageCreation
Checks whether the specified User is allowed to use this page creation rulee to create Pages.
Public methodClearUsersAndGroups
Removes all users and groups that are allowed to use this page creation rule to create pages. This renders the page creation rule unusable.
Public methodFirstAccessibleParentPage
Retrieves the first parent Page under which this page creation rule can be used to create pages and to which the current User has Full Access.
Public methodGetParentAccess
Returns whether the page contains a user or group that has FULL_ACCESS to a parent page/>
Public methodGroups
Retrieves the collection of Groups that are allowed to use this page creation rule to create Pages.
Public methodGroupsCount
Gets the count of allowed Groups.
Public methodIsGroupAllowed(String)
Returns if the passed in group ID is allowed to use the current
Public methodIsGroupAllowed(IUserGroup)
Returns if the passed in IUserGroup is allowed to use the current
Public methodIsUserAllowed(String)
Returns if the passed in user ID is allowed to use the current
Public methodIsUserAllowed(IUser)
Returns if the passed in IUser is allowed to use the current
Public methodParentPages
Retrieves the collection of parent Pages under which the page creation rule is allowed to create pages.
Public methodParentPagesCount
Gets the count of parent page entries for this page creation rule.
Public methodRemoveGroup
Removes a Group from the list of group explicitly allowed to use this page creation rule.
Public methodRemoveParentPage
Removes a parent Page from the parent pages collection
Public methodRemoveUser
Removes a User from the list of users explicitly allowed to use this page creation rule.
Public methodSetParentPage
Sets a Page as parent page of this page creation rule.
Public methodTouch
Updated the entity's LastModified value to the current time.
(Inherited from IEntity.)
Public methodUnassociateWorkflowDefinition
Removes the Workflow Definition from this page creation rule.
Public methodUsers
Retrieves the collection of explicitly defined Users that can use this page creation rule to create Pages.
Public methodUsersCount
Gets the count of explicitly allowed Users.
Public methodValidateData
Validates this entity's data. Implemented by concrete inheriting types.
(Inherited from IEntity.)
Public methodValidateUserPermission
Validates the user permission on the current entity. Implemented by concrete inheriting types. It is called automatically upon saving an entity.
(Inherited from IEntity.)
Top
Events
  NameDescription
Public eventAfterEntitySave
This event is fired after a Entity object is saved.
(Inherited from IEntityEvents.)
Public eventBeforeEntitySave
This event is fired before any Entity object is about to be saved.
(Inherited from IEntityEvents.)
Top
Remarks

Page creation rule instances are managed by PageCreationRulesManager.

Examples
Example of serialization output:
XML
<PageCreationRule Name="Create an Event" ID="PageCreationRules/232" Icon="16" IsDefault="false" Schema="Event Detail" StyleSheetFileName="default.xsl" wfid="">
  <Users>
    <User ID="ingeniux\admin1"/>
    <User ID="ingeniux\author2"/>
  </Users>
  <Groups>
    <Group ID="UserGroups/234"/>
    <Group ID="UserGroups/42"/>
    <Group ID="UserGroups/1"/>
  </Groups>
</PageCreationRule>
See Also