From 3e5bb149b11ab4bbe393e6882cf41d1fe8a40679 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20Mau=C3=9F?= <lukas.mauss@mni.thm.de> Date: Mon, 15 Oct 2018 22:05:55 +0200 Subject: [PATCH] Internationalization and several fixes --- .../room-create/room-create.component.html | 10 ++-- .../content-choice-creator.component.html | 16 +++--- .../content-likert-creator.component.html | 6 +- .../content-text-creator.component.html | 8 +-- .../content-text-creator.component.ts | 4 +- .../content-text-participant.component.html | 8 +-- .../content-yes-no-creator.component.html | 8 +-- .../content-yes-no-creator.component.ts | 4 +- .../fragments/header/header.component.html | 2 +- .../fragments/header/header.component.ts | 2 +- .../fragments/login/login.component.ts | 6 +- .../room-join/room-join.component.html | 8 +-- .../comment-create-page.component.html | 9 ++- .../comment-create-page.component.scss | 4 ++ .../content-carousel-page.component.html | 1 - .../content-create-page.component.html | 2 +- .../home-creator-page.component.html | 2 +- .../room-creator-page.component.html | 26 ++++----- .../room-creator-page.component.scss | 1 + .../room-participant-page.component.html | 12 ++-- .../room-participant-page.component.ts | 9 ++- src/assets/i18n/de.json | 55 ++++++++++++++++++- src/assets/i18n/en.json | 53 +++++++++++++++++- 23 files changed, 183 insertions(+), 73 deletions(-) diff --git a/src/app/components/dialogs/room-create/room-create.component.html b/src/app/components/dialogs/room-create/room-create.component.html index 6cc22ab8e..18cbf3c04 100644 --- a/src/app/components/dialogs/room-create/room-create.component.html +++ b/src/app/components/dialogs/room-create/room-create.component.html @@ -2,8 +2,8 @@ <div fxLayout="column" fxLayoutAlign="center" fxLayoutGap="10px"> <mat-form-field> <input (keypress)="resetEmptyInputs()" matInput #longRoomName class="input-block" type="text" - placeholder="Room name" maxlength="50" [(ngModel)]="longName" name="roomName"/> - <mat-hint align="start" *ngIf="!emptyInputs"><strong>Max. letters / signs:</strong></mat-hint> + placeholder="{{ 'session.session-name' | translate}}" maxlength="50" [(ngModel)]="longName" name="roomName"/> + <mat-hint align="start" *ngIf="!emptyInputs"><strong>{{ 'session.max-ls' | translate}}</strong></mat-hint> <mat-hint align="end" *ngIf="!emptyInputs">{{longRoomName.value.length}} / 50</mat-hint> <mat-hint align="start" *ngIf="emptyInputs"><strong>Input is required</strong></mat-hint> <button mat-button *ngIf="longName" matSuffix mat-icon-button aria-label="Clear" (click)="longName=''"> @@ -12,15 +12,15 @@ </mat-form-field> <mat-form-field> <textarea (keypress)="resetEmptyInputs()" matInput #description type="text" - placeholder="Description" maxlength="255" name="description"></textarea> - <mat-hint align="start" *ngIf="!emptyInputs"><strong>Max. letters / signs:</strong></mat-hint> + placeholder="{{ 'session.description' | translate}}" maxlength="255" name="description"></textarea> + <mat-hint align="start" *ngIf="!emptyInputs"><strong>{{ 'session.max-ls' | translate}}</strong></mat-hint> <mat-hint align="end" *ngIf="!emptyInputs">{{description.value.length}} / 255</mat-hint> <mat-hint align="start" *ngIf="emptyInputs"><strong>Input is required</strong></mat-hint> <button mat-button *ngIf="shortName" matSuffix mat-icon-button aria-label="Clear" (click)="shortName=''"> <mat-icon>close</mat-icon> </button> </mat-form-field> - <button mat-raised-button color="primary" type="submit">Create room + <button mat-raised-button color="primary" type="submit">{{ 'session.create-session' | translate}} </button> </div> </form> diff --git a/src/app/components/fragments/content-choice-creator/content-choice-creator.component.html b/src/app/components/fragments/content-choice-creator/content-choice-creator.component.html index 068ed6156..49160fd9e 100644 --- a/src/app/components/fragments/content-choice-creator/content-choice-creator.component.html +++ b/src/app/components/fragments/content-choice-creator/content-choice-creator.component.html @@ -1,10 +1,10 @@ <form (ngSubmit)="submitContent(subject.value, body.value)" fxLayout="column" fxLayoutGap="20px"> <mat-form-field class="input-block"> - <input matInput #subject [(ngModel)]="content.subject" placeholder="Subject" name="subject"> + <input matInput #subject [(ngModel)]="content.subject" placeholder="{{ 'content.subject' | translate }}" name="subject"> </mat-form-field> <app-markdown-toolbar textareaId="content-choice-body"></app-markdown-toolbar> <mat-form-field class="input-block"> - <textarea matInput #body id="content-choice-body" [(ngModel)]="content.body" placeholder="Body" name="body" + <textarea matInput #body id="content-choice-body" [(ngModel)]="content.body" placeholder="{{ 'content.body' | translate }}" name="body" matTextareaAutosize matAutosizeMinRows="3" matAutosizeMaxRows="8"></textarea> </mat-form-field> <markdown [data]="content.body"></markdown> @@ -22,7 +22,7 @@ <mat-table #table [dataSource]="displayAnswers"> <ng-container matColumnDef="label"> - <mat-header-cell *matHeaderCellDef>Answer</mat-header-cell> + <mat-header-cell *matHeaderCellDef>{{ 'content.answer' | translate }}</mat-header-cell> <mat-cell *matCellDef="let answer"> <!-- ToDo: Check ngModel --> <mat-checkbox color="primary" (click)="switchValue(answer.answerOption.label)" [(ngModel)]="answer.correct" @@ -33,7 +33,7 @@ </ng-container> <ng-container matColumnDef="actions"> - <mat-header-cell *matHeaderCellDef>Actions</mat-header-cell> + <mat-header-cell *matHeaderCellDef>{{ 'content.actions' | translate }}</mat-header-cell> <mat-cell *matCellDef="let answer"> <button mat-icon-button (click)="openAnswerModificationDialog($event, answer.answerOption.label, answer.correct)" @@ -53,16 +53,16 @@ <div fxLayout="row" fxLayoutAlign="center" fxLayoutGap="50px"> <mat-form-field class="input-block"> - <input matInput #answerLabel [(ngModel)]="newAnswerOptionLabel" placeholder="Answer" name="answer"> + <input matInput #answerLabel [(ngModel)]="newAnswerOptionLabel" placeholder="{{ 'content.answer' | translate }}" name="answer"> </mat-form-field> <button mat-button type="button" (click)="addAnswer($event); answerLabel.value = '';"> - Add Answer + {{ 'content.add-answer' | translate }} </button> </div> <div *ngIf="!editDialogMode" fxLayout="row" fxLayoutAlign="center" fxLayoutGap="50px"> - <button mat-raised-button type="submit" color="primary">Submit</button> - <button mat-raised-button (click)="reset($event)" color="primary">Reset</button> + <button mat-raised-button type="submit" color="primary">{{ 'content.create' | translate }}</button> + <button mat-raised-button (click)="reset($event)" color="primary">{{ 'content.reset' | translate }}</button> <button mat-raised-button *ngIf="lastDeletedDisplayAnswer" (click)="recoverDeletedAnswer($event)" color="primary"> Undo deletion diff --git a/src/app/components/fragments/content-likert-creator/content-likert-creator.component.html b/src/app/components/fragments/content-likert-creator/content-likert-creator.component.html index 29748e8b1..3ce98bc34 100644 --- a/src/app/components/fragments/content-likert-creator/content-likert-creator.component.html +++ b/src/app/components/fragments/content-likert-creator/content-likert-creator.component.html @@ -1,9 +1,9 @@ <form (ngSubmit)="submitContent()"> <mat-form-field class="input-block"> - <input matInput #subject [(ngModel)]="content.subject" placeholder="Subject" name="subject"> + <input matInput #subject [(ngModel)]="content.subject" placeholder="{{ 'content.subject' | translate }}" name="subject"> </mat-form-field> <mat-form-field class="input-block"> - <textarea matInput #body [(ngModel)]="content.body" placeholder="Body" name="body"></textarea> + <textarea matInput #body [(ngModel)]="content.body" placeholder="{{ 'content.body' | translate }}" name="body"></textarea> </mat-form-field> <mat-divider></mat-divider> @@ -21,7 +21,7 @@ <mat-row *matRowDef="let row; columns: displayedColumns;"></mat-row> </mat-table> <div *ngIf="!editDialogMode"> - <button mat-raised-button type="submit" color="primary">Submit</button> + <button mat-raised-button type="submit" color="primary">{{ 'content.create' | translate }}</button> </div> <div *ngIf="editDialogMode"> <button mat-raised-button (click)="editDialogClose($event,'edit')" color="primary">Update</button> diff --git a/src/app/components/fragments/content-text-creator/content-text-creator.component.html b/src/app/components/fragments/content-text-creator/content-text-creator.component.html index c34b1f785..c8deb0471 100644 --- a/src/app/components/fragments/content-text-creator/content-text-creator.component.html +++ b/src/app/components/fragments/content-text-creator/content-text-creator.component.html @@ -1,16 +1,16 @@ <form (ngSubmit)="submitContent(subject.value, body.value, group.value)"> <mat-form-field class="input-block"> - <input matInput #subject [(ngModel)]="content.subject" placeholder="Subject" name="subject"> + <input matInput #subject [(ngModel)]="content.subject" placeholder="{{'content.subject' | translate}}" name="subject"> </mat-form-field> <app-markdown-toolbar textareaId="content-text-body"></app-markdown-toolbar> <mat-form-field class="input-block"> - <textarea matInput #body id="content-text-body" [(ngModel)]="content.body" placeholder="Body" name="body" + <textarea matInput #body id="content-text-body" [(ngModel)]="content.body" placeholder="{{'content.body' | translate}}" name="body" matTextareaAutosize matAutosizeMinRows="3" matAutosizeMaxRows="8"></textarea> </mat-form-field> <markdown [data]="content.body"></markdown> <mat-form-field> <input matInput #group matInput [formControl]="myControl" [matAutocomplete]="auto" - value={{lastCollection}} placeholder="Collection"/> + value={{lastCollection}} placeholder="{{'content.collection' | translate}}"/> <mat-autocomplete #auto="matAutocomplete"> <mat-option *ngFor="let collection of filteredOptions | async" [value]="collection"> {{collection}} @@ -18,7 +18,7 @@ </mat-autocomplete> </mat-form-field> <div fxLayout="row" fxLayoutAlign="center" fxLayoutGap="5px" *ngIf="!editDialogMode"> - <button mat-raised-button type="submit" color="primary">Submit</button> + <button mat-raised-button type="submit" color="primary">{{'content.create' | translate}}</button> </div> <div *ngIf="editDialogMode"> <button mat-raised-button (click)="editDialogClose($event,'edit')" color="primary">Update</button> diff --git a/src/app/components/fragments/content-text-creator/content-text-creator.component.ts b/src/app/components/fragments/content-text-creator/content-text-creator.component.ts index 957194e5f..b50006cfc 100644 --- a/src/app/components/fragments/content-text-creator/content-text-creator.component.ts +++ b/src/app/components/fragments/content-text-creator/content-text-creator.component.ts @@ -67,7 +67,7 @@ export class ContentTextCreatorComponent implements OnInit { resetAfterSubmit() { this.content.subject = ''; this.content.body = ''; - this.notificationService.show('Content submitted. Ready for creation of new content.'); + this.notificationService.show('Frage erstellt.'); } submitContent(subject: string, body: string, group: string) { @@ -81,7 +81,7 @@ export class ContentTextCreatorComponent implements OnInit { [group], )).subscribe(); if (this.content.body.valueOf() === '' || this.content.body.valueOf() === '') { - this.notificationService.show('No empty fields allowed. Please check subject and body.'); + this.notificationService.show('Keine leeren Felder erlaubt. Bitte kontrollieren sie Thema und Inhalt.'); return; } sessionStorage.setItem('collection', group); diff --git a/src/app/components/fragments/content-text-participant/content-text-participant.component.html b/src/app/components/fragments/content-text-participant/content-text-participant.component.html index 054b96dcb..fd8e3c09e 100644 --- a/src/app/components/fragments/content-text-participant/content-text-participant.component.html +++ b/src/app/components/fragments/content-text-participant/content-text-participant.component.html @@ -3,13 +3,13 @@ <markdown [data]="content.body"></markdown> <mat-divider></mat-divider> <mat-form-field class="input-block"> - <textarea matInput [(ngModel)]="textAnswer" name="answer" #answer placeholder="Your answer"></textarea> + <textarea matInput [(ngModel)]="textAnswer" name="answer" #answer placeholder="{{ 'answer.your-answer' | translate }}"></textarea> </mat-form-field> <div fxLayout fxLayoutGap="5px" fxAlign="row"> - <button mat-raised-button type="submit" color="primary">Submit</button> - <button mat-raised-button (click)="abstain($event)" color="primary">Abstain</button> + <button mat-raised-button type="submit" color="primary">{{ 'answer.submit' | translate }}</button> + <button mat-raised-button (click)="abstain($event)" color="primary">{{ 'answer.abstain' | translate }}</button> <mat-chip-list *ngIf="isAnswerSent"> - <mat-chip color="primary" selected="true">Answer sent</mat-chip> + <mat-chip color="primary" selected="true">{{ 'answer.sent' | translate }}</mat-chip> </mat-chip-list> </div> </form> diff --git a/src/app/components/fragments/content-yes-no-creator/content-yes-no-creator.component.html b/src/app/components/fragments/content-yes-no-creator/content-yes-no-creator.component.html index 789031a51..5d81a65c6 100644 --- a/src/app/components/fragments/content-yes-no-creator/content-yes-no-creator.component.html +++ b/src/app/components/fragments/content-yes-no-creator/content-yes-no-creator.component.html @@ -1,16 +1,16 @@ <form (ngSubmit)="submitContent()"> <mat-form-field class="input-block"> - <input matInput #subject [(ngModel)]="content.subject" placeholder="Subject" name="subject"> + <input matInput #subject [(ngModel)]="content.subject" placeholder="{{ 'content.subject' | translate }}" name="subject"> </mat-form-field> <mat-form-field class="input-block"> - <textarea matInput #body [(ngModel)]="content.body" placeholder="Body" name="body"></textarea> + <textarea matInput #body [(ngModel)]="content.body" placeholder="{{ 'content.body' | translate }}" name="body"></textarea> </mat-form-field> <mat-divider></mat-divider> <mat-table #table [dataSource]="displayAnswers"> <ng-container matColumnDef="label"> - <mat-header-cell *matHeaderCellDef>Answer</mat-header-cell> + <mat-header-cell *matHeaderCellDef>{{ 'content.answer' | translate }}</mat-header-cell> <mat-cell *matCellDef="let answer"> <!-- ToDo: Check ngModel --> <mat-checkbox (click)="setCorrect($event ,answer.answerOption.label)" color="primary" [(ngModel)]="answer.correct" [checked]="answer.correct" @@ -24,7 +24,7 @@ </mat-table> <mat-divider></mat-divider> <div *ngIf="!editDialogMode"> - <button mat-raised-button type="submit" color="primary">Submit</button> + <button mat-raised-button type="submit" color="primary">{{ 'content.create' | translate }}</button> </div> <div *ngIf="editDialogMode"> <button mat-raised-button (click)="editDialogClose($event,'edit')" color="primary">Update</button> diff --git a/src/app/components/fragments/content-yes-no-creator/content-yes-no-creator.component.ts b/src/app/components/fragments/content-yes-no-creator/content-yes-no-creator.component.ts index afd0d9cde..00c4e9dba 100644 --- a/src/app/components/fragments/content-yes-no-creator/content-yes-no-creator.component.ts +++ b/src/app/components/fragments/content-yes-no-creator/content-yes-no-creator.component.ts @@ -17,8 +17,8 @@ import { ContentDeleteComponent } from '../../dialogs/content-delete/content-del }) export class ContentYesNoCreatorComponent implements OnInit { answerLabels = [ - 'yes', - 'no' + 'Ja', + 'Nein' ]; content: ContentChoice = new ContentChoice( '0', diff --git a/src/app/components/fragments/header/header.component.html b/src/app/components/fragments/header/header.component.html index 07bd248fa..2463b3a1d 100644 --- a/src/app/components/fragments/header/header.component.html +++ b/src/app/components/fragments/header/header.component.html @@ -23,7 +23,7 @@ </mat-menu> <button *ngIf="user" mat-button [matMenuTriggerFor]="appMenu"> <mat-icon>account_box</mat-icon> - <span *ngIf="user.isGuest; else elseBlock">Guest</span> + <span *ngIf="user.isGuest; else elseBlock">{{ 'header.guest' | translate }}</span> <ng-template #elseBlock>{{user.loginId}}</ng-template> </button> </mat-toolbar-row> diff --git a/src/app/components/fragments/header/header.component.ts b/src/app/components/fragments/header/header.component.ts index 21c751daf..235cb980e 100644 --- a/src/app/components/fragments/header/header.component.ts +++ b/src/app/components/fragments/header/header.component.ts @@ -21,7 +21,7 @@ export class HeaderComponent implements OnInit { public router: Router, private translationService: TranslateService) { - translationService.setDefaultLang('en'); + translationService.setDefaultLang('de'); } ngOnInit() { diff --git a/src/app/components/fragments/login/login.component.ts b/src/app/components/fragments/login/login.component.ts index 753630622..3cdca3e10 100644 --- a/src/app/components/fragments/login/login.component.ts +++ b/src/app/components/fragments/login/login.component.ts @@ -2,7 +2,7 @@ import { Component, Input, OnInit, OnChanges, SimpleChanges } from '@angular/cor import { AuthenticationService } from '../../../services/http/authentication.service'; import { Router } from '@angular/router'; import { NotificationService } from '../../../services/util/notification.service'; -import { ErrorStateMatcher, MatDialog} from '@angular/material'; +import { ErrorStateMatcher, MatDialog } from '@angular/material'; import { FormControl, FormGroupDirective, NgForm, Validators } from '@angular/forms'; import { UserRole } from '../../../models/user-roles.enum'; import { TranslateService } from '@ngx-translate/core'; @@ -93,7 +93,9 @@ export class LoginComponent implements OnInit, OnChanges { private checkLogin(loginSuccessful: string) { if (loginSuccessful === 'true') { - this.notificationService.show('Login successful!'); + this.translationService.get('login.login-successful').subscribe(message => { + this.notificationService.show(message); + }); if (this.role === UserRole.CREATOR) { this.router.navigate(['creator']); } else { diff --git a/src/app/components/fragments/room-join/room-join.component.html b/src/app/components/fragments/room-join/room-join.component.html index 34f130104..fc310bd0e 100644 --- a/src/app/components/fragments/room-join/room-join.component.html +++ b/src/app/components/fragments/room-join/room-join.component.html @@ -1,15 +1,15 @@ <form (ngSubmit)="joinRoom(roomId.value)"> <div fxLayout="row" fxLayoutAlign="center" fxLayoutGap="10px"> <mat-form-field class="input-block"> - <input matInput #roomId placeholder="Room-Id" [formControl]="roomFormControl" + <input matInput #roomId placeholder="{{ 'home-page.session-id' | translate}}" [formControl]="roomFormControl" [errorStateMatcher]="matcher" maxlength="8"/> <mat-hint align="end">{{roomId.value.length}} / 8</mat-hint> - <mat-error *ngIf="roomFormControl.hasError('required')">Please enter a room-id.</mat-error> - <mat-error *ngIf="roomFormControl.hasError('minlength')">A room-id has exactly 8 digits.</mat-error> + <mat-error *ngIf="roomFormControl.hasError('required')">{{ 'home-page.please-enter' | translate}}</mat-error> + <mat-error *ngIf="roomFormControl.hasError('minlength')">{{ 'home-page.exactly-8' | translate}}</mat-error> </mat-form-field> <button mat-fab color="primary" type="submit"> <mat-icon>input</mat-icon> </button> </div> </form> -<button mat-button color="primary" (click)="joinDemo()">Join demo room <mat-icon>lightbulb_outline</mat-icon></button> +<button mat-button color="primary" (click)="joinDemo()">{{ 'home-page.join-demo-session' | translate}}<mat-icon>lightbulb_outline</mat-icon></button> diff --git a/src/app/components/pages/comment-create-page/comment-create-page.component.html b/src/app/components/pages/comment-create-page/comment-create-page.component.html index b27e4dff4..8533f2989 100644 --- a/src/app/components/pages/comment-create-page/comment-create-page.component.html +++ b/src/app/components/pages/comment-create-page/comment-create-page.component.html @@ -2,15 +2,14 @@ <div fxLayout="row" fxLayoutAlign="center"> <form> <mat-form-field class="input-block"> - <input matInput #commentSubject type="text" maxlength="24" placeholder="Choose a title"> + <input matInput #commentSubject type="text" maxlength="24" placeholder="{{ 'comment-page.enter-title' | translate}}"> </mat-form-field> <mat-form-field class="input-block"> <input matInput #commentBody> - <textarea matInput placeholder="Add your comment"></textarea> + <textarea matInput></textarea> </mat-form-field> - - <button mat-raised-button color="primary" (click)="goBack()">Back</button> - <button mat-raised-button color="primary" (click)="send(commentSubject.value, commentBody.value)">Send</button> + <button mat-raised-button color="primary" (click)="goBack()">{{ 'comment-page.back' | translate}}</button> + <button mat-raised-button color="primary" (click)="send(commentSubject.value, commentBody.value)">{{ 'comment-page.send' | translate}}</button> </form> </div> <div fxLayout="row" fxLayoutAlign="center"> diff --git a/src/app/components/pages/comment-create-page/comment-create-page.component.scss b/src/app/components/pages/comment-create-page/comment-create-page.component.scss index 4f2d9ebe5..84b591c72 100644 --- a/src/app/components/pages/comment-create-page/comment-create-page.component.scss +++ b/src/app/components/pages/comment-create-page/comment-create-page.component.scss @@ -9,3 +9,7 @@ app-comment-list { width: 100%; max-width: 800px; } + +button { + margin-right: 20px; +} diff --git a/src/app/components/pages/content-carousel-page/content-carousel-page.component.html b/src/app/components/pages/content-carousel-page/content-carousel-page.component.html index 9a6273a46..515187837 100644 --- a/src/app/components/pages/content-carousel-page/content-carousel-page.component.html +++ b/src/app/components/pages/content-carousel-page/content-carousel-page.component.html @@ -1,7 +1,6 @@ <div fxLayout="column" fxLayoutAlign="center" fxLayoutGap="20px" fxFill> <div fxLayout="row" fxLayoutAlign="center"> <mat-tab-group> - <mat-tab *ngFor="let content of contents" label="{{content.subject}}"> <app-content-choice-participant [content]="content" *ngIf="content.format === ContentType.CHOICE"></app-content-choice-participant> diff --git a/src/app/components/pages/content-create-page/content-create-page.component.html b/src/app/components/pages/content-create-page/content-create-page.component.html index ff136f427..5f864effe 100644 --- a/src/app/components/pages/content-create-page/content-create-page.component.html +++ b/src/app/components/pages/content-create-page/content-create-page.component.html @@ -16,7 +16,7 @@ <app-content-likert-creator></app-content-likert-creator> </div> </mat-tab> - <mat-tab label="Yes / No"> + <mat-tab label="{{ 'content.yes' | translate }} / {{ 'content.no' | translate }}"> <div class="tab-container"> <app-content-yes-no-creator></app-content-yes-no-creator> </div> diff --git a/src/app/components/pages/home-creator-page/home-creator-page.component.html b/src/app/components/pages/home-creator-page/home-creator-page.component.html index 7c6b46735..5b22e036f 100644 --- a/src/app/components/pages/home-creator-page/home-creator-page.component.html +++ b/src/app/components/pages/home-creator-page/home-creator-page.component.html @@ -1,6 +1,6 @@ <div fxLayout="column" fxLayoutAlign="start" fxLayoutGap="20px" fxFill> <div fxLayout="row" fxLayoutAlign="center" fxLayoutGap="5px"> - <button mat-raised-button color="primary" (click)="openCreateRoomDialog()">Neuen Raum erstellen</button> + <button mat-raised-button color="primary" (click)="openCreateRoomDialog()">{{ 'home-page.create-session' | translate }}</button> </div> <div fxLayout="row" fxLayoutAlign="center"> <app-room-list></app-room-list> diff --git a/src/app/components/pages/room-creator-page/room-creator-page.component.html b/src/app/components/pages/room-creator-page/room-creator-page.component.html index 4abdfef3d..fa439d978 100644 --- a/src/app/components/pages/room-creator-page/room-creator-page.component.html +++ b/src/app/components/pages/room-creator-page/room-creator-page.component.html @@ -19,31 +19,31 @@ </p> </mat-card-content> <mat-divider></mat-divider> - <mat-divider></mat-divider> <mat-card-actions> - <button mat-button color="primary" matTooltip="Create new content" + <button mat-button color="primary" fxFlex="33%" routerLink="/creator/room/{{ room.shortId }}/create-content"> - Create content + {{ 'room-page.create-content' | translate }} </button> - <button mat-button color="primary" matTooltip="See room comments" + <button mat-button color="primary" fxFlex="33%" routerLink="/creator/room/{{ room.shortId }}/comments"> - Comments + {{ 'room-page.comments' | translate }} </button> - <button mat-button color="primary" matTooltip="See feedback" + <button mat-button color="primary" fxFlex="33%" routerLink="/creator/room/{{ room.shortId }}/feedback-barometer"> - Feedback barometer + {{ 'room-page.live-feedback' | translate }} </button> - <button mat-button color="primary" matTooltip="See answer statistics" + <button mat-button color="primary" fxFlex="33%" routerLink="/creator/room/{{ room.shortId }}/statistics"> - Answer statistics + {{ 'room-page.answer-statistics' | translate }} </button> - <button *ngIf="!modify" (click)="showEditDialog()" mat-button color="primary"> - Edit room + <button *ngIf="!modify" fxFlex="33%" (click)="showEditDialog()" mat-button color="primary"> + {{ 'room-page.edit-room' | translate }} </button> - <button mat-button color="warn" (click)="openDeletionRoomDialog()"> - Delete room + <button mat-button color="warn" fxFlex="33%" (click)="openDeletionRoomDialog()"> + {{ 'room-page.delete-room' | translate }} </button> </mat-card-actions> + <mat-divider></mat-divider> <app-content-groups *ngIf="room" [contentGroups]="room.contentGroups"></app-content-groups> </mat-card> <div *ngIf="!isLoading && !room">Error: room could not be found!</div> diff --git a/src/app/components/pages/room-creator-page/room-creator-page.component.scss b/src/app/components/pages/room-creator-page/room-creator-page.component.scss index 329ef2c52..6bf53eb81 100644 --- a/src/app/components/pages/room-creator-page/room-creator-page.component.scss +++ b/src/app/components/pages/room-creator-page/room-creator-page.component.scss @@ -4,4 +4,5 @@ mat-card { mat-card-content > :first-child { margin-top: 16px; + margin-bottom: 16px; } diff --git a/src/app/components/pages/room-participant-page/room-participant-page.component.html b/src/app/components/pages/room-participant-page/room-participant-page.component.html index 53cbfa730..9a925f4e8 100644 --- a/src/app/components/pages/room-participant-page/room-participant-page.component.html +++ b/src/app/components/pages/room-participant-page/room-participant-page.component.html @@ -15,24 +15,24 @@ <mat-divider></mat-divider> <mat-grid-list cols="2" rowHeight="2:1"> <mat-grid-tile> - <button mat-icon-button color="primary" matTooltip="Create comment" + <button mat-icon-button color="primary" matTooltip="{{ 'room-page.create-comment' | translate}}" routerLink="/participant/room/{{ room.id }}/create-comment"> <mat-icon>question_answer</mat-icon> </button> </mat-grid-tile> <mat-grid-tile> - <button mat-icon-button color="primary" matTooltip="Give feedback" + <button mat-icon-button color="primary" matTooltip="{{ 'room-page.give-feedback' | translate}}" routerLink="/participant/room/{{ room.id }}/feedback-barometer"> <mat-icon>thumbs_up_down</mat-icon> </button> </mat-grid-tile> </mat-grid-list> <mat-nav-list> - <mat-list-item matTooltip="See room comments"> - Comments + <mat-list-item> + {{ 'room-page.comments' | translate }} </mat-list-item> - <mat-list-item matTooltip="Join question round"> - Learn + <mat-list-item> + {{ 'room-page.learn' | translate }} </mat-list-item> <app-content-groups *ngIf="room" [contentGroups]="room.contentGroups"></app-content-groups> </mat-nav-list> diff --git a/src/app/components/pages/room-participant-page/room-participant-page.component.ts b/src/app/components/pages/room-participant-page/room-participant-page.component.ts index 0b358b710..cb7eeaa6f 100644 --- a/src/app/components/pages/room-participant-page/room-participant-page.component.ts +++ b/src/app/components/pages/room-participant-page/room-participant-page.component.ts @@ -2,7 +2,7 @@ import { Component, OnInit } from '@angular/core'; import { Room } from '../../../models/room'; import { Location } from '@angular/common'; import { RoomService } from '../../../services/http/room.service'; -import { ActivatedRoute } from '@angular/router'; +import { ActivatedRoute, Router } from '@angular/router'; @Component({ selector: 'app-room-participant-page', @@ -16,7 +16,8 @@ export class RoomParticipantPageComponent implements OnInit { constructor(private location: Location, private roomService: RoomService, - private route: ActivatedRoute) { + private route: ActivatedRoute, + private router: Router) { } ngOnInit() { @@ -32,4 +33,8 @@ export class RoomParticipantPageComponent implements OnInit { this.isLoading = false; }); } + + /*goToComments(): void { + this.router.navigate([`/participant/room/${this.room.shortId}/comments`]); + }*/ } diff --git a/src/assets/i18n/de.json b/src/assets/i18n/de.json index 40d47a81f..b0c14fe1b 100644 --- a/src/assets/i18n/de.json +++ b/src/assets/i18n/de.json @@ -2,7 +2,8 @@ "header": { "english": "English", "german": "Deutsch", - "logout": "Abmelden" + "logout": "Abmelden", + "guest": "Gast" }, "login-page": { "creator": "Autor", @@ -16,6 +17,7 @@ "email-required": "E-Mail Adresse ist erforderlich", "guest-login": "Anmelden als Gast", "input-incorrect": "Bitte prüfen Sie Ihre Eingaben.", + "login-successful": "Login erfolgreich.", "login": "Anmelden", "login-data-incorrect": "Benutzername oder Passwort nicht korrekt.", "password": "Passwort", @@ -44,5 +46,54 @@ "register": "Registrieren", "register-successful": "Erfolgreich registriert. Bitte prüfen Sie Ihre E-Mails", "register-unsuccessful": "Bitte prüfen Sie Ihre Eingaben." - } + }, + "home-page": { + "create-session": "Neue Session erstellen", + "join-demo-session": "Demo-Session beitreten", + "session-id": "Session-Id", + "no-room-found": "Es wurde keine Session mit dieser ID gefunden.", + "please-enter": "Bitte geben Sie eine Session-ID ein.", + "exactly-8": "Eine Session-ID hat genau 8 Ziffern." + + }, + "room-page": { + "comments": "Kommentare", + "learn": "Lernen", + "create-comment": "Kommentar abgeben", + "give-feedback": "Feedback geben", + "create-content": "Frage erstellen", + "live-feedback": "Live Feedback", + "answer-statistics": "Antwortstatistiken", + "edit-room": "Session bearbeiten", + "delete-room": "Session löschen" + }, + "comment-page": { + "enter-title": "Geben Sie einen Titel ein", + "back": "Zurück", + "send": "Senden" + }, + "answer": { + "submit": "Absenden", + "abstain": "Enthalten", + "sent": "Antwort gesendet.", + "your-answer": "Ihre Antwort" + }, + "content": { + "create": "Erstellen", + "collection": "Sammlung", + "body": "Inhalt", + "subject": "Thema", + "yes": "Ja", + "no": "Nein", + "add-answer": "Antwort hinzufügen", + "answer": "Antwort", + "actions": "Richtig / Falsch", + "reset": "Zurücksetzen" + }, + "session": { + "session-name": "Name der Session", + "description": "Beschreibung", + "max-ls": "Max. Zeichen:", + "create-session": "Session erstellen" + } } diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index 3fcc8a99d..79509f2d9 100644 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -2,7 +2,8 @@ "header": { "english": "English", "german": "Deutsch", - "logout": "Logout" + "logout": "Logout", + "guest:": "Guest" }, "login-page": { "creator": "Creator", @@ -44,5 +45,53 @@ "register": "Register", "register-successful": "Successfully registered. Please check your mail.", "register-unsuccessful": "Please check your data." - } + }, + "home-page": { + "create-session": "Create new session ", + "join-demo-session": "Join demo-session", + "session-id": "Session-Id", + "no-room-found": "No session was found with id:", + "please-enter": "Please enter a session-id.", + "exactly-8": "A session-id has exactly 8 digits." + }, + "room-page": { + "comments": "Comments", + "learn": "Learn", + "create-comment": "Create comment", + "give-feedback": "Give feedback", + "create-content": "Create content", + "live-feedback": "Live feedback", + "answer-statistics": "Answer-statistics", + "edit-room": "Edit session", + "delete-room": "Delete session" + }, + "comment-page": { + "enter-title": "Enter a title", + "back": "Back", + "send": "Send" + }, + "answer": { + "submit": "Submit", + "abstain": "Abstain", + "sent": "Answer sent.", + "your-answer": "Your answer" + }, + "content": { + "create": "Create", + "collection": "Collection", + "body": "Body", + "subject": "Subject", + "yes": "Yes", + "no": "No", + "add-answer": "Add answer", + "answer": "Answer", + "actions": "Actions", + "reset": "Reset" + }, + "session": { + "session-name": "Session name", + "description": "Description", + "max-ls": "Max. letters / signs:", + "create-session": "Create session" + } } -- GitLab