👽 début de la traduction des simulateurs indeps

pull/510/head
Johan Girod 2019-04-03 17:40:18 +02:00
parent b226ed15c0
commit 1af9381141
4 changed files with 90 additions and 48 deletions

View File

@ -1,7 +1,13 @@
import { T } from 'Components'
import withLanguage from 'Components/utils/withLanguage'
import React, { useState } from 'react'
import emoji from 'react-easy-emoji'
export default function SimulateurWarning({ simulateur, autoFolded }) {
export default withLanguage(function SimulateurWarning({
simulateur,
autoFolded,
language
}) {
let [userFolded, userFold] = useState(undefined)
let folded = userFolded === undefined ? autoFolded : userFolded,
@ -11,11 +17,12 @@ export default function SimulateurWarning({ simulateur, autoFolded }) {
<div id="SimulateurWarning" style={{ marginBottom: '2em' }}>
<p>
{emoji('🚩 ')}
<strong>Outil en cours de développement </strong>
<strong>
<T k="simulateurs.warning.titre">Outil en cours de développement </T>
</strong>{' '}
{folded && (
<button className="ui__ button simple small" onClick={toggle}>
{' '}
(plus d'info)
<T k="simulateurs.warning.plus">(plus d'info)</T>
</button>
)}
</p>
@ -24,20 +31,26 @@ export default function SimulateurWarning({ simulateur, autoFolded }) {
<ul style={{ marginLeft: '1em' }}>
{simulateur !== 'auto-entreprise' && (
<li>
le chiffre d'affaires déduit des charges va à 100% dans la
rémunération du dirigeant
<T k="simulateurs.warning.line1">
le chiffre d'affaires déduit des charges va à 100% dans la
rémunération du dirigeant
</T>
</li>
)}
<li>
l'impôt sur le revenu est calculé pour un célibataire sans enfant
et sans autre revenu.{' '}
{simulateur == 'auto-entreprise' && (
<T k="simulateurs.warning.line2">
l'impôt sur le revenu est calculé pour un célibataire sans
enfant et sans autre revenu.
</T>{' '}
{simulateur == 'auto-entreprise' && language === 'fr' && (
<span>L'impôt libératoire n'est pas encore intégré.</span>
)}
</li>
<li>
les calculs sont indicatifs et ne se substituent pas aux décomptes
réels des Urssaf, impots.gouv.fr, etc
<T k="simulateurs.warning.line3">
les calculs sont indicatifs et ne se substituent pas aux
décomptes réels des Urssaf, impots.gouv.fr, etc
</T>
</li>
</ul>
)}
@ -45,11 +58,11 @@ export default function SimulateurWarning({ simulateur, autoFolded }) {
{!folded && (
<div style={{ textAlign: 'right', paddingRight: '1em' }}>
<button className="ui__ button simple small" onClick={toggle}>
J'ai compris
<T>J'ai compris</T>
</button>
</div>
)}
</div>
</div>
)
}
})

View File

@ -387,7 +387,7 @@ après:
intro: Once your <2>{{companyStatusChoice}}</2> has been successfully registered, you'll have access to the following
siret:
titre: The SIRET number
description: The SIREN number <1>identifies your company</1> while the SIRET number identifies each place of business operated by the same company. The SIRET is composed by the SIREN followed by the establishment number.
description: The SIREN number <1>identifies your company</1> while the SIRET number identifies each place of business operated by the same company. The SIRET is composed by the SIREN followed by the establishment number (NIC).
ape:
titre: The APE code
description: The APE code corresponds to the <1>business sector</1> of your company. The APE classifies your companys main operations in relation to the French business nomenclature system (« NAF » code). <3>It also determines the applicable collective agreement, and hints at the industrial accident rate of contribution that the company will have to pay for each hire.</3>
@ -412,6 +412,12 @@ sécu:
</1>
video: Social security explained visually
entrepriseCrée: If you already own a company, we can <2>automatically customize</2> your simulations to your situation. All you have to do is <5>enter the name of your company</5>.
choix:
titre: What do you want to estimate?
auto-entrepreneur: Estimate my remuneration as an auto-entrepreneur
dirigeant1: Your remuneration as a {{legalStatus}} director
dirigeant2: The director's remuneration
employée: An employee's salary
Votre entreprise: Your company
Ce n'est pas mon entreprise: This is not my company
@ -602,3 +608,13 @@ Simulations personnalisées: Customized simulations
indicationTempsPlein: in full-time gross salary equivalent
auto-entreprise: auto-enterprise
simulateurs:
warning:
titre: Tool under development
plus: (more info)
line1: the turnover deducted from expenses goes to 100% in the director's remuneration
line2: income tax is calculated for a single person without children and without other income.
line3: the figures are indicative and do not replace the actual accounts of the Urssaf, impots.gouv.fr, etc
J'ai compris: understood

View File

@ -1,17 +1,17 @@
/* @flow */
import { React, T } from 'Components';
import withSitePaths from 'Components/utils/withSitePaths';
import { compose } from 'ramda';
import { withTranslation } from 'react-i18next';
import { connect } from 'react-redux';
import { withRouter } from 'react-router';
import { NavLink } from 'react-router-dom';
import companySvg from '../../images/company.svg';
import estimateSvg from '../../images/estimate.svg';
import hiringSvg from '../../images/hiring.svg';
import './Navigation.css';
import NavOpener from './NavOpener';
import SideBar from './SideBar';
import { React, T } from 'Components'
import withSitePaths from 'Components/utils/withSitePaths'
import { compose } from 'ramda'
import { withTranslation } from 'react-i18next'
import { connect } from 'react-redux'
import { withRouter } from 'react-router'
import { NavLink } from 'react-router-dom'
import companySvg from '../../images/company.svg'
import estimateSvg from '../../images/estimate.svg'
import hiringSvg from '../../images/hiring.svg'
import './Navigation.css'
import NavOpener from './NavOpener'
import SideBar from './SideBar'
import type { TFunction } from 'react-i18next'
type OwnProps = {}
@ -168,11 +168,6 @@ const StepsHeader = ({ t, sitePaths, companyStatusChoice }: Props) => (
SASU
</NavLink>
</li>
<li>
<NavLink to={sitePaths.entreprise.créer('SNC')}>
SNC
</NavLink>
</li>
</ul>
</NavOpener>
</li>
@ -235,16 +230,18 @@ const StepsHeader = ({ t, sitePaths, companyStatusChoice }: Props) => (
<T>Auto-entrepreneur</T>
</NavLink>
</li>
{!['mycompanyinfrance.fr', 'mon-entreprise.fr'].includes(
window.location.hostname
) &&
<li>
<NavLink
exact
to={sitePaths.sécuritéSociale.comparaison}>
<T>Comparaison des régimes</T>
</NavLink>
</li>}
{![
'mycompanyinfrance.fr',
'mon-entreprise.fr'
].includes(window.location.hostname) && (
<li>
<NavLink
exact
to={sitePaths.sécuritéSociale.comparaison}>
<T>Comparaison des régimes</T>
</NavLink>
</li>
)}
</ul>
</NavOpener>
</li>

View File

@ -89,12 +89,16 @@ class SocialSecurity extends Component<Props, {}> {
<Link
className="ui__ button-choice "
to={sitePaths.sécuritéSociale['auto-entrepreneur']}>
{emoji('💶')} Estimer ma rémunération en tant
qu'auto-entrepreneur
{emoji('🚶')}{' '}
<T k="sécu.choix.auto-entrepreneur">
Estimer ma rémunération en tant qu'auto-entrepreneur
</T>
</Link>
) : (
<>
<h2>Que souhaitez-vous estimer ?</h2>
<h2>
<T k="sécu.choix.titre">Que souhaitez-vous estimer ?</T>
</h2>
<Link
className="ui__ button-choice "
to={
@ -102,13 +106,25 @@ class SocialSecurity extends Component<Props, {}> {
? sitePaths.sécuritéSociale[régime]
: sitePaths.sécuritéSociale.selection
}>
{emoji('👔')} Votre rémunération en tant que dirigeant
{régime && legalStatus && ` d'une ${legalStatus}`}
{emoji('💰')}{' '}
{legalStatus
? t(
[
'sécu.choix.dirigeant1',
`Votre rémunération en tant que dirigeant de {{legalStatus}}`
],
{ legalStatus: t(legalStatus) }
)
: t(
'sécu.choix.dirigeant2',
`La rémunération du dirigeant`
)}
</Link>
<Link
className="ui__ button-choice "
to={sitePaths.sécuritéSociale.salarié}>
{emoji('👥')} Le salaire d'un employé
{emoji('👥')}{' '}
<T k="sécu.choix.employé">Le salaire d'un employé</T>
</Link>
<br />
</>