kentico version 9 locking publish to certain users - content-management-system

I have looked around quite a bit, and understand workflow, and putting steps in place in terms od content editing but cannot see anywhere how I restrict roles to steps.
In short I want the bulk of my users to be able to edit and then submit for approval but not be able to publish (save).
Then I need a couple of 'global/super' users to be the only ones who are able to approve and then publish the content live.
This will apply to new pages, edits to existing, everything basically.
Users who can edit and save for approval.
The super users who can publish if they approve.

In the Workflow application there is Security tab per each step - advanced workflow only OR security tab for each custom step in basic workflow.
You can learn more here:
Configuring workflow step permissions
Advanced workflow:
Basic publishing with custom step:

Related

Make everyone a reviewer of VSTS pull requests

We want to set up a pool code review system where any developer can see a list of all pending code review requests and pick some to review. We're using Visual Studio Team Services.
As a first step, I need to allow the entire Project Collection Valid Users group to be added as reviewer of a pull request. (Currently the field seems to accept only users who are explicit members of the project team.) The second step is to grant read-access to all projects to all collection valid users.
The latter step seems to be answered by this answer.
But I'm completely stuck on making everyone a pull request reviewer. Is this even possible? If so how? (I'd prefer not to rely on a third-party extension if it can be done without.)
You can use below steps to make everyone as reviewers for VSTS pull requests:
Add an account level group to add all users as members for the group
In Security Page (https://account.visualstudio.com/_admin/_security) -> Create group -> input group name (assume it’s Engineering here) -> add all the users as members for the Engineering group.
Add the account level group (Engineering group) for each projects
In a project security page (https://account.visualstudio.com/project/_admin/_security) -> add the Engineering Group as a member for the project’s group or team.
Select the project team/group (which you add Engineering group as a member) for PR reviewers in the project
You can install Pull Request Dashboard extension to view the PRs clearly
You can install Pull Request Dashboard extension, so that users can view Pull Requests in the project by different kinds of categories: Request By me, Assigned To Me and Other Open Pull Requests.
By default, nothing like everyone, you can add as many people you want as reviewer.

jBPM web based approval system

I am working in web based approval system where:
User select folder and ask for approval to a approver
Approver log in and found pending approval list and upon checking few criteria approve or reject the approval request
Corresponding mail will be fired to user
Every state will be stored in db
Can anyone help me with web based jBPM sample project.
I have checked few jBPM projects in github but not clear about persistance(saving the state)and human task,how they work.
Any sample project or link please share
Have a look at these articles:
http://mswiderski.blogspot.com/2016/10/case-management-jbpm-v7-part-1.html
http://mswiderski.blogspot.com/2016/10/case-management-jbpm-v7-part-2-working.html
http://mswiderski.blogspot.com/2016/10/case-management-jbpm-v7-part-3-dynamic.html
And here is using showcase case mgmt UI
http://mswiderski.blogspot.com/2017/04/case-management-application-in-workbench.html
From my point of view, it does have approval system.

Start a workflow on page activation without activating the page in AEM 6.2

I need a setup where users can update a page and then submit it for approval/activation in AEM 6.2. The page would be submitted to workflow where a content approver/administrator would review and publish the page. This seems like a common setup for content managment, but I can't figure out how to do it in AEM.
I have done the following:
setup a user that has permission to update but does NOT have
replicate permission on folderX.
setup users with update and replicate permissions on folderX and added them to a group "content-authors-approvers"
created a workflow where the first step of the workflow is the page will be submitted for approval and publication to member of "content-authors-approvers" group
assigned this workflow to folderX
However, when a user does NOT have replicate permission, the "publish" option does not show up at all. This makes sense, really....but then, how does one go about setting up a workflow like this?
From what I've read about this in earlier versions of AEM/CQ5, the replicate/publish option was still available to all users, but it would automatically kick off workflow if the user did not have replicate permissions. (see Start a workflow on page activation without activating the page in CQ5 )
this seems to have changed in 6.2. can anyone help?
I have tried looking up online, but found nothing
There is a native workflow to handle that. It's named Publish Example. see it here: http://localhost:4502/etc/workflow/models/publish_example.html . I believe that it's better then the automatic triggering cause the author actually knows he triggers a workflow (whilst when it happened automatically there was no info about that). To explicitly call it you have to either from /siteadmin select a page and click workflow on it, or do it from sidekick or in touch.
sidekick:
touch - editpage:

Hide Workflow from SiteAdmin

We have a requirement in our project like we want to hide some workflows in siteadmin. We are using AEM 6.1. Please let us know if anybody has any solution. any help is highly appreciated.
Thanks,
Tushar
Using User Permissions
This can be controlled by user permissions. The permissions can be updated in useradmin console to remove read permission from the workflow models you want not be shown to user. Permissions can be managed via groups
Please note that there are 2 workflow models for Schedule Activation/Deactivation, the read access is required for these in case you want user to be able to use "Activate/Deactivate Later" OOTB functionality in siteadmin/damadmin console. These 2 are anyways not shown in workflow list while initiating workflow from siteadmin/damadmin console, but we should take care while removing read permissions.
This solution is verified.
Using Model changes
Model can updated to make it as system workflow refer Adobe Forum Link. Verify this one with Day Care to see if there is a side effect.

What version of AEM/CQ5 page will be seen when a page is already in a separate workflow?

If you take a page and put it in a workflow, then if someone wants to modify that page – in an emergency situation and essentially start another workflow on it –
Is that possible to send that page through another workflow?
If you don’t want to send the same page through a workflow, but just want to edit it, can you?
Apparently If one person is editing a CQ page and same page is edited by someone else at the same time, at production level, how the CQ / developer handles the situation?
Thanks in Advance
It is not possible to subject a page to more than one workflow at once, none of the interfaces allow this to happen.
The pages can be edited even when they are subject to a workflow. In emergency situations where in it is not possible to complete the workflow , users with required privileges can terminate the workflow from the instances tab of the workflow console (/libs/cq/workflow/content/console.html). Pages can be usually activated even if they are subject to workflows.
The repository is accessed via repository session. Based on the credentials provided the user gets a repository session. Any changes made via that session is only visible to the other users when the session is saved. Since different sessions are used , multiple users can edit the same page simultaneously. The data in dialogs are loaded via asynchronous GET requests when EDIT is clicked and not on page load , so it is very unlikely that the user will be editing old data. They can still overwrite some other user's changes. Developers do not have to handle these situations unless there is some special requirement. If a user wants to stop other users from editing a page , they can use the lock functionality that comes out of the box. A locked page can be unlocked only by the user who locked it or an administrator. A page or node can be programmatically locked via the JCR API.