private static ElementAction CreateFunctionTesterAction(string functionName = "") { WorkflowActionToken actionToken = new WorkflowActionToken(WorkflowFacade.GetWorkflowType("Composite.Workflows.Plugins.Elements.ElementProviders.AllFunctionsElementProvider.FunctionTesterWorkflow")) { Payload = functionName }; return(new ElementAction(new ActionHandle(actionToken)) { VisualData = new ActionVisualizedData { Label = StringResourceSystemFacade.GetString("Composite.Plugins.AllFunctionsElementProvider", "AllFunctionsElementProvider.FunctionTester.Label"), ToolTip = StringResourceSystemFacade.GetString("Composite.Plugins.AllFunctionsElementProvider", "AllFunctionsElementProvider.FunctionTester.ToolTip"), Icon = TestFunctionIcon, Disabled = false, ActionLocation = new ActionLocation { ActionType = ActionType.Other, IsInFolder = false, IsInToolbar = true, ActionGroup = PrimaryActionGroup } } }); }
public override void OnFinish(object sender, EventArgs e) { var folderToken = (FormFolderEntityToken)EntityToken; var stepName = GetBinding <string>("StepName"); var formName = GetBinding <string>("FormName"); var wizard = DynamicWizardsFacade.GetWizard(folderToken.FormName); var step = new WizardStepModel { Name = stepName, FormName = formName, Label = stepName, LocalOrdering = wizard.Model.Steps.Count + 1 }; wizard.Model.Steps.Add(step); DynamicWizardsFacade.SaveWizard(wizard); var wizardStepToken = new FormWizardStepEntityToken(wizard.Name, step.Name); var workflowToken = new WorkflowActionToken(typeof(EditWizardStepWorkflow)); CreateAddNewTreeRefresher(EntityToken).PostRefreshMessages(wizardStepToken); ExecuteAction(wizardStepToken, workflowToken); }
public override void OnFinish(object sender, EventArgs e) { var folderToken = (FormFolderEntityToken)EntityToken; var fieldName = GetBinding <string>("FieldName"); var addFieldToRenderingLayout = GetBinding <bool>("AddFieldToRenderingLayout"); var definition = DynamicFormsFacade.GetFormByName(folderToken.FormName); var field = new FormFieldModel(definition.Model, fieldName, typeof(string), new List <Attribute>()); var elementType = Type.GetType(GetBinding <string>("InputElementType")); var inputTypeAttribute = (InputElementTypeAttribute)Activator.CreateInstance(elementType); field.Attributes.Add(inputTypeAttribute); definition.Model.Fields.Add(field); DynamicFormsFacade.SaveForm(definition); if (RenderingLayoutFacade.HasCustomRenderingLayout(folderToken.FormName) && addFieldToRenderingLayout) { var layut = RenderingLayoutFacade.GetRenderingLayout(folderToken.FormName); layut.Body.Add(new XElement(Namespaces.Xhtml + "p", String.Format("%{0}%", fieldName))); RenderingLayoutFacade.SaveRenderingLayout(folderToken.FormName, layut); } var fieldToken = new FormFieldEntityToken(folderToken.FormName, fieldName); var workflowToken = new WorkflowActionToken(typeof(EditFormFieldWorkflow)); CreateAddNewTreeRefresher(EntityToken).PostRefreshMessages(fieldToken); ExecuteAction(fieldToken, workflowToken); }
private void initializeCodeActivity_ExecuteCode(object sender, EventArgs e) { UpdateTreeRefresher updateTreeRefresher = this.CreateUpdateTreeRefresher(this.EntityToken); WorkflowActionToken workflowActionToken = (WorkflowActionToken)this.ActionToken; string folderPath = null; if (this.EntityToken is WebsiteFileElementProviderRootEntityToken) { folderPath = ""; } else { WebsiteFileElementProviderEntityToken entityToken = (WebsiteFileElementProviderEntityToken)this.EntityToken; folderPath = entityToken.Path; } string keyName = workflowActionToken.Payload; string relativeFolderPath = IFolderWhiteListExtensions.GetTildePath(folderPath); if (!DataFacade.GetData <IFolderWhiteList>().Any(f => f.TildeBasedPath == relativeFolderPath && f.KeyName == keyName)) { IFolderWhiteList folderWhiteList = DataFacade.BuildNew <IFolderWhiteList>(); folderWhiteList.KeyName = keyName; folderWhiteList.TildeBasedPath = IFolderWhiteListExtensions.GetTildePath(folderPath); DataFacade.AddNew(folderWhiteList); } updateTreeRefresher.PostRefreshMesseges(this.EntityToken); }
public override void OnFinish(object sender, EventArgs e) { var token = (FormFolderEntityToken)EntityToken; var name = GetBinding <string>("Name"); var type = GetBinding <string>("SubmitHandlerType"); var definition = DefinitionsFacade.GetDefinition(token.FormName); var handlerType = Type.GetType(type); var instance = (FormSubmitHandler)Activator.CreateInstance(handlerType); instance.Name = name; definition.SubmitHandlers.Add(instance); DefinitionsFacade.Save(definition); CreateSpecificTreeRefresher().PostRefreshMessages(token); var editWorkFlowAttribute = handlerType.GetCustomAttribute <EditWorkflowAttribute>(); if (editWorkFlowAttribute != null) { var workflowToken = new WorkflowActionToken(editWorkFlowAttribute.EditWorkflowType); ExecuteAction(new FormSubmitHandlerEntityToken(handlerType, token.FormName, name), workflowToken); } }
public void AddActions(Element element) { if (element.Actions.Any(a => a.TagValue == "edit")) { return; } var resourceWriter = ResourceFacade.GetResourceWriter(UserSettings.ActiveLocaleCultureInfo); if (resourceWriter == null) { return; } var editFormActionToken = new WorkflowActionToken(typeof(EditFormSettingsWorkflow)); element.AddAction(new ElementAction(new ActionHandle(editFormActionToken)) { TagValue = "edit", VisualData = new ActionVisualizedData { Label = "Edit", ToolTip = "Edit", Icon = new ResourceHandle("Composite.Icons", "generated-type-data-edit"), ActionLocation = ActionLocation } }); }
public static IHtmlString RenderEditLink(this HtmlHelper helper, IPageTeaser teaser, string label) { if (DataScopeManager.CurrentDataScope != DataScopeIdentifier.Administrated) { return(helper.Raw(String.Empty)); } var editWorkflowAttribute = teaser.DataSourceId.InterfaceType.GetCustomAttributes(true).OfType <EditWorkflowAttribute>().FirstOrDefault(); if (editWorkflowAttribute == null) { return(helper.Raw(String.Empty)); } var page = PageManager.GetPageById(teaser.PageId); var entityToken = new PageTeaserInstanceEntityToken(page, teaser); var serializedEntityToken = EntityTokenSerializer.Serialize(entityToken, true); var editActionToken = new WorkflowActionToken(editWorkflowAttribute.EditWorkflowType); var serializedActionToken = ActionTokenSerializer.Serialize(editActionToken, true); var html = String.Format("<a href=\"#\" data-providername=\"{0}\" data-entitytoken=\"{1}\" data-actiontoken=\"{2}\" data-piggybag=\"{3}\" data-piggybaghash=\"{4}\" onclick=\"executeAction(this)\">{5}</a>", teaser.DataSourceId.ProviderName, serializedEntityToken, serializedActionToken, String.Empty, HashSigner.GetSignedHash(string.Empty).Serialize(), label); return(helper.Raw(html)); }
public IEnumerable <ElementAction> Provide(EntityToken entityToken) { var addFormActionToken = new WorkflowActionToken(typeof(AddFormWorkflow), new[] { PermissionType.Add }); yield return(new ElementAction(new ActionHandle(addFormActionToken)) { VisualData = new ActionVisualizedData { Label = "Add form", ToolTip = "Add form", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-edit"), ActionLocation = ActionLocation } }); var addWizardActionToken = new WorkflowActionToken(typeof(AddFormWizardWorkflow), new[] { PermissionType.Add }); yield return(new ElementAction(new ActionHandle(addWizardActionToken)) { VisualData = new ActionVisualizedData { Label = "Add wizard", ToolTip = "Add wizard", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-edit"), ActionLocation = ActionLocation } }); }
public override void OnFinish(object sender, EventArgs e) { var token = (FieldValidatorsEntityToken)EntityToken; var definition = DynamicFormsFacade.GetFormByName(token.FormName); var field = definition.Model.Fields.Get(token.FieldName); var validatorType = Type.GetType(GetBinding <string>("ValidatorType")); var message = GetBinding <string>("Message"); var attribute = (FormValidationAttribute)Activator.CreateInstance(validatorType, message); field.Attributes.Add(attribute); DynamicFormsFacade.SaveForm(definition); using (var writer = ResourceFacade.GetResourceWriter()) { var setting = token.FieldName + ".Validation." + attribute.GetType().Name; var key = Localization.GenerateKey(token.FormName, setting); writer.AddResource(key, message); } var editToken = new FieldValidatorsEntityToken(token.FormName, token.FieldName, validatorType); var workflowToken = new WorkflowActionToken(typeof(EditFieldValidatorWorkflow)); CreateSpecificTreeRefresher().PostRefreshMessages(EntityToken); ExecuteAction(editToken, workflowToken); }
public IEnumerable <Element> Provide(ElementProviderContext context, EntityToken token) { var validatorToken = (FieldValidatorsEntityToken)token; var form = DynamicFormsFacade.GetFormByName(validatorToken.FormName); if (String.IsNullOrEmpty(validatorToken.Type)) { if (form != null) { var field = form.Model.Fields.Get(validatorToken.FieldName); if (field != null) { foreach (var validator in field.ValidationAttributes) { var validatorType = validator.GetType(); var fieldValidatorElementHandle = context.CreateElementHandle(new FieldValidatorsEntityToken(form.Name, field.Name, validator.GetType())); var fieldValidatorElement = new Element(fieldValidatorElementHandle) { VisualData = new ElementVisualizedData { Label = validator.AttributeName(), ToolTip = validator.AttributeName(), HasChildren = false, Icon = ResourceHandle.BuildIconFromDefaultProvider("localization-element-closed-root"), OpenedIcon = ResourceHandle.BuildIconFromDefaultProvider("localization-element-opened-root") } }; var editActionToken = new WorkflowActionToken(typeof(EditFieldValidatorWorkflow)); fieldValidatorElement.AddAction(new ElementAction(new ActionHandle(editActionToken)) { VisualData = new ActionVisualizedData { Label = "Edit", ToolTip = "Edit", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-edit"), ActionLocation = ActionLocation } }); var deleteActionToken = new ConfirmWorkflowActionToken("Delete: " + validator.AttributeName(), typeof(DeleteFieldValidatorActionToken)); fieldValidatorElement.AddAction(new ElementAction(new ActionHandle(deleteActionToken)) { VisualData = new ActionVisualizedData { Label = "Delete", ToolTip = "Delete", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-delete"), ActionLocation = ActionLocation } }); yield return(fieldValidatorElement); } } } } }
/// <exclude /> public static FlowToken ExecuteSecurityViolation(ActionToken actionToken, EntityToken entityToken, FlowControllerServicesContainer flowControllerServicesContainer) { EntityToken newEntityToken = new SecurityViolationWorkflowEntityToken(); WorkflowActionToken newActionToken = new WorkflowActionToken(WorkflowFacade.GetWorkflowType("Composite.C1Console.Actions.Workflows.SecurityViolationWorkflow")); return(Execute(newEntityToken, newActionToken, flowControllerServicesContainer)); }
protected void Page_Load(object sender, EventArgs e) { if (!UserValidationFacade.IsLoggedIn()) { Response.Redirect("/Composite/Login.aspx?ReturnUrl=" + Request.Url.PathAndQuery); return; } ScriptLoader.Render("sub"); rptCountryList.DataSource = DataFacade.GetData <Country>().Take(10) .ToArray() .Select(x => { var editLink = new EditLink() { Label = x.Name }; if (DataScopeManager.CurrentDataScope != DataScopeIdentifier.Administrated) { editLink.Link = String.Empty; return(editLink); } var teaser = x; //var editWorkflowAttribute = teaser.DataSourceId.InterfaceType.GetCustomAttributes(true).OfType<EditWorkflowAttribute>().FirstOrDefault(); //if (editWorkflowAttribute == null) //{ // editLink.Link = string.Empty; // return editLink; //} var page = PageManager.GetPageById(Guid.Parse("63ec1a73-b1ed-4ec8-923f-2840448c43ce")); var entityToken = new PageTeaserInstanceEntityToken(page, teaser); var serializedEntityToken = EntityTokenSerializer.Serialize(entityToken, true); var editActionToken = new WorkflowActionToken(typeof(EditWorkflowAttribute)); var serializedActionToken = ActionTokenSerializer.Serialize(editActionToken, true); var html = String.Format("<a href=\"#\" data-providername='{0}' data-entitytoken='{1}' data-actiontoken=\"{2}\" data-piggybag='{3}' data-piggybaghash='{4}' onclick=\"executeAction(this)\">{5}</a>", teaser.DataSourceId.ProviderName, serializedEntityToken, serializedActionToken, String.Empty, HashSigner.GetSignedHash(string.Empty).Serialize(), "edit"); editLink.Link = html; return(editLink); }); rptCountryList.DataBind(); }
private void AppendFolderManagementActions(string websiteFolderPath, IEnumerable <IFolderWhiteList> manageableFolderWhiteLists, IList <ElementAction> folderActions) { for (int i = 0; i < _manageableKeyNames.Count; i++) { string keyName = _manageableKeyNames[i]; string itemLabel = StringResourceSystemFacade.ParseString(_manageableKeyNameLabels[i]); ResourceHandle icon = null; string label = null; string tooltip = null; WorkflowActionToken workflowActionToken = null; ActionCheckedStatus checkedStatus = ActionCheckedStatus.Uncheckable; if (manageableFolderWhiteLists.Where(f => f.KeyName == keyName && f.TildeBasedPath == IFolderWhiteListExtensions.GetTildePath(websiteFolderPath)).Any()) { workflowActionToken = new WorkflowActionToken(WorkflowFacade.GetWorkflowType("Composite.Plugins.Elements.ElementProviders.WebsiteFileElementProvider.RemoveWebsiteFolderFromWhiteListWorkflow"), _changeWhiteListPermissionTypes); label = StringResourceSystemFacade.GetString("Composite.Plugins.WebsiteFileElementProvider", "RemoveFolderFromWhiteListTitle"); tooltip = StringResourceSystemFacade.GetString("Composite.Plugins.WebsiteFileElementProvider", "RemoveFolderFromWhiteListToolTip"); icon = WebsiteFileElementProvider.RemoveFolderFromWhiteList; checkedStatus = ActionCheckedStatus.Checked; } else { workflowActionToken = new WorkflowActionToken(WorkflowFacade.GetWorkflowType("Composite.Plugins.Elements.ElementProviders.WebsiteFileElementProvider.AddWebsiteFolderToWhiteListWorkflow"), _changeWhiteListPermissionTypes); label = StringResourceSystemFacade.GetString("Composite.Plugins.WebsiteFileElementProvider", "AddFolderToWhiteListTitle"); tooltip = StringResourceSystemFacade.GetString("Composite.Plugins.WebsiteFileElementProvider", "AddFolderToWhiteListToolTip"); icon = WebsiteFileElementProvider.AddFolderToWhiteList; checkedStatus = ActionCheckedStatus.Unchecked; } label = string.Format(label, itemLabel); tooltip = string.Format(tooltip, itemLabel); workflowActionToken.Payload = keyName; folderActions.Add( new ElementAction(new ActionHandle(workflowActionToken)) { VisualData = new ActionVisualizedData { Label = label, ToolTip = tooltip, Icon = icon, Disabled = false, ActionLocation = new ActionLocation { ActionType = ActionType.Other, IsInFolder = false, IsInToolbar = false, ActionGroup = PrimaryFolderToolsActionGroup }, ActionCheckedStatus = checkedStatus } }); } }
/// <summary> /// Refreshed function tree for the currently used function provider element provider. /// </summary> public void RefreshFunctionTree() { WorkflowActionToken actionToken = (WorkflowActionToken)this.ActionToken; var entityToken = new BaseFunctionFolderElementEntityToken(actionToken.Payload, string.Empty); SpecificTreeRefresher specificTreeRefresher = this.CreateSpecificTreeRefresher(); specificTreeRefresher.PostRefreshMesseges(entityToken); }
private IEnumerable <Element> getFormSubmitHandlerElements(ElementProviderContext context, FormFolderEntityToken folder) { var definition = DefinitionsFacade.GetDefinition(folder.FormName); if (definition == null) { yield break; } foreach (var handler in definition.SubmitHandlers) { var elementHandle = context.CreateElementHandle(new FormSubmitHandlerEntityToken(handler.GetType(), folder.FormName, handler.Name)); var handlerElement = new Element(elementHandle) { VisualData = new ElementVisualizedData { Label = handler.Name, ToolTip = handler.Name, HasChildren = false, Icon = ResourceHandle.BuildIconFromDefaultProvider("localization-element-closed-root"), OpenedIcon = ResourceHandle.BuildIconFromDefaultProvider("localization-element-opened-root") } }; var editWorkflowAttribute = handler.GetType().GetCustomAttributes(true).OfType <EditWorkflowAttribute>().FirstOrDefault(); if (editWorkflowAttribute != null) { var editActionToken = new WorkflowActionToken(editWorkflowAttribute.EditWorkflowType); handlerElement.AddAction(new ElementAction(new ActionHandle(editActionToken)) { VisualData = new ActionVisualizedData { Label = "Edit", ToolTip = "Edit", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-edit"), ActionLocation = ActionLocation } }); } var deleteActionToken = new ConfirmWorkflowActionToken("Delete: " + handler.Name, typeof(DeleteSubmitHandlerActionToken)); handlerElement.AddAction(new ElementAction(new ActionHandle(deleteActionToken)) { VisualData = new ActionVisualizedData { Label = "Delete", ToolTip = "Delete", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-delete"), ActionLocation = ActionLocation } }); yield return(handlerElement); } }
/// <exclude /> public static FlowToken ExecuteEntityTokenLocked(ActionToken lockedActionToken, EntityToken lockedEntityToken, FlowControllerServicesContainer flowControllerServicesContainer) { EntityToken entityToken = new EntityTokenLockedEntityToken( ActionLockingFacade.LockedBy(lockedEntityToken), ActionTokenSerializer.Serialize(lockedActionToken), EntityTokenSerializer.Serialize(lockedEntityToken) ); WorkflowActionToken actionToken = new WorkflowActionToken(WorkflowFacade.GetWorkflowType("Composite.C1Console.Actions.Workflows.EntityTokenLockedWorkflow")); return(Execute(entityToken, actionToken, flowControllerServicesContainer)); }
private void AddPositionFolders(EntityToken entityToken, List <Element> list) { var page = PageManager.GetPageById(new Guid(entityToken.Source)); IList <Tuple <string, string> > positions; if (!TemplateTeaserPositions.TryGetValue(page.TemplateId, out positions)) { return; } foreach (var position in positions) { var elementHandle = _context.CreateElementHandle(new PageTeaserPositionFolderEntityToken(page, position.Item1)); var positionElement = new Element(elementHandle) { VisualData = new ElementVisualizedData { Label = position.Item2, ToolTip = position.Item2, HasChildren = TeaserFacade.GetPageTeasers(page, position.Item1, false).Any(), Icon = new ResourceHandle("Composite.Icons", "folder"), OpenedIcon = new ResourceHandle("Composite.Icons", "folder_active"), } }; var addActionToken = new WorkflowActionToken(typeof(AddPageTeaserWorkFlow), new[] { PermissionType.Add }); positionElement.AddAction(new ElementAction(new ActionHandle(addActionToken)) { VisualData = new ActionVisualizedData { Label = StringResourceSystemFacade.GetString("CompositeC1Contrib.Teasers", "TeaserElementAttachingProvider.Add.Label"), ToolTip = StringResourceSystemFacade.GetString("CompositeC1Contrib.Teasers", "TeaserElementAttachingProvider.Add.ToolTip"), Icon = new ResourceHandle("Composite.Icons", "generated-type-data-add"), ActionLocation = ActionLocation } }); var url = String.Format("InstalledPackages/CompositeC1Contrib.Teasers/SortPageTeasers.aspx?pageId={0}&position={1}", page.Id, position.Item1); var sortActionToken = new UrlActionToken(StringResourceSystemFacade.GetString("CompositeC1Contrib.Teasers", "TeaserElementAttachingProvider.SortItems"), UrlUtils.ResolveAdminUrl(url), new[] { PermissionType.Add, PermissionType.Edit, PermissionType.Administrate, }); positionElement.AddAction(new ElementAction(new ActionHandle(sortActionToken)) { VisualData = new ActionVisualizedData { Label = StringResourceSystemFacade.GetString("CompositeC1Contrib.Teasers", "TeaserElementAttachingProvider.Sort.Label"), ToolTip = StringResourceSystemFacade.GetString("CompositeC1Contrib.Teasers", "TeaserElementAttachingProvider.Sort.ToolTip"), Icon = new ResourceHandle("Composite.Icons", "cut"), ActionLocation = ActionLocation } }); list.Add(positionElement); } }
private IEnumerable <Element> getWizardStepElements(ElementProviderContext context, FormFolderEntityToken folder) { var wizard = (DynamicWizardDefinition)DefinitionsFacade.GetDefinition(folder.FormName); if (wizard == null) { yield break; } foreach (var step in wizard.Model.Steps) { var elementHandle = context.CreateElementHandle(new FormWizardStepEntityToken(wizard.Name, step.Name)); var wizardStepElement = new Element(elementHandle) { VisualData = new ElementVisualizedData { Label = step.Name, ToolTip = step.Name, HasChildren = false, Icon = ResourceHandle.BuildIconFromDefaultProvider("localization-element-closed-root"), OpenedIcon = ResourceHandle.BuildIconFromDefaultProvider("localization-element-opened-root") } }; var editActionToken = new WorkflowActionToken(typeof(EditWizardStepWorkflow)); wizardStepElement.AddAction(new ElementAction(new ActionHandle(editActionToken)) { VisualData = new ActionVisualizedData { Label = "Edit step", ToolTip = "Edit step", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-edit"), ActionLocation = ActionLocation } }); var deleteActionToken = new ConfirmWorkflowActionToken("Delete step", typeof(DeleteFormWizardStepActionToken)); wizardStepElement.AddAction(new ElementAction(new ActionHandle(deleteActionToken)) { VisualData = new ActionVisualizedData { Label = "Delete step", ToolTip = "Delete step", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-delete"), ActionLocation = ActionLocation } }); yield return(wizardStepElement); } }
public static ElementAction GetGenerateClassAction() { var actionToken = new WorkflowActionToken(typeof(GenerateClassWithKeysWorkflow), new[] { PermissionType.Administrate }); return(new ElementAction(new ActionHandle(actionToken)) { VisualData = new ActionVisualizedData { Label = "Generate class file", ToolTip = "Generate class file", Icon = new ResourceHandle("Composite.Icons", "generated-type-data-edit"), ActionLocation = ActionLocation } }); }
public static ElementAction GetAddAction() { var actionToken = new WorkflowActionToken(typeof(AddResourceWorkflow), new[] { PermissionType.Add }); return(new ElementAction(new ActionHandle(actionToken)) { VisualData = new ActionVisualizedData { Label = "Add resource", ToolTip = "Add resource", Icon = new ResourceHandle("Composite.Icons", "generated-type-data-edit"), ActionLocation = ActionLocation } }); }
public override void OnFinish(object sender, EventArgs e) { var name = GetBinding <string>("Name"); var wizard = new DynamicWizardDefinition(name); DynamicWizardsFacade.SaveWizard(wizard); var data = ModelReferenceFacade.GetModelReference(name); var token = data.GetDataEntityToken(); var workflowToken = new WorkflowActionToken(typeof(EditFormWizardWorkflow)); CreateSpecificTreeRefresher().PostRefreshMessages(EntityToken); ExecuteAction(token, workflowToken); }
protected void Page_Load(object sender, EventArgs e) { string pageIdString = this.Request.QueryString["pageId"]; if (pageIdString == null) { throw new InvalidOperationException(); } Guid pageId = new Guid(pageIdString); //var editWorkflowAttribute = teaser.DataSourceId.InterfaceType.GetCustomAttributes(true).OfType<EditWorkflowAttribute>().FirstOrDefault(); //if (editWorkflowAttribute == null) //{ // editLink.Link = string.Empty; // return editLink; //} var pagex = PageManager.GetPageById(pageId); var _entityToken = new PageDataEntityToken(pagex); var serializedEntityToken = EntityTokenSerializer.Serialize(_entityToken, true); var editActionToken = new WorkflowActionToken(typeof(EditDataWorkflow)); var token = new WorkflowActionToken(WorkflowFacade.GetWorkflowType(typeof(EditPageWorkflow).FullName)); var serializedActionToken = ActionTokenSerializer.Serialize(token, true); //var m = ActionTokenSerializer.Deserialize(k); var x = ActionTokenSerializer.Deserialize(serializedActionToken); providerName = pagex.DataSourceId.ProviderName; entityToken = serializedEntityToken; actionToken = serializedActionToken; piggybag = string.Empty; piggybagHash = HashSigner.GetSignedHash(string.Empty).Serialize(); using (new DataScope(DataScopeIdentifier.Administrated, UserSettings.ActiveLocaleCultureInfo)) { IPage page = PageManager.GetPageById(pageId); this.MyPlaceHolder.Controls.Add(new LiteralControl("Title: " + page.Title + "<br />")); } }
} // Requried protected override void OnAddAction(Action <ElementAction> actionAdder, EntityToken entityToken, TreeNodeDynamicContext dynamicContext, DynamicValuesHelperReplaceContext dynamicValuesHelperReplaceContext) { WorkflowActionToken actionToken = new WorkflowActionToken( WorkflowFacade.GetWorkflowType(TypeManager.SerializeType(this.WorkflowType)), this.PermissionTypes) { Payload = this.Serialize(), ExtraPayload = PiggybagSerializer.Serialize(dynamicContext.Piggybag.PreparePiggybag(dynamicContext.CurrentTreeNode, dynamicContext.CurrentEntityToken)), DoIgnoreEntityTokenLocking = true }; actionAdder(new ElementAction(new ActionHandle(actionToken)) { VisualData = CreateActionVisualizedData(dynamicValuesHelperReplaceContext) }); }
/// <exclude /> protected sealed override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext) { FormsWorkflow formsWorkflow = this.GetRoot<FormsWorkflow>(); FlowControllerServicesContainer flowControllerServicesContainer = WorkflowFacade.GetFlowControllerServicesContainer(WorkflowEnvironment.WorkflowInstanceId); IActionExecutionService actionExecutionService = flowControllerServicesContainer.GetService<IActionExecutionService>(); WorkflowActionToken workflowActionToken = new WorkflowActionToken(this.ChildWorkflowType) { Payload = this.ChildWorkflowPayload, ParentWorkflowInstanceId = formsWorkflow.InstanceId }; actionExecutionService.Execute(formsWorkflow.EntityToken, workflowActionToken, null); return ActivityExecutionStatus.Closed; }
/// <exclude /> protected sealed override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext) { FormsWorkflow formsWorkflow = this.GetRoot <FormsWorkflow>(); FlowControllerServicesContainer flowControllerServicesContainer = WorkflowFacade.GetFlowControllerServicesContainer(WorkflowEnvironment.WorkflowInstanceId); IActionExecutionService actionExecutionService = flowControllerServicesContainer.GetService <IActionExecutionService>(); WorkflowActionToken workflowActionToken = new WorkflowActionToken(this.ChildWorkflowType) { Payload = this.ChildWorkflowPayload, ParentWorkflowInstanceId = formsWorkflow.InstanceId }; actionExecutionService.Execute(formsWorkflow.EntityToken, workflowActionToken, null); return(ActivityExecutionStatus.Closed); }
public override void OnFinish(object sender, EventArgs e) { var name = GetBinding <string>("Name"); var teaserType = Type.GetType(GetBinding <string>("PageTeaserType")); var editWorkflowAttribute = teaserType.GetCustomAttributes(typeof(EditWorkflowAttribute), true).Cast <EditWorkflowAttribute>().Single(); var payload = new StringBuilder(); StringConversionServices.SerializeKeyValuePair(payload, "teaserType", teaserType.AssemblyQualifiedName); StringConversionServices.SerializeKeyValuePair(payload, "name", name); var workflowToken = new WorkflowActionToken(editWorkflowAttribute.EditWorkflowType) { Payload = payload.ToString() }; CreateAddNewTreeRefresher(EntityToken).PostRefreshMesseges(EntityToken); ExecuteAction(EntityToken, workflowToken); }
/// <exclude /> protected override void OnAddAction(Action <ElementAction> actionAdder, EntityToken entityToken, TreeNodeDynamicContext dynamicContext, DynamicValuesHelperReplaceContext dynamicValuesHelperReplaceContext) { StringBuilder payload = new StringBuilder(); StringConversionServices.SerializeKeyValuePair(payload, "TreeId", this.OwnerNode.Tree.TreeId); StringConversionServices.SerializeKeyValuePair(payload, "ActionId", this.Id); WorkflowActionToken actionToken = new WorkflowActionToken( WorkflowFacade.GetWorkflowType("Composite.C1Console.Trees.Workflows.ReportFunctionActionWorkflow"), this.PermissionTypes) { Payload = this.Serialize(), ExtraPayload = PiggybagSerializer.Serialize(dynamicContext.Piggybag.PreparePiggybag(dynamicContext.CurrentTreeNode, dynamicContext.CurrentEntityToken)), DoIgnoreEntityTokenLocking = true }; actionAdder(new ElementAction(new ActionHandle(actionToken)) { VisualData = CreateActionVisualizedData(dynamicValuesHelperReplaceContext) }); }
public void AddActions(Element element) { if (element.Actions.Any(a => a.TagValue == "edit")) { return; } var resourceWriter = ResourceFacade.GetResourceWriter(UserSettings.ActiveLocaleCultureInfo); if (resourceWriter == null) { return; } var token = (FormFieldEntityToken)element.ElementHandle.EntityToken; var model = ModelsFacade.GetModel(token.FormName); var field = model.Fields.Get(token.FieldName); if (!field.Attributes.OfType <FieldLabelAttribute>().Any()) { return; } var editFieldActionToken = new WorkflowActionToken(typeof(EditFormFieldSettingsWorkflow)); element.AddAction(new ElementAction(new ActionHandle(editFieldActionToken)) { TagValue = "edit", VisualData = new ActionVisualizedData { Label = "Edit", ToolTip = "Edit", Icon = new ResourceHandle("Composite.Icons", "generated-type-data-edit"), ActionLocation = ActionLocation } }); }
private void initializeCodeActivity_ExecuteCode(object sender, EventArgs e) { WorkflowActionToken workflowActionToken = (WorkflowActionToken)this.ActionToken; string folderPath = null; if (this.EntityToken is WebsiteFileElementProviderRootEntityToken) { folderPath = ""; } else { WebsiteFileElementProviderEntityToken entityToken = (WebsiteFileElementProviderEntityToken)this.EntityToken; folderPath = entityToken.Path; } UpdateTreeRefresher updateTreeRefresher = this.CreateUpdateTreeRefresher(this.EntityToken); string keyName = workflowActionToken.Payload; DataFacade.Delete <IFolderWhiteList>(f => f.TildeBasedPath == IFolderWhiteListExtensions.GetTildePath(folderPath) && f.KeyName == keyName); updateTreeRefresher.PostRefreshMesseges(this.EntityToken); }
private void changeLocaleCodeActivity_Execute_ExecuteCode(object sender, EventArgs e) { WorkflowActionToken workflowActionToken = (WorkflowActionToken)this.ActionToken; CultureInfo cultureInfo = CultureInfo.CreateSpecificCulture(workflowActionToken.Payload); UserSettings.ActiveLocaleCultureInfo = cultureInfo; string currentConsoleId = GetCurrentConsoleId(); foreach (string consoleId in GetConsoleIdsOpenedByCurrentUser()) { if (consoleId != currentConsoleId) { ConsoleMessageQueueFacade.Enqueue(new CloseAllViewsMessageQueueItem { Reason = StringResourceSystemFacade.GetString("Composite.C1Console.Users", "ChangeOwnActiveLocaleWorkflow.CloseAllViews.Message") }, consoleId); } ConsoleMessageQueueFacade.Enqueue(new CollapseAndRefreshConsoleMessageQueueItem(), consoleId); ConsoleMessageQueueFacade.Enqueue(new BroadcastMessageQueueItem { Name = "ActiveLocaleChanged", Value = "" }, consoleId); } }
public IEnumerable <ElementAction> Provide(EntityToken entityToken) { var dataEntityToken = (DataEntityToken)entityToken; var modelReference = dataEntityToken.Data as IModelReference; if (modelReference == null) { yield break; } var def = DefinitionsFacade.GetDefinition(modelReference.Name); if (def == null) { yield break; } if (def is DynamicFormDefinition) { var editActionToken = new WorkflowActionToken(typeof(EditFormWorkflow)); yield return(new ElementAction(new ActionHandle(editActionToken)) { TagValue = "edit", VisualData = new ActionVisualizedData { Label = "Edit", ToolTip = "Edit", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-edit"), ActionLocation = ActionLocation } }); var editRenderingLayoutActionToken = new WorkflowActionToken(typeof(EditFormRenderingLayoutWorkflow)); yield return(new ElementAction(new ActionHandle(editRenderingLayoutActionToken)) { VisualData = new ActionVisualizedData { Label = "Edit rendering layout", ToolTip = "Edit rendering layout", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-edit"), ActionLocation = ActionLocation } }); } if (def is DynamicWizardDefinition) { var editActionToken = new WorkflowActionToken(typeof(EditFormWizardWorkflow)); yield return(new ElementAction(new ActionHandle(editActionToken)) { VisualData = new ActionVisualizedData { Label = "Edit", ToolTip = "Edit", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-edit"), ActionLocation = ActionLocation } }); } var deleteActionToken = new ConfirmWorkflowActionToken("Delete: " + modelReference.Name, typeof(DeleteFormActionToken)); yield return(new ElementAction(new ActionHandle(deleteActionToken)) { VisualData = new ActionVisualizedData { Label = "Delete", ToolTip = "Delete", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-delete"), ActionLocation = ActionLocation } }); var copyActionToken = new WorkflowActionToken(typeof(CopyFormWorkflow)); yield return(new ElementAction(new ActionHandle(copyActionToken)) { VisualData = new ActionVisualizedData { Label = "Copy", ToolTip = "Copy", Icon = ResourceHandle.BuildIconFromDefaultProvider("generated-type-data-edit"), ActionLocation = ActionLocation } }); }