1111import com .liferay .portal .kernel .exception .SystemException ;
1212import com .liferay .portal .kernel .log .Log ;
1313import com .liferay .portal .kernel .log .LogFactoryUtil ;
14- import com .liferay .portal .kernel .model .Layout ;
15- import com .liferay .portal .kernel .model .Resource ;
16- import com .liferay .portal .kernel .model .ResourceConstants ;
17- import com .liferay .portal .kernel .model .ResourcePermission ;
14+ import com .liferay .portal .kernel .model .*;
1815import com .liferay .portal .kernel .model .role .RoleConstants ;
1916import com .liferay .portal .kernel .security .permission .ActionKeys ;
2017import com .liferay .portal .kernel .service .ResourceLocalServiceUtil ;
@@ -49,26 +46,7 @@ public static void setupPortletPermissions(final ResourcePermissions resourcePer
4946 final Set <String > actionStrings = actionsPerRoleEntry .getValue ();
5047 final String [] actionIds = actionStrings .toArray (new String [actionStrings .size ()]);
5148
52- /**
53- * Individual permission is needed even though we set
54- */
55- ResourcePermissionLocalServiceUtil .setResourcePermissions (
56- companyId ,
57- resource .getResourceId (),
58- ResourceConstants .SCOPE_INDIVIDUAL ,
59- String .valueOf (companyId ),
60- roleId ,
61- actionIds
62- );
63- ResourcePermissionLocalServiceUtil .setResourcePermissions (
64- companyId ,
65- resource .getResourceId (),
66- ResourceConstants .SCOPE_COMPANY ,
67- String .valueOf (companyId ),
68- roleId ,
69- actionIds
70- );
71- if (role .getType () == RoleConstants .TYPE_SITE ) {
49+ if (role .getType () == RoleConstants .TYPE_SITE || role .getType () == RoleConstants .TYPE_ORGANIZATION ) {
7250 ResourcePermissionLocalServiceUtil .setResourcePermissions (
7351 companyId ,
7452 resource .getResourceId (),
@@ -77,6 +55,26 @@ public static void setupPortletPermissions(final ResourcePermissions resourcePer
7755 roleId ,
7856 actionIds
7957 );
58+ } else {
59+ /**
60+ * Individual permission is needed even though we set
61+ */
62+ ResourcePermissionLocalServiceUtil .setResourcePermissions (
63+ companyId ,
64+ resource .getResourceId (),
65+ ResourceConstants .SCOPE_INDIVIDUAL ,
66+ String .valueOf (companyId ),
67+ roleId ,
68+ actionIds
69+ );
70+ ResourcePermissionLocalServiceUtil .setResourcePermissions (
71+ companyId ,
72+ resource .getResourceId (),
73+ ResourceConstants .SCOPE_COMPANY ,
74+ String .valueOf (companyId ),
75+ roleId ,
76+ actionIds
77+ );
8078 }
8179 LOG .info (String .format ("Set permission for role: %1$s for action ids: %2$s" , roleName , actionIds ));
8280 } catch (NestableException e ) {
0 commit comments