public ProjektRight(AccessChecker accessChecker) { super(accessChecker, UserRightId.PM_PROJECT, UserRightCategory.PM, UserRightServiceImpl.FALSE_READONLY_READWRITE); initializeUserGroupsRight(UserRightServiceImpl.FALSE_READONLY_READWRITE, UserRightServiceImpl.FIBU_ORGA_PM_GROUPS) // All project managers have read only access: .setAvailableGroupRightValues(ProjectForgeGroup.PROJECT_MANAGER, UserRightValue.READONLY) // All project assistants have no, read or read-only access: .setAvailableGroupRightValues(ProjectForgeGroup.PROJECT_ASSISTANT, UserRightValue.READONLY) // Read only access for controlling users: .setReadOnlyForControlling(); }
/** * Optional for enabling user specific values stored in the data base. See {@link HRPlanningRight} as an example. * * @param values * @param dependsOnGroups */ protected UserGroupsRight initializeUserGroupsRight(final UserRightValue[] values, final ProjectForgeGroup... dependsOnGroups) { userGroupsRight = new UserGroupsRight(null, null, values, dependsOnGroups); return userGroupsRight; }
/** * @return matches of UserGroupsRight if exist, otherwise false. * @see UserGroupsRight#matches(UserGroupCache, PFUserDO, UserRightValue) */ @Override public boolean matches(final UserGroupCache userGroupCache, final PFUserDO user, final UserRightValue value) { if (userGroupsRight != null) { return userGroupsRight.matches(userGroupCache, user, value); } return false; }
public LiquidityPlanningRight(AccessChecker accessChecker) { super(accessChecker, LiquidityplanningPluginUserRightId.PLUGIN_LIQUIDITY_PLANNING, UserRightCategory.FIBU, UserRightServiceImpl.FALSE_READONLY_READWRITE); initializeUserGroupsRight(UserRightServiceImpl.FALSE_READONLY_READWRITE, UserRightServiceImpl.FIBU_GROUPS) .setReadOnlyForControlling(); } }
/** * If userGroupsRight is initialized then {@link UserGroupsRight#isAvailable(UserGroupCache, PFUserDO)} is called, * otherwise super. * * @see org.projectforge.business.user.UserRight#isAvailable(org.projectforge.business.user.UserGroupCache, * org.projectforge.framework.persistence.user.entities.PFUserDO) */ @Override public boolean isAvailable(final UserGroupCache userGroupCache, final PFUserDO user) { if (userGroupsRight != null) { return userGroupsRight.isAvailable(userGroupCache, user); } return super.isAvailable(userGroupCache, user); }
/** * Convenience method for allowing only READONLY right value for the ProjectForgeGroup.CONTROLLING_GROUP. * * @return */ public UserGroupsRight setReadOnlyForControlling() { setAvailableGroupRightValues(ProjectForgeGroup.CONTROLLING_GROUP, UserRightValue.READONLY); return this; }
ProjectForgeGroup.HR_GROUP); addRight(UserRightCategory.FIBU, UserRightId.FIBU_AUSGANGSRECHNUNGEN, FALSE_READONLY_READWRITE, FIBU_ORGA_GROUPS) .setReadOnlyForControlling(); addRight(UserRightCategory.FIBU, UserRightId.FIBU_EINGANGSRECHNUNGEN, FALSE_READONLY_READWRITE, FIBU_ORGA_GROUPS) .setReadOnlyForControlling(); addRight(UserRightCategory.FIBU, UserRightId.FIBU_DATEV_IMPORT, FALSE_TRUE, FIBU_GROUPS); addRight(UserRightCategory.FIBU, UserRightId.FIBU_COST_UNIT, FALSE_READONLY_READWRITE, FIBU_ORGA_GROUPS) .setReadOnlyForControlling(); addRight(UserRightCategory.FIBU, UserRightId.FIBU_ACCOUNTS, FALSE_READONLY_READWRITE, FIBU_ORGA_GROUPS) .setReadOnlyForControlling(); addRight(UserRightCategory.ORGA, UserRightId.ORGA_CONTRACTS, FALSE_READONLY_READWRITE, FIBU_ORGA_GROUPS) .setReadOnlyForControlling(); addRight(UserRightCategory.ORGA, UserRightId.ORGA_INCOMING_MAIL, FALSE_READONLY_READWRITE, FIBU_ORGA_GROUPS) .setReadOnlyForControlling(); addRight(UserRightCategory.ORGA, UserRightId.ORGA_OUTGOING_MAIL, FALSE_READONLY_READWRITE, FIBU_ORGA_GROUPS) .setReadOnlyForControlling(); addRight(UserRightCategory.ORGA, UserRightId.ORGA_VISITORBOOK, FALSE_READONLY_READWRITE, ProjectForgeGroup.ORGA_TEAM); addRight(new TenantRight(accessChecker, tenantChecker));
/** * If userGroupsRight is initialized then * {@link UserGroupsRight#isAvailable(UserGroupCache, PFUserDO, UserRightValue)} is called, otherwise super. * * @see org.projectforge.business.user.UserRight#isAvailable(org.projectforge.business.user.UserGroupCache, * org.projectforge.framework.persistence.user.entities.PFUserDO, org.projectforge.business.user.UserRightValue) */ @Override public boolean isAvailable(final UserGroupCache userGroupCache, final PFUserDO user, final UserRightValue value) { if (userGroupsRight != null) { return userGroupsRight.isAvailable(userGroupCache, user, value); } return super.isAvailable(userGroupCache, user, value); } }
public AuftragRight(AccessChecker accessChecker) { super(accessChecker, UserRightId.PM_ORDER_BOOK, UserRightCategory.PM, UserRightServiceImpl.FALSE_READONLY_PARTLYREADWRITE_READWRITE); initializeUserGroupsRight(UserRightServiceImpl.FALSE_READONLY_PARTLYREADWRITE_READWRITE, UserRightServiceImpl.FIBU_ORGA_PM_GROUPS) // All project managers have read-write access: .setAvailableGroupRightValues(ProjectForgeGroup.PROJECT_MANAGER, UserRightValue.PARTLYREADWRITE) // All project assistants have no, read or read-write access: .setAvailableGroupRightValues(ProjectForgeGroup.PROJECT_ASSISTANT, UserRightValue.FALSE, UserRightValue.PARTLYREADWRITE) // Read only access for controlling users: .setReadOnlyForControlling(); }
return isAvailable(userGroupCache, user); if (isAvailable(userGroupCache, user) == false) { return false;
public UserGroupsRight addRight(final UserRightCategory category, final UserRightId id, final UserRightValue[] rightValues, final ProjectForgeGroup... fibuGroups) { final UserGroupsRight right = new UserGroupsRight(id, category, rightValues, fibuGroups); addRight(right); return right; }
public HRPlanningRight(AccessChecker accessChecker) { super(accessChecker, UserRightId.PM_HR_PLANNING, UserRightCategory.PM, UserRightServiceImpl.FALSE_READONLY_READWRITE); initializeUserGroupsRight(UserRightServiceImpl.FALSE_READONLY_READWRITE, UserRightServiceImpl.FIBU_ORGA_PM_GROUPS) // All project managers have read write access: .setAvailableGroupRightValues(ProjectForgeGroup.PROJECT_MANAGER, UserRightValue.READWRITE) // All project assistants have no, read or read-write access: .setAvailableGroupRightValues(ProjectForgeGroup.PROJECT_ASSISTANT, UserRightServiceImpl.FALSE_READONLY_READWRITE) // Read only access for controlling users: .setReadOnlyForControlling(); }