cancel
Showing results for 
Search instead for 
Did you mean: 

Hide Edit tab for users with access rights "write"

Bauke_Roo
Star Contributor
Star Contributor

Hi There,

In Nuxeo 5.8 I want to hide the edit tab for users with access rights : "write". The tab should be available for users with access rights: "manage everything". In Studio I've added the following extension points:

<extension target="org.nuxeo.ecm.platform.actions.ActionService"  point="actions">
  <action id="TAB_WORKSPACE_EDIT">
    <filter-id>denyForWrite</filter-id>
  </action>
</extension>

<extension target="org.nuxeo.ecm.platform.actions.ActionService"  point="filters">
  <filter id="denyForWrite">
    <rule grant="false">
      <permission>Write</permission>
      <type>Workspace</type>
      <type>WorkspaceRoot</type>
    </rule>
    <rule grant="true">
      <permission>Manage everything</permission>
      <type>Workspace</type>
      <type>WorkspaceRoot</type>
    </rule>
  </filter>
</extension>

For some reason however the tab is also hidden for users with "manage everything" rights, I also noticed that when I don't have the <type>WorkspaceRoot</type> specified it also hides the button in the workspaceroot. Is there something I'm not doing right?

Thanks in advance, Bauke Roo

1 REPLY 1

kartik_sn
Confirmed Champ
Confirmed Champ

Hi Bauke,

Regrets for you because this** question is not answered for past one year**. If you are still in search of a solution then i have the code for it. Paste the code at the same file.

<extension target="org.nuxeo.ecm.platform.actions.ActionService"  point="actions">
  <action id="TAB_WORKSPACE_EDIT">
    <filter-id>denyForWrite</filter-id>
  </action>
</extension>

<extension target="org.nuxeo.ecm.platform.actions.ActionService"  point="filters">
  <filter id="denyForWrite">
       <rule grant="true">
      <permission>Manage everything</permission>
      <type>Workspace</type>
      <type>WorkspaceRoot</type>
    </rule>
  </filter>
</extension>

The mistake in your code was in the filter. When edit tab is disabled for Write permission and you are enabling it for Manage Everything ,it doesn't make sense as manage everything has Write right with in it. So even **Manage Everything ** user is getting blocked.

My code just enables Edit tab for Manage Everything right and blocks for all other rights.

Regards

Getting started

Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.