mirror of
https://github.com/SonarSource/sonarqube.git
synced 2024-09-13 15:45:52 +02:00
SONAR-8300 display special message when use has no favorite projects
This commit is contained in:
parent
271a84b5c2
commit
617497c27c
@ -21,8 +21,8 @@ import React from 'react';
|
||||
import ProjectsListContainer from './ProjectsListContainer';
|
||||
import ProjectsListFooterContainer from './ProjectsListFooterContainer';
|
||||
import PageSidebar from './PageSidebar';
|
||||
import NoProjects from './NoProjects';
|
||||
import { parseUrlQuery } from '../store/utils';
|
||||
import '../styles.css';
|
||||
|
||||
export default class AllProjects extends React.Component {
|
||||
static propTypes = {
|
||||
@ -58,7 +58,7 @@ export default class AllProjects extends React.Component {
|
||||
return (
|
||||
<div className="page-with-sidebar projects-page">
|
||||
<div className="page-main">
|
||||
<ProjectsListContainer/>
|
||||
<ProjectsListContainer noProjectsComponent={<NoProjects/>}/>
|
||||
<ProjectsListFooterContainer query={this.state.query}/>
|
||||
</div>
|
||||
<aside className="page-sidebar-fixed projects-sidebar">
|
||||
|
@ -19,7 +19,7 @@
|
||||
*/
|
||||
import React from 'react';
|
||||
import ProjectsListContainer from './ProjectsListContainer';
|
||||
import '../styles.css';
|
||||
import NoFavoriteProjects from './NoFavoriteProjects';
|
||||
|
||||
export default class FavoriteProjects extends React.Component {
|
||||
static propTypes = {
|
||||
@ -40,7 +40,7 @@ export default class FavoriteProjects extends React.Component {
|
||||
<div className="page-with-sidebar">
|
||||
<div className="page-main">
|
||||
<div className="projects-list-container">
|
||||
<ProjectsListContainer/>
|
||||
<ProjectsListContainer noProjectsComponent={<NoFavoriteProjects/>}/>
|
||||
</div>
|
||||
</div>
|
||||
<aside className="page-sidebar-fixed projects-sidebar"/>
|
||||
|
@ -0,0 +1,36 @@
|
||||
/*
|
||||
* 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 { Link } from 'react-router';
|
||||
import { translate } from '../../../helpers/l10n';
|
||||
|
||||
export default class NoFavoriteProjects extends React.Component {
|
||||
render () {
|
||||
return (
|
||||
<div className="projects-empty-list">
|
||||
<h3>{translate('projects.no_favorite_projects')}</h3>
|
||||
<p className="big-spacer-top">{translate('projects.no_favorite_projects.engagement')}</p>
|
||||
<p className="big-spacer-top">
|
||||
<Link to="/projects" className="button">{translate('projects.explore_projects')}</Link>
|
||||
</p>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
@ -0,0 +1,32 @@
|
||||
/*
|
||||
* 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';
|
||||
|
||||
export default class NoProjects extends React.Component {
|
||||
render () {
|
||||
return (
|
||||
<div className="projects-empty-list">
|
||||
<h3>{translate('projects.no_projects.1')}</h3>
|
||||
<p className="big-spacer-top">{translate('projects.no_projects.2')}</p>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
@ -19,11 +19,11 @@
|
||||
*/
|
||||
import React from 'react';
|
||||
import ProjectCardContainer from './ProjectCardContainer';
|
||||
import { translate } from '../../../helpers/l10n';
|
||||
|
||||
export default class ProjectsList extends React.Component {
|
||||
static propTypes = {
|
||||
projects: React.PropTypes.arrayOf(React.PropTypes.string),
|
||||
noProjectsComponent: React.PropTypes.element.isRequired
|
||||
};
|
||||
|
||||
render () {
|
||||
@ -40,10 +40,7 @@ export default class ProjectsList extends React.Component {
|
||||
<ProjectCardContainer key={projectKey} projectKey={projectKey}/>
|
||||
))
|
||||
) : (
|
||||
<div className="projects-empty-list">
|
||||
<h3>{translate('projects.no_projects.1')}</h3>
|
||||
<p className="big-spacer-top">{translate('projects.no_projects.2')}</p>
|
||||
</div>
|
||||
this.props.noProjectsComponent
|
||||
)}
|
||||
</div>
|
||||
);
|
||||
|
@ -890,6 +890,9 @@ projects._projects=projects
|
||||
projects.no_projects.1=We couldn't find any projects matching selected criteria.
|
||||
projects.no_projects.2=Try to change filters to get some results.
|
||||
projects.clear_all_filters=Clear All Filters
|
||||
projects.no_favorite_projects=You don't have any favorite projects yet.
|
||||
projects.no_favorite_projects.engagement=Discover and mark as favorites projects you are interested in to have a quick access to them.
|
||||
projects.explore_projects=Explore Projects
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@ -3125,16 +3128,3 @@ component_measures.legend.color_x=Color: {0}
|
||||
component_measures.legend.size_x=Size: {0}
|
||||
component_measures.x_of_y={0} of {1}
|
||||
component_measures.no_history=There is no historical data.
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
#
|
||||
# MY ACTIVITY
|
||||
#
|
||||
#------------------------------------------------------------------------------
|
||||
my_activity.my_issues=My Issues
|
||||
my_activity.last_week=Last Week
|
||||
my_activity.all_time=All Time
|
||||
my_activity.my_favorite_projects=My Favorite Projects
|
||||
my_activity.no_favorite_projects=You don't have any favorite projects yet.
|
||||
my_activity.no_favorite_projects.engagement=Discover and mark as favorites projects you are interested in to have a quick access to them.
|
||||
my_activity.explore_projects=Explore Projects
|
||||
|
Loading…
Reference in New Issue
Block a user