Skip to content
Snippets Groups Projects
Commit 666db15b authored by Lionel Morin's avatar Lionel Morin
Browse files

Translate and lint

parent 47196656
No related branches found
No related tags found
No related merge requests found
......@@ -15,11 +15,14 @@
},
"components": {
"ServiceDetails": {
"runServiceButtonLabel": "Lancer le service",
"favButtonLabelFav": "Ajouter à vos favoris",
"favButtonLabelNoFav": "Supprimer de vos favoris"
"runServiceButtonLabel": "Run this service",
"favButtonLabelFav": "Add to your favorites",
"favButtonLabelNoFav": "Remove from your favorites"
},
"TopBar": {
"sideMenuOpenLabel": "Open side menu",
"userMenuOpenLabel": "Open user menu",
"inputSearchLabel": "Search...",
"menuProfileLabel": "Profile",
"menuLogoutLabel": "Logout"
}
......@@ -51,10 +54,11 @@
"submitButtonLabel": "Sign Up",
"createError": "Error: impossible to create this account"
},
"ServiceDetails": {
"runServiceButtonLabel": "Run this service",
"favButtonLabelFav": "Add to your favorites",
"favButtonLabelNoFav": "Remove from your favorites"
"NotFound": { "backButtonLabel": "Back", "message": "Page not found !" },
"ServicesPage": {
"tabsLabel": "Services tabs",
"tabFavServicesLabel": "Favorite services",
"tabAllServicesLabel": "All services"
}
}
}
......@@ -20,6 +20,9 @@
"favButtonLabelNoFav": "Supprimer de vos favoris"
},
"TopBar": {
"sideMenuOpenLabel": "Ouvrir le menu latéral",
"userMenuOpenLabel": "Ouvrir le menu utilisateur",
"inputSearchLabel": "Rechercher...",
"menuProfileLabel": "Profil",
"menuLogoutLabel": "Se déconnecter"
}
......@@ -50,6 +53,15 @@
"structureLabel": "Structure de rattachement",
"submitButtonLabel": "Inscription",
"createError": "Erreur: problème lors de la création du compte"
},
"NotFound": {
"backButtonLabel": "Retour",
"message": "Page inexistante !"
},
"ServicesPage": {
"tabsLabel": "Onglet des services",
"tabFavServicesLabel": "Mes services favoris",
"tabAllServicesLabel": "Tous les services"
}
}
}
......@@ -45,21 +45,19 @@ export default function ServiceDetails({ service, favAction }) {
const handleFavorite = () => {
if (favAction === 'unfav') {
unfavService.call({ serviceId: service._id }, (err, res) => {
unfavService.call({ serviceId: service._id }, (err) => {
if (err) console.log('unable to remove service from favorites');
});
} else {
favService.call({ serviceId: service._id }, (err, res) => {
favService.call({ serviceId: service._id }, (err) => {
if (err) console.log('unable to set service as favorite');
});
}
};
const favButtonLabel = () => {
favAction === 'unfav'
? i18n.__('components.ServiceDetails.favButtonLabelNoFav')
: i18n.__('components.ServiceDetails.favButtonLabelFav');
};
const favButtonLabel = favAction === 'unfav'
? i18n.__('components.ServiceDetails.favButtonLabelNoFav')
: i18n.__('components.ServiceDetails.favButtonLabelFav');
return (
<Card className={classes.card}>
......
......@@ -131,8 +131,8 @@ export default function TopBar({ setDrawerOpen, drawerOpen, setSearchString }) {
open={isMenuOpen}
onClose={handleMenuClose}
>
<MenuItem onClick={handleMenuClose}>{i18n.__('components.ServiceDetails.menuProfileLabel')}</MenuItem>
<MenuItem onClick={handleLogout}>{i18n.__('components.ServiceDetails.menuLogoutLabel')}</MenuItem>
<MenuItem onClick={handleMenuClose}>{i18n.__('components.TopBar.menuProfileLabel')}</MenuItem>
<MenuItem onClick={handleLogout}>{i18n.__('components.TopBar.menuLogoutLabel')}</MenuItem>
</Menu>
);
......@@ -146,7 +146,7 @@ export default function TopBar({ setDrawerOpen, drawerOpen, setSearchString }) {
<Toolbar>
<IconButton
color="inherit"
aria-label="open drawer"
aria-label={i18n.__('components.TopBar.sideMenuOpenLabel')}
onClick={handleDrawerOpen}
edge="start"
className={clsx(classes.menuButton, drawerOpen && classes.hide)}
......@@ -159,13 +159,13 @@ export default function TopBar({ setDrawerOpen, drawerOpen, setSearchString }) {
<SearchIcon />
</div>
<InputBase
placeholder="Search…"
placeholder={i18n.__('components.TopBar.inputSearchLabel')}
classes={{
root: classes.inputRoot,
input: classes.inputInput,
}}
onChange={handleChangeSearch}
inputProps={{ 'aria-label': 'search' }}
inputProps={{ 'aria-label': i18n.__('components.TopBar.inputSearchLabel') }}
/>
</div>
<div className={classes.grow} />
......@@ -180,7 +180,7 @@ export default function TopBar({ setDrawerOpen, drawerOpen, setSearchString }) {
<div className={classes.sectionDesktop}>
<IconButton
edge="end"
aria-label="account of current user"
aria-label={i18n.__('components.TopBar.userMenuOpenLabel')}
aria-controls={menuId}
aria-haspopup="true"
onClick={handleProfileMenuOpen}
......
import React from 'react';
import { Meteor } from 'meteor/meteor';
import PropTypes from 'prop-types';
import {
BrowserRouter, Route, Switch, Redirect,
} from 'react-router-dom';
......@@ -14,7 +15,7 @@ export default function App() {
<Switch>
<Route path="/signin" component={SignLayout} />
<Route path="/signup" component={SignLayout} />
<ProtectedRoute path="/" component={MainLayout} />
<ProtectedRoute exact path="/" component={MainLayout} />
<Route component={NotFound} />
</Switch>
</div>
......@@ -40,3 +41,8 @@ const ProtectedRoute = ({ component: Component, ...rest }) => (
}}
/>
);
ProtectedRoute.propTypes = {
component: PropTypes.element.isRequired,
location: PropTypes.objectOf(PropTypes.any).isRequired,
};
import React from 'react';
import { Link } from 'react-router-dom';
import i18n from 'meteor/universe:i18n';
/** Render a Not Found page if the user enters a URL that doesn't match any route. */
export default function NotFound() {
return (
<div>
<h2>404 Page not found</h2>
<h2>{i18n.__('pages.NotFound.message')}</h2>
<p>
<Link to="/">Retour</Link>
<Link to="/">{i18n.__('pages.NotFound.backButtonLabel')}</Link>
</p>
</div>
);
......
......@@ -12,6 +12,7 @@ import Tabs from '@material-ui/core/Tabs';
import Tab from '@material-ui/core/Tab';
import Box from '@material-ui/core/Box';
import { CircularProgress } from '@material-ui/core';
import i18n from 'meteor/universe:i18n';
import ServiceDetails from '../components/ServiceDetails';
import Services from '../../api/services/services';
......@@ -118,10 +119,10 @@ function ServicesPage({ services, loading, searchString }) {
indicatorColor="primary"
textColor="primary"
variant="fullWidth"
aria-label="action tabs example"
aria-label={i18n.__('pages.ServicesPage.tabsLabel')}
>
<Tab label="Mes services" {...a11yProps(0)} />
<Tab label="Tous mes services" {...a11yProps(1)} />
<Tab label={i18n.__('pages.ServicesPage.tabFavServicesLabel')} {...a11yProps(0)} />
<Tab label={i18n.__('pages.ServicesPage.tabAllServicesLabel')} {...a11yProps(1)} />
</Tabs>
</AppBar>
{loading ? (
......
......@@ -314,6 +314,7 @@ export default function SignUp() {
onChange={handleChange}
labelWidth={labelWidth}
>
{/* FIXME : translate those items ? */}
<MenuItem value="">
<em>Aucune</em>
</MenuItem>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment