001
014
015 package com.liferay.portlet.social.service.permission;
016
017 import com.liferay.portal.kernel.exception.PortalException;
018 import com.liferay.portal.kernel.portlet.PortletProvider;
019 import com.liferay.portal.kernel.portlet.PortletProviderUtil;
020 import com.liferay.portal.security.auth.PrincipalException;
021 import com.liferay.portal.security.permission.PermissionChecker;
022 import com.liferay.portlet.social.model.SocialActivitySetting;
023
024
027 public class SocialActivityPermissionImpl implements SocialActivityPermission {
028
029 @Override
030 public void check(
031 PermissionChecker permissionChecker, long groupId, String actionId)
032 throws PortalException {
033
034 if (!contains(permissionChecker, groupId, actionId)) {
035 throw new PrincipalException.MustHavePermission(
036 permissionChecker, getPortletId(), groupId, actionId);
037 }
038 }
039
040 @Override
041 public boolean contains(
042 PermissionChecker permissionChecker, long groupId, String actionId) {
043
044 if (permissionChecker.isGroupAdmin(groupId) ||
045 permissionChecker.isGroupOwner(groupId)) {
046
047 return true;
048 }
049
050 if (permissionChecker.hasPermission(
051 groupId, getPortletId(), 0, actionId)) {
052
053 return true;
054 }
055
056 return false;
057 }
058
059 protected String getPortletId() {
060 return PortletProviderUtil.getPortletId(
061 SocialActivitySetting.class.getName(), PortletProvider.Action.EDIT);
062 }
063
064 }