From 733548a996d5e66c740f59d313eb031ddfcc9116 Mon Sep 17 00:00:00 2001
From: cedricnjanga
Date: Mon, 25 Sep 2017 23:58:18 +0200
Subject: Refs #4603 : Add translations to React Timetable app
---
.../es6_browserified/time_tables/actions/index.js | 36 +++++++++++-----------
.../time_tables/components/ConfirmModal.js | 17 +++++-----
.../time_tables/components/ErrorModal.js | 15 +++++----
.../time_tables/components/Metas.js | 24 +++++++++------
.../time_tables/components/PeriodForm.js | 18 ++++++-----
.../time_tables/components/PeriodManager.js | 11 ++++---
.../time_tables/components/TagsSelect2.js | 10 ++++--
.../time_tables/components/TimeTableDay.js | 3 +-
.../time_tables/components/Timetable.js | 19 +++++++-----
.../es6_browserified/time_tables/containers/App.js | 11 ++++++-
app/views/time_tables/edit.html.slim | 2 +-
11 files changed, 99 insertions(+), 67 deletions(-)
(limited to 'app')
diff --git a/app/assets/javascripts/es6_browserified/time_tables/actions/index.js b/app/assets/javascripts/es6_browserified/time_tables/actions/index.js
index ba5d91568..361e89c36 100644
--- a/app/assets/javascripts/es6_browserified/time_tables/actions/index.js
+++ b/app/assets/javascripts/es6_browserified/time_tables/actions/index.js
@@ -1,19 +1,20 @@
const _ = require('lodash')
+const { I18n } = window
const actions = {
+ weekDays: (index) => {
+ return _.range(1, 8).map(n => I18n.time_tables.edit.metas.days[n])
+ },
strToArrayDayTypes: (str) =>{
- let weekDays = ['Di', 'Lu', 'Ma', 'Me', 'Je', 'Ve', 'Sa']
- return weekDays.map((day, i) => str.indexOf(day) !== -1)
+ return actions.weekDays().map(day => str.indexOf(day) !== -1)
},
- arrayToStrDayTypes: (arr) => {
- let weekDays = ['Di', 'Lu', 'Ma', 'Me', 'Je', 'Ve', 'Sa']
- let str = []
- arr.map((dayActive, i) => {
- if(dayActive){
- str.push(weekDays[i])
- }
- })
- return str.join(',')
+ arrayToStrDayTypes: (dayTypes) => {
+ let newDayTypes = dayTypes.reduce((arr, dayActive, i) => {
+ if (dayActive) arr.push(actions.weekDays()[i])
+ return arr
+ }, [])
+
+ return newDayTypes.join(',')
},
fetchingApi: () =>({
type: 'FETCH_API'
@@ -149,8 +150,8 @@ const actions = {
type : 'CLOSE_MODAL'
}),
monthName(strDate) {
- let monthList = ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"]
- var date = new Date(strDate)
+ let monthList = _.range(1,13).map(n => I18n.calendars.months[n])
+ let date = new Date(strDate)
return monthList[date.getMonth()]
},
getHumanDate(strDate, mLimit) {
@@ -219,7 +220,7 @@ const actions = {
let period = periods[i]
if (index !== i && !period.deleted) {
if (new Date(period.period_start) <= end && new Date(period.period_end) >= start) {
- error = 'Les périodes ne peuvent pas se chevaucher'
+ error = I18n.time_tables.edit.error_submit.periods_overlaps
break
}
}
@@ -233,7 +234,7 @@ const actions = {
for (let day of in_days) {
if (start <= new Date(day.date) && end >= new Date(day.date)) {
- error = 'Une période ne peut chevaucher une date dans un calendrier'
+ error = I18n.time_tables.edit.error_submit.dates_overlaps
break
}
}
@@ -241,7 +242,6 @@ const actions = {
},
fetchTimeTables: (dispatch, nextPage) => {
let urlJSON = window.location.pathname.split('/', 5).join('/')
- // console.log(nextPage)
if(nextPage) {
urlJSON += "/month.json?date=" + nextPage
}else{
@@ -310,9 +310,9 @@ const actions = {
errorModalMessage: (errorKey) => {
switch (errorKey) {
case "withoutPeriodsWithDaysTypes":
- return window.I18n.fr.time_tables.edit.error_modal.withoutPeriodsWithDaysTypes
+ return I18n.time_tables.edit.error_modal.withoutPeriodsWithDaysTypes
case "withPeriodsWithoutDayTypes":
- return window.I18n.fr.time_tables.edit.error_modal.withPeriodsWithoutDayTypes
+ return I18n.time_tables.edit.error_modal.withPeriodsWithoutDayTypes
default:
return errorKey
diff --git a/app/assets/javascripts/es6_browserified/time_tables/components/ConfirmModal.js b/app/assets/javascripts/es6_browserified/time_tables/components/ConfirmModal.js
index 40ae0eccf..674a03296 100644
--- a/app/assets/javascripts/es6_browserified/time_tables/components/ConfirmModal.js
+++ b/app/assets/javascripts/es6_browserified/time_tables/components/ConfirmModal.js
@@ -1,18 +1,17 @@
var React = require('react')
-var Component = require('react').Component
-var PropTypes = require('react').PropTypes
+var { PropTypes } = require('react')
-const ConfirmModal = ({dispatch, modal, onModalAccept, onModalCancel, timetable, metas}) => (
+const ConfirmModal = ({dispatch, modal, onModalAccept, onModalCancel, timetable, metas}, {I18n}) => (
-
Confirmation
+ {I18n.time_tables.edit.confirm_modal.title}
-
Vous vous apprêtez à changer de page. Voulez-vous valider vos modifications avant cela ?
+
{I18n.time_tables.edit.confirm_modal.message}
@@ -22,7 +21,7 @@ const ConfirmModal = ({dispatch, modal, onModalAccept, onModalCancel, timetable,
type='button'
onClick= {() => {onModalCancel(modal.confirmModal.callback)}}
>
- Ne pas valider
+ {I18n.cancel}
@@ -45,4 +44,8 @@ ConfirmModal.propTypes = {
onModalCancel: PropTypes.func.isRequired
}
+ConfirmModal.contextTypes = {
+ I18n: PropTypes.object
+}
+
module.exports = ConfirmModal
diff --git a/app/assets/javascripts/es6_browserified/time_tables/components/ErrorModal.js b/app/assets/javascripts/es6_browserified/time_tables/components/ErrorModal.js
index 4e8f7e363..2597a4870 100644
--- a/app/assets/javascripts/es6_browserified/time_tables/components/ErrorModal.js
+++ b/app/assets/javascripts/es6_browserified/time_tables/components/ErrorModal.js
@@ -1,15 +1,14 @@
var React = require('react')
-var Component = require('react').Component
-var PropTypes = require('react').PropTypes
-var errorModalMessage = require('../actions').errorModalMessage
+var { PropTypes } = require('react')
+var { errorModalMessage } = require('../actions')
-const ErrorModal = ({dispatch, modal, I18n, onModalClose}) => (
+const ErrorModal = ({dispatch, modal, onModalClose}, {I18n}) => (
-
{window.I18n.fr.time_tables.edit.error_modal.title}
+ {I18n.time_tables.edit.error_modal.title}
@@ -23,7 +22,7 @@ const ErrorModal = ({dispatch, modal, I18n, onModalClose}) => (
type='button'
onClick= {() => {onModalClose()}}
>
- Retour
+ {I18n.back}
@@ -37,4 +36,8 @@ ErrorModal.propTypes = {
onModalClose: PropTypes.func.isRequired
}
+ErrorModal.contextTypes = {
+ I18n: PropTypes.object
+}
+
module.exports = ErrorModal
diff --git a/app/assets/javascripts/es6_browserified/time_tables/components/Metas.js b/app/assets/javascripts/es6_browserified/time_tables/components/Metas.js
index a0fac84f3..26a96e4a6 100644
--- a/app/assets/javascripts/es6_browserified/time_tables/components/Metas.js
+++ b/app/assets/javascripts/es6_browserified/time_tables/components/Metas.js
@@ -1,9 +1,9 @@
var React = require('react')
-var PropTypes = require('react').PropTypes
-let weekDays = ['D', 'L', 'Ma', 'Me', 'J', 'V', 'S']
+var { PropTypes } = require('react')
+const { weekDays } = require('../actions')
var TagsSelect2 = require('./TagsSelect2')
-const Metas = ({metas, onUpdateDayTypes, onUpdateComment, onUpdateColor, onSelect2Tags, onUnselect2Tags}) => {
+const Metas = ({metas, onUpdateDayTypes, onUpdateComment, onUpdateColor, onSelect2Tags, onUnselect2Tags}, {I18n}) => {
let colorList = ["", "#9B9B9B", "#FFA070", "#C67300", "#7F551B", "#41CCE3", "#09B09C", "#3655D7", "#6321A0", "#E796C6", "#DD2DAA"]
return (
@@ -12,7 +12,7 @@ const Metas = ({metas, onUpdateDayTypes, onUpdateComment, onUpdateColor, onSelec
{/* comment (name) */}
-
+