private static boolean hasPermission(PropertyFileDescriptor model, Session session, String permission) { ProjectVersion version = model.getProjectLocale().getParent(); if (version.isReadOnly()) return false; if (session instanceof CDOAuthenticatedSession) { Project project = version.getParent(); CDOAuthenticatedSession authSession = (CDOAuthenticatedSession) session; return authSession.hasPermission(CommonPermissions.constructPermission(CommonPermissions.PROJECT, project.getName(), permission)); } return false; }
/** * @return true if the user is allowed to upload/import XLIFF files for this * {@link ProjectVersion}.<br> */ private boolean uploadPanelVisible(Resolvable<?, ?> object) { if (!(object instanceof ProjectVersion)) { return false; } ProjectVersion version = (ProjectVersion) object; if (version.isReadOnly()) { return false; } Session session = getSession(); if (!(session instanceof CDOAuthenticatedSession)) { return false; } Project project = version.getParent(); CDOAuthenticatedSession authSession = (CDOAuthenticatedSession) session; return authSession.hasPermission(CommonPermissions.constructPermission(CommonPermissions.PROJECT, project.getName(), CommonPermissions.ACTION_EDIT)); } }
private EditKind computeEditKind() { ProjectVersion version = getModel().getObject().getProjectLocale().getParent(); if (version.isReadOnly()) return EditKind.READONLY; Session session = getSession(); if (session instanceof CDOAuthenticatedSession) { Project project = version.getParent(); CDOAuthenticatedSession authSession = (CDOAuthenticatedSession) session; if (authSession.hasPermission(CommonPermissions.constructPermission(CommonPermissions.PROJECT, project.getName(), CommonPermissions.ACTION_EDIT))) return EditKind.EDIT; if (authSession .hasPermission(CommonPermissions.constructPermission(CommonPermissions.PROJECT, project.getName(), CommonPermissions.ACTION_SUGGEST))) return EditKind.SUGGEST; } return EditKind.READONLY; }