diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index 43f6b8ba07102c4c1b788b6c63a11e4f7748c5c2..d725407d1f9c5d23968594665de26ccca53edec6 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -10,6 +10,9 @@ import { UserRole } from './user-roles.enum'; import { ParticipantRoomComponent } from './participant-room/participant-room.component'; import { CreatorRoomComponent } from './creator-room/creator-room.component'; import { CommentListComponent } from './comment-list/comment-list.component'; +import { ContentListComponent } from './content-list/content-list.component'; +import { ContentCreationComponent } from './content-creation/content-creation.component'; +import { ContentDetailComponent } from './content-detail/content-detail.component'; const routes: Routes = [ { path: '', redirectTo: '/home', pathMatch: 'full' }, @@ -42,6 +45,24 @@ const routes: Routes = [ canActivate: [AuthenticationGuard], data: { roles: [UserRole.CREATOR] } }, + { + path: 'creator/room/:roomId/content-creation', + component: ContentCreationComponent, + canActivate: [AuthenticationGuard], + data: { roles: [UserRole.CREATOR] } + }, + { + path: 'creator/room/:roomId/content-list', + component: ContentListComponent, + canActivate: [AuthenticationGuard], + data: { roles: [UserRole.CREATOR] } + }, + { + path: 'creator/room/:roomId/content-list/:id', + component: ContentDetailComponent, + canActivate: [AuthenticationGuard], + data: { roles: [UserRole.CREATOR] } + }, { path: 'participant/room/:roomId/create-comment', component: CreateCommentComponent, canActivate: [AuthenticationGuard], diff --git a/src/app/content-creation/content-creation.component.scss b/src/app/content-creation/content-creation.component.scss index b8fb3a62658b7b3f63345c8950c8cb8057964750..4f268d8cd9826f5679d8129b6778a657f7280adf 100644 --- a/src/app/content-creation/content-creation.component.scss +++ b/src/app/content-creation/content-creation.component.scss @@ -1,4 +1,4 @@ .content-card { max-width: 400px; - margin-bottom: 5%; + margin: 5%; } diff --git a/src/app/content-detail/content-detail.component.ts b/src/app/content-detail/content-detail.component.ts index 3ddb5355654cee697d0298aac88de57a50cec1c5..c44eb9311a58e9f5d87570add10552565e798cc9 100644 --- a/src/app/content-detail/content-detail.component.ts +++ b/src/app/content-detail/content-detail.component.ts @@ -4,15 +4,15 @@ import { ContentService } from '../content.service'; import { ActivatedRoute } from '@angular/router'; @Component({ - selector: 'app-content', - templateUrl: './content.component.html', - styleUrls: ['./content.component.scss'] + selector: 'app-content-detail', + templateUrl: './content-detail.component.html', + styleUrls: ['./content-detail.component.scss'] }) export class ContentDetailComponent implements OnInit { content: Content = null; constructor( - private contentCreationService: ContentService, + private contentService: ContentService, private route: ActivatedRoute ) { } @@ -23,7 +23,7 @@ export class ContentDetailComponent implements OnInit { } getContent(id: string): void { - this.contentCreationService.getContent(id) + this.contentService.getContent(id) .subscribe(content => this.content = content); } } diff --git a/src/app/content.ts b/src/app/content.ts index f8598abc8254bcb4103c010ea82ef021f613ee5c..869a3c9e436ee40ed61a0304e343d8ea59c78b54 100644 --- a/src/app/content.ts +++ b/src/app/content.ts @@ -1,4 +1,4 @@ -enum Format { +export enum Format { CHOICE, BINARY, SCALE, diff --git a/src/app/creator-room/creator-room.component.html b/src/app/creator-room/creator-room.component.html index 9c82c86740615d3b1ee9023cb986ac950b36cfc6..5fb5684dfd815c3a7f7744859df3b7a0601b007d 100644 --- a/src/app/creator-room/creator-room.component.html +++ b/src/app/creator-room/creator-room.component.html @@ -19,10 +19,10 @@ </mat-card-content> <mat-divider></mat-divider> <mat-card-actions> - <button mat-button color="primary" matTooltip="Create new content"> + <button mat-button color="primary" matTooltip="Create new content" routerLink="/creator/room/{{room.id}}/content-creation"> Create content </button> - <button mat-button color="primary" matTooltip="See contents"> + <button mat-button color="primary" matTooltip="See contents" routerLink="/creator/room/{{room.id}}/content-list"> Contents </button> <button mat-button color="primary" matTooltip="See room comments" diff --git a/src/app/in-memory-data.service.ts b/src/app/in-memory-data.service.ts index c91bb3c246498bd39476c7dfdd2d1d4ff1944382..45201f21437f038ea46ff950ae44965672bc4226 100644 --- a/src/app/in-memory-data.service.ts +++ b/src/app/in-memory-data.service.ts @@ -1,4 +1,5 @@ import { InMemoryDbService } from 'angular-in-memory-web-api'; +import { Format } from './content'; export class InMemoryDataService implements InMemoryDbService { /** @@ -80,6 +81,27 @@ export class InMemoryDataService implements InMemoryDbService { creationTimestamp: new Date(Date.now()), } ]; - return { rooms, comments }; + + const contents = [ + { + id: '11', + revision: '1', + roomId: '1', + subject: 'bla', + body: 'testcontent alpha beta', + round: 1, + format: Format.TEXT + }, + { + id: '12', + revision: '2', + roomId: '3', + subject: 'blub', + body: 'testcontenttttt', + round: 5, + format: Format.TEXT + } + ]; + return { rooms, comments, contents }; } }