]> source.dussan.org Git - sonarqube.git/commitdiff
do not use "canBeFavorite" from api/navigation/component
authorStas Vilchik <vilchiks@gmail.com>
Fri, 9 Dec 2016 09:05:57 +0000 (10:05 +0100)
committerStas Vilchik <vilchiks@gmail.com>
Fri, 9 Dec 2016 13:28:10 +0000 (14:28 +0100)
server/sonar-server/src/main/java/org/sonar/server/ui/ws/ComponentNavigationAction.java
server/sonar-server/src/main/resources/org/sonar/server/ui/ws/example-component.json
server/sonar-server/src/test/resources/org/sonar/server/ui/ws/ComponentNavigationActionTest/return_bread_crumbs_on_several_levels.json
server/sonar-server/src/test/resources/org/sonar/server/ui/ws/ComponentNavigationActionTest/return_component_info_when_anonymous_no_snapshot.json
server/sonar-server/src/test/resources/org/sonar/server/ui/ws/ComponentNavigationActionTest/return_component_info_when_snapshot.json
server/sonar-server/src/test/resources/org/sonar/server/ui/ws/ComponentNavigationActionTest/return_component_info_with_favourite.json
server/sonar-web/src/main/js/app/components/ProjectContainer.js
server/sonar-web/src/main/js/app/components/nav/component/ComponentNav.js
server/sonar-web/src/main/js/app/components/nav/component/ComponentNavFavorite.js

index c19c8367b3e076396507acf7d502ee89ecb5d8cb..c7e3c2b170455fcac0f4cafa77110420853a50af 100644 (file)
@@ -141,7 +141,6 @@ public class ComponentNavigationAction implements NavigationWsAction {
       .prop("name", component.name())
       .prop("description", component.description())
       .prop("isComparable", componentTypeHasProperty(component, PROPERTY_COMPARABLE))
-      .prop("canBeFavorite", userSession.isLoggedIn())
       .prop("isFavorite", isFavourite(session, component));
 
     if (analysis != null) {
index 1778572c92a0ed7c967b82a66eb57b4235fc2f1d..85f2548c56014a9cb4de2528e2c14ae7dacaa669 100644 (file)
@@ -4,7 +4,6 @@
   "name": "Sonarqube",
   "description": "Open source platform for continuous inspection of code quality",
   "isComparable": true,
-  "canBeFavorite": true,
   "isFavorite": true,
   "version": "6.3",
   "snapshotDate": "2016-12-06T11:44:00+0200",
index 2b77dd2789abcf96321ca2e2430604f5b5173c61..d4563ff3cb004173afe4bb0d2cc1a7dda3c3e2cf 100644 (file)
@@ -4,7 +4,6 @@
   "name": "Polop",
   "description": "test project",
   "isComparable": false,
-  "canBeFavorite": false,
   "isFavorite": false,
   "snapshotDate": "2015-04-22T11:44:00+0200",
   "version": "3.14",
index 44d64f0cd9e516bbb42c529be89bfa179b159ea1..41eaec1e7dbb1a92e0337684cc8db64f2988b813 100644 (file)
@@ -40,8 +40,8 @@ class ProjectContainer extends React.Component {
   }
 
   render () {
-    // check `canBeFavorite` to be sure that /api/navigation/component has been already called
-    if (!this.props.project || this.props.project.canBeFavorite == null) {
+    // check `breadcrumbs` to be sure that /api/navigation/component has been already called
+    if (!this.props.project || this.props.project.breadcrumbs == null) {
       return null;
     }
 
index 5e3057b65ff0f3a908e79590dd2bd69dfcace1a9..689f4fc760f873c9cd64acd18e7a4fa774825380 100644 (file)
@@ -69,8 +69,7 @@ export default React.createClass({
             <div className="container">
               <ComponentNavFavorite
                   component={this.props.component.key}
-                  favorite={this.props.component.isFavorite}
-                  canBeFavorite={this.props.component.canBeFavorite}/>
+                  favorite={this.props.component.isFavorite}/>
 
               <ComponentNavBreadcrumbs
                   breadcrumbs={this.props.component.breadcrumbs}/>
index 9e9cb8bfe1d6e1800f8f06a0d6b7d6d4ec7bc12b..e5ac6b7cbe6b3f66b2fb6f117286e6c5338bca96 100644 (file)
  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 import React from 'react';
+import { connect } from 'react-redux';
 import Favorite from '../../../../components/controls/Favorite';
+import { getCurrentUser } from '../../../store/rootReducer';
 
-export default class ComponentNavFavorite extends React.Component {
+class ComponentNavFavorite extends React.Component {
   static propTypes = {
-    canBeFavorite: React.PropTypes.bool.isRequired
+    currentUser: React.PropTypes.object.isRequired
   };
 
   render () {
-    if (!this.props.canBeFavorite) {
+    if (!this.props.currentUser.isLoggedIn) {
       return null;
     }
 
@@ -39,3 +41,9 @@ export default class ComponentNavFavorite extends React.Component {
     );
   }
 }
+
+const mapStateToProps = state => ({
+  currentUser: getCurrentUser(state)
+});
+
+export default connect(mapStateToProps)(ComponentNavFavorite);