/// <exclude /> public static void OnBeforeInitialize() { DataActionTokenResolverFacade.RegisterDefault <IPage>(ActionIdentifier.Add, f => new WorkflowActionToken(WorkflowFacade.GetWorkflowType("Composite.Plugins.Elements.ElementProviders.PageElementProvider.AddNewPageWorkflow")) { DoIgnoreEntityTokenLocking = true, Payload = SerializerHandlerFacade.Serialize(f) }); DataActionTokenResolverFacade.RegisterDefault <IPage>(ActionIdentifier.Edit, f => new WorkflowActionToken(WorkflowFacade.GetWorkflowType("Composite.Plugins.Elements.ElementProviders.PageElementProvider.EditPageWorkflow"))); DataActionTokenResolverFacade.RegisterDefault <IPage>(ActionIdentifier.Delete, f => new WorkflowActionToken(WorkflowFacade.GetWorkflowType("Composite.Plugins.Elements.ElementProviders.PageElementProvider.DeletePageWorkflow"))); }
private Guid?GetDefaultPageTypeId(ICollection <IPageType> selectablePageTypes) { if (!string.IsNullOrEmpty(Payload)) { return(((IPage)SerializerHandlerFacade.Deserialize(Payload)).PageTypeId); } if (!(this.EntityToken is PageElementProviderEntityToken)) { IPage parentPage = this.GetDataItemFromEntityToken <IPage>(); IPageType parentPageType = DataFacade.GetData <IPageType>().FirstOrDefault(f => f.Id == parentPage.PageTypeId); if (parentPageType != null && parentPageType.DefaultChildPageType != Guid.Empty) { if (selectablePageTypes.Any(f => f.Id == parentPageType.DefaultChildPageType)) { return(parentPageType.DefaultChildPageType); } } } return(selectablePageTypes.FirstOrDefault()?.Id); }