diff --git a/packages/daheim-app-ui/src/components/ready/TimeToChoose.js b/packages/daheim-app-ui/src/components/ready/TimeToChoose.js
index 371680b..78d8772 100644
--- a/packages/daheim-app-ui/src/components/ready/TimeToChoose.js
+++ b/packages/daheim-app-ui/src/components/ready/TimeToChoose.js
@@ -1,6 +1,7 @@
import React, {PropTypes, Component} from 'react'
import {connect} from 'react-redux'
import RaisedButton from 'material-ui/RaisedButton'
+import {FormattedMessage} from 'react-intl'
import {switchRole} from '../../actions/profile'
import {connect as liveConnect} from '../../actions/live'
@@ -30,14 +31,14 @@ class TimeToChoose extends Component {
return (
-
Wer bist du?
+
-
Bist du Sprachschüler?
+
diff --git a/packages/daheim-app-ui/src/components/review/ReviewList.js b/packages/daheim-app-ui/src/components/review/ReviewList.js
index bff7001..25157fd 100644
--- a/packages/daheim-app-ui/src/components/review/ReviewList.js
+++ b/packages/daheim-app-ui/src/components/review/ReviewList.js
@@ -3,6 +3,7 @@ import moment from 'moment'
import {push} from 'react-router-redux'
import {connect} from 'react-redux'
import PureRenderMixin from 'react-addons-pure-render-mixin'
+import {FormattedMessage} from 'react-intl'
import LoadingPanel from '../LoadingPanel'
import {loadLessons} from '../../actions/lessons'
@@ -26,7 +27,8 @@ class ReviewList extends React.Component {
push: React.PropTypes.func.isRequired,
loadLessons: React.PropTypes.func.isRequired,
- loadUser: React.PropTypes.func.isRequired
+ loadUser: React.PropTypes.func.isRequired,
+ intl: PropTypes.object.isRequired
}
shouldComponentUpdate = PureRenderMixin.shouldComponentUpdate
@@ -84,20 +86,21 @@ class ReviewList extends React.Component {
return (
-
Vorherige Gespräche
+
{error ? (
- {error}. nochmal versuchen
+ {error}.
+
) : (
lessonList.data.length ? (
- | Datum |
+ |
|
- Partner |
- Länge |
- Feedback |
+ |
+ |
+ |
@@ -105,27 +108,29 @@ class ReviewList extends React.Component {
const lesson = lessons[lessonId].data
const handler = (e) => this.handleRowClick(e, lesson)
const partnerId = lesson.participants.find((id) => id !== profile.id)
- const partner = users[partnerId] || {fake: true, name: 'wird geladen...'}
+ const partner = users[partnerId] || {fake: true, name: this.props.intl.formatMessage({id: 'reviewList.loading'}) + '…'}
const partnerMeta = usersMeta[partnerId]
const partnerNotFound = partnerMeta && partnerMeta.error && partnerMeta.error.code === 'user_not_found'
if (partner.fake && partnerNotFound) {
- partner.name = 'Benuzter Konto abgeschlossen'
+ partner.name = this.props.intl.formatMessage({id: 'reviewList.userAccountClosed'})
}
return (
| {moment(lesson.createdTime).format('lll')} |
{partner.picture ? : ' '} |
- {partner.name ? partner.name : '[kein Name]'} |
+ {partner.name ? partner.name : } |
{this.msToString(lesson.duration)} |
- {!partner.fake && (partner.myReview ? 'Feedback fertig' : Feedback abgeben)} |
+ {!partner.fake && (partner.myReview
+ ?
+ : )} |
)
})}
) : (
- Du hast noch keine vorherige Lektionen.
+
)
)}
diff --git a/packages/daheim-app-ui/src/containers/LessonPage.js b/packages/daheim-app-ui/src/containers/LessonPage.js
index 5caaa64..b3bf500 100644
--- a/packages/daheim-app-ui/src/containers/LessonPage.js
+++ b/packages/daheim-app-ui/src/containers/LessonPage.js
@@ -1,5 +1,6 @@
import React, {PropTypes, Component} from 'react'
import {connect} from 'react-redux'
+import {FormattedMessage} from 'react-intl'
import RaisedButton from 'material-ui/RaisedButton'
import FlatButton from 'material-ui/FlatButton'
import CircularProgress from 'material-ui/CircularProgress'
@@ -31,7 +32,8 @@ class LessionPage extends React.Component {
static propTypes = {
lesson: PropTypes.object.isRequired,
leave: PropTypes.func.isRequired,
- join: PropTypes.func.isRequired
+ join: PropTypes.func.isRequired,
+ intl: PropTypes.object.isRequired
}
state = {
@@ -90,7 +92,7 @@ class LessionPage extends React.Component {
}
render () {
- const {lesson} = this.props
+ const {lesson, intl} = this.props
const {remoteStreamUrl, localStreamUrl} = lesson
const {remoteVideoWidth, remoteVideoHeight} = this.state
@@ -108,11 +110,11 @@ class LessionPage extends React.Component {
) : (
-
Du wirst verbunden...
+
)}
-
+
)
@@ -124,7 +126,8 @@ class NotParticipating extends Component {
static propTypes = {
lesson: PropTypes.object.isRequired,
leave: PropTypes.func.isRequired,
- join: PropTypes.func.isRequired
+ join: PropTypes.func.isRequired,
+ intl: PropTypes.object.isRequired
}
handleLeave = () => {
@@ -136,12 +139,13 @@ class NotParticipating extends Component {
}
render () {
+ const {intl} = this.props
return (
)
@@ -151,7 +155,8 @@ class NotParticipating extends Component {
class NotActive extends Component {
static propTypes = {
lesson: PropTypes.object.isRequired,
- leave: PropTypes.func.isRequired
+ leave: PropTypes.func.isRequired,
+ intl: PropTypes.object.isRequired
}
handleLeave = () => {
@@ -159,11 +164,12 @@ class NotActive extends Component {
}
render () {
+ const {intl} = this.props
return (
-
Waiting for student to connect...
+
-
+
)
diff --git a/packages/daheim-app-ui/src/intl/en.json b/packages/daheim-app-ui/src/intl/en.json
index d49228b..aecee02 100644
--- a/packages/daheim-app-ui/src/intl/en.json
+++ b/packages/daheim-app-ui/src/intl/en.json
@@ -80,6 +80,45 @@
"editProfile.back": "Back",
"editProfile.save": "Save",
"editProfile.pleaseWait": "Just a sec...",
+ "editProfile.lang.ar": "Arabisch",
+ "editProfile.lang.sq": "Albanisch",
+ "editProfile.lang.hy": "Armenisch",
+ "editProfile.lang.zh": "Chinesisch",
+ "editProfile.lang.prs": "Dari",
+ "editProfile.lang.en": "Englisch",
+ "editProfile.lang.fa": "Farsi",
+ "editProfile.lang.fr": "Französisch",
+ "editProfile.lang.gr": "Griechisch",
+ "editProfile.lang.hi": "Hindi",
+ "editProfile.lang.it": "Italienisch",
+ "editProfile.lang.hr": "Kroatisch",
+ "editProfile.lang.ku": "Kurdisch",
+ "editProfile.lang.ps": "Paschtu",
+ "editProfile.lang.pl": "Polnisch",
+ "editProfile.lang.pt": "Portugiesisch",
+ "editProfile.lang.ro": "Rumänisch",
+ "editProfile.lang.ru": "Russisch",
+ "editProfile.lang.es": "Spanisch",
+ "editProfile.lang.sr": "Serbisch",
+ "editProfile.lang.tr": "Türkisch",
+ "editProfile.topic.education": "Schule / Ausbildung",
+ "editProfile.topic.photography": "Fotographie",
+ "editProfile.topic.gaming": "Computerspiele",
+ "editProfile.topic.languages": "Sprachen",
+ "editProfile.topic.creative": "Kreatives",
+ "editProfile.topic.tech": "Technik",
+ "editProfile.topic.food": "Essen & Trinken",
+ "editProfile.topic.artAndCulture": "Kunst & Kultur",
+ "editProfile.topic.sports": "Sport",
+ "editProfile.topic.family": "Familie",
+ "editProfile.topic.literature": "Bücher",
+ "editProfile.topic.nature": "Natur",
+ "editProfile.topic.celebrities": "Prominente",
+ "editProfile.topic.music": "Musik",
+ "editProfile.topic.travelling": "Reisen",
+ "editProfile.topic.politics": "Politik",
+ "editProfile.topic.movies": "Filme & Serien",
+ "editProfile.topic.germanisms": "Typisch Deutsch",
"closeAccount.start": "Close Account",
"closeAccount.title": "Close Account",
@@ -118,5 +157,74 @@
"notificationSettings.sendTest": "Send Test Notification",
"notificationSettings.notSubscribed": "This device is NOT subscribed to receive notifications.",
"notificationSettings.subscribe": "Enable Notifications",
- "notificationSettings.description": "We can send you a notification when there is a suitable partner is available for a nice conversation. This way we can notify you even if the Daheim page is closed. Don't forget to open this page on your phone too to enable receiving notification on that device too."
+ "notificationSettings.description": "We can send you a notification when there is a suitable partner is available for a nice conversation. This way we can notify you even if the Daheim page is closed. Don't forget to open this page on your phone too to enable receiving notification on that device too.",
+
+ "notYetOpenPage.welcome": "Schön, dass du da bist!",
+ "notYetOpenPage.paragraph": "Je mehr Menschen gleichzeitig auf ‘Daheim’ sind, desto höher ist die Chance, dass viele nette Gespräche entstehen können.
Daher wäre es toll, wenn Du zunächst vor allem zu unseren
zwei festen Terminen auf 'Daheim' kommen würdest:
Jeden Mittwoch, zwischen 18 und 20 Uhrund
jeden Sonntag, zwischen 16 und 18 Uhrkönnt Ihr Euch hier treffen und unterhalten!
Wir wünschen Dir viel Spaß!
Dein 'Daheim'-Team",
+ "notYetOpenPage.dontWantToMissTheOfficialStart_signUpForNewsletter": "Du willst den offiziellen Start nicht verpassen? Melde dich für den Newsletter an:",
+ "notYetOpenPage.wantToBrowse_enjoy": "Du willst Dich trotzdem umschauen? Viel Spaß!",
+
+ "readyUsers.level": "Stufe: {level} / 5",
+ "readyUsers.letsGo": "Los geht's",
+ "readyUsers.studentsOnline": "SchülerInnen Online",
+ "readyUsers.studentsOffline": "Es tut uns leid, leider sind gerade keine passenden Gesprächspartner online.",
+
+ "reviewList.previousConversations": "Vorherige Gespräche",
+ "reviewList.retry": "nochmal versuchen",
+ "reviewList.date": "Datum",
+ "reviewList.partner": "Partner",
+ "reviewList.duration": "Länge",
+ "reviewList.feedback": "Feedback",
+ "reviewList.feedbackReady": "Feedback fertig",
+ "reviewList.postFeedback": "Feedback abgeben",
+ "reviewList.unnamed": "[kein Name]",
+ "reviewList.noPreviousLessons": "Du hast noch keine vorherige Lektionen.",
+ "reviewList.loading": "wird geladen",
+ "reviewList.userAccountClosed": "Benuzter Konto abgeschlossen",
+
+ "talkAbout.whatToTalkAbout": "Über was kann man reden?",
+ "talkAbout.alphabet": "...das Alphabet",
+ "talkAbout.weather": "...das Wetter",
+ "talkAbout.germany": "...Deutschland",
+ "talkAbout.federalStates": "die Bundesländer",
+ "talkAbout.capitalCityBerlin": "Hauptstadt Berlin",
+ "talkAbout.importantStuff": "...wichtige Dinge",
+ "talkAbout.refugeesWelcome": "Flüchtlinge Willkommen",
+ "talkAbout.eatAndDrink": "...Essen und Trinken",
+ "talkAbout.bread": "Brot",
+ "talkAbout.sausage": "Wurst",
+ "talkAbout.apple": "Apfel",
+
+ "proficiencyRating.level1": "Einige Wörter",
+ "proficiencyRating.level2": "Einige Sätze",
+ "proficiencyRating.level3": "Fähig, ein fließendes Gespräch über einfache Themen zu führen",
+ "proficiencyRating.level4": "Fähig, ein Gespräch über komplexe Themen zu führen",
+ "proficiencyRating.level5": "Deutsch-Profi",
+
+ "invitedToLesson.btnCancel": "Abbrechen",
+ "invitedToLesson.btnStart": "LOS GEHT'S",
+ "invitedToLesson.newConversation": "Neues Gespräch",
+
+ "closedLesson.conversationEnded": "Das Gespräch wurde beendet",
+ "closedLesson.reason": "Reason",
+
+ "sendReview.pleaseDropAFewLines": "Bitte schreib ein Paar Worte über {name}!",
+ "sendReview.germanLanguageKnowlegde": "Deutschkenntnis",
+ "sendReview.save": "Speichern",
+
+ "timeToChoose.whatAreYou": "Wer bist du?",
+ "timeToChoose.areYouStudent": "Bist du Sprachschüler?",
+ "timeToChoose.areYouCoach": "Bist du Sprachcoach?",
+
+ "startLesson.waitForPartner": "Warten auf Gesprächspartner",
+ "startLesson.studenDidNotAcceptLesson": "Student did not accept lesson",
+ "startLesson.btnGo": "los geht's",
+ "startLesson.btnCancel": "Abbrechen",
+ "startLesson.running": "Läuft...",
+
+ "lessonPage.endConversation": "Gespräch beenden",
+ "lessonPage.joinLesson": "Join Lesson",
+ "lessonPage.closeLesson": "Close Lesson",
+ "lessonPage.waitingForStudentToConnect": "Waiting for student to connect...",
+ "lessonPage.youAreBeingConnected": "Du wirst verbunden..."
}