]> source.dussan.org Git - sonarqube.git/commitdiff
display organization key on project dashboard
authorStas Vilchik <vilchiks@gmail.com>
Thu, 2 Feb 2017 10:11:10 +0000 (11:11 +0100)
committerStas Vilchik <stas-vilchik@users.noreply.github.com>
Thu, 2 Feb 2017 12:32:25 +0000 (13:32 +0100)
server/sonar-web/src/main/js/apps/overview/meta/Meta.js
server/sonar-web/src/main/js/apps/overview/meta/MetaOrganizationKey.js [new file with mode: 0644]
sonar-core/src/main/resources/org/sonar/l10n/core.properties

index a0b76bf0690ce10a7947aabc3d6fb4509a6eb7f7..6709840632d19efed10130c5f970be20eafe8cd7 100644 (file)
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import React from 'react';
+import { connect } from 'react-redux';
 import MetaKey from './MetaKey';
+import MetaOrganizationKey from './MetaOrganizationKey';
 import MetaLinks from './MetaLinks';
 import MetaQualityGate from './MetaQualityGate';
 import MetaQualityProfiles from './MetaQualityProfiles';
 import AnalysesList from '../events/AnalysesList';
 import MetaSize from './MetaSize';
+import { areThereCustomOrganizations } from '../../../store/rootReducer';
 
-const Meta = ({ component, measures }) => {
+const Meta = ({ component, measures, areThereCustomOrganizations }) => {
   const { qualifier, description, qualityProfiles, qualityGate } = component;
 
   const isProject = qualifier === 'TRK';
@@ -39,6 +42,8 @@ const Meta = ({ component, measures }) => {
   const shouldShowQualityProfiles = !isView && !isDeveloper && hasQualityProfiles;
   const shouldShowQualityGate = !isView && !isDeveloper && hasQualityGate;
 
+  const shouldShowOrganizationKey = component.organization != null && areThereCustomOrganizations;
+
   return (
       <div className="overview-meta">
         {hasDescription && (
@@ -61,6 +66,10 @@ const Meta = ({ component, measures }) => {
 
         <MetaKey component={component}/>
 
+        {shouldShowOrganizationKey && (
+            <MetaOrganizationKey component={component}/>
+        )}
+
         {isProject && (
             <AnalysesList project={component.key}/>
         )}
@@ -68,4 +77,8 @@ const Meta = ({ component, measures }) => {
   );
 };
 
-export default Meta;
+const mapStateToProps = state => ({
+  areThereCustomOrganizations: areThereCustomOrganizations(state)
+});
+
+export default connect(mapStateToProps)(Meta);
diff --git a/server/sonar-web/src/main/js/apps/overview/meta/MetaOrganizationKey.js b/server/sonar-web/src/main/js/apps/overview/meta/MetaOrganizationKey.js
new file mode 100644 (file)
index 0000000..f438365
--- /dev/null
@@ -0,0 +1,39 @@
+/*
+ * 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.
+ */
+import React from 'react';
+import { translate } from '../../../helpers/l10n';
+
+const MetaOrganizationKey = ({ component }) => {
+  return (
+      <div className="overview-meta-card">
+        <h4 className="overview-meta-header">
+          {translate('organization_key')}
+        </h4>
+        <input
+            className="overview-key"
+            type="text"
+            value={component.organization}
+            readOnly={true}
+            onClick={e => e.target.select()}/>
+      </div>
+  );
+};
+
+export default MetaOrganizationKey;
index 822ce59ee0174eb0ab6064de34b4b748099b378e..d3b386694dacbd442dc41e73a12090f361d17ffa 100644 (file)
@@ -109,6 +109,7 @@ never=Never
 none=None
 off=Off
 on=On
+organization_key=Organization Key
 open=Open
 open_verb=Open
 operations=Operations