aboutsummaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
authorStas Vilchik <vilchiks@gmail.com>2016-07-11 16:13:42 +0200
committerStas Vilchik <vilchiks@gmail.com>2016-07-12 10:18:56 +0200
commit43864c2159afd6b0eaf45a2c8e7129475e0f0136 (patch)
treecb42809fec941fe98deea286a6c7498307c9742e /server
parentd5ca0eb5782c29c613a53b76cfe169dbe4ceab81 (diff)
downloadsonarqube-43864c2159afd6b0eaf45a2c8e7129475e0f0136.tar.gz
sonarqube-43864c2159afd6b0eaf45a2c8e7129475e0f0136.zip
SONAR-7832 Hide irrelevant permissions for views and developers
Diffstat (limited to 'server')
-rw-r--r--server/sonar-web/src/main/js/apps/permissions/project/components/AllHoldersList.js12
-rw-r--r--server/sonar-web/src/main/js/apps/permissions/project/constants.js43
2 files changed, 46 insertions, 9 deletions
diff --git a/server/sonar-web/src/main/js/apps/permissions/project/components/AllHoldersList.js b/server/sonar-web/src/main/js/apps/permissions/project/components/AllHoldersList.js
index 880c4d2a195..6dcbe728084 100644
--- a/server/sonar-web/src/main/js/apps/permissions/project/components/AllHoldersList.js
+++ b/server/sonar-web/src/main/js/apps/permissions/project/components/AllHoldersList.js
@@ -39,14 +39,7 @@ import {
getSelectedPermission
} from '../../shared/store/rootReducer';
import { translate } from '../../../../helpers/l10n';
-
-export const PERMISSIONS_ORDER = [
- 'user',
- 'codeviewer',
- 'issueadmin',
- 'admin',
- 'scan'
-];
+import { PERMISSIONS_ORDER_BY_QUALIFIER } from '../constants';
class AllHoldersList extends React.Component {
static propTypes = {
@@ -106,7 +99,8 @@ class AllHoldersList extends React.Component {
}
render () {
- const permissions = PERMISSIONS_ORDER.map(p => ({
+ const order = PERMISSIONS_ORDER_BY_QUALIFIER[this.props.project.qualifier];
+ const permissions = order.map(p => ({
key: p,
name: translate('projects_role', p),
description: translate('projects_role', p, 'desc')
diff --git a/server/sonar-web/src/main/js/apps/permissions/project/constants.js b/server/sonar-web/src/main/js/apps/permissions/project/constants.js
new file mode 100644
index 00000000000..22e2ef95122
--- /dev/null
+++ b/server/sonar-web/src/main/js/apps/permissions/project/constants.js
@@ -0,0 +1,43 @@
+/*
+ * SonarQube
+ * Copyright (C) 2009-2016 SonarSource SA
+ * mailto:contact AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+export const PERMISSIONS_ORDER_FOR_PROJECT = [
+ 'user',
+ 'codeviewer',
+ 'issueadmin',
+ 'admin',
+ 'scan'
+];
+
+export const PERMISSIONS_ORDER_FOR_VIEW = [
+ 'user',
+ 'admin'
+];
+
+export const PERMISSIONS_ORDER_FOR_DEV = [
+ 'user',
+ 'admin'
+];
+
+export const PERMISSIONS_ORDER_BY_QUALIFIER = {
+ 'TRK': PERMISSIONS_ORDER_FOR_PROJECT,
+ 'VW': PERMISSIONS_ORDER_FOR_VIEW,
+ 'SVW': PERMISSIONS_ORDER_FOR_VIEW,
+ 'DEV': PERMISSIONS_ORDER_FOR_DEV
+};