Skip to content
Snippets Groups Projects
Commit ad084740 authored by Thomas Lenz's avatar Thomas Lenz
Browse files

Add route for creator's room view

parent b45df49a
Branches
Tags
No related merge requests found
...@@ -9,6 +9,7 @@ import { ParticipantHomeScreenComponent } from './participant-home-screen/partic ...@@ -9,6 +9,7 @@ import { ParticipantHomeScreenComponent } from './participant-home-screen/partic
import { AuthenticationGuard } from './authentication.guard'; import { AuthenticationGuard } from './authentication.guard';
import { UserRole } from './user-roles.enum'; import { UserRole } from './user-roles.enum';
import { ParticipantRoomComponent } from './participant-room/participant-room.component'; import { ParticipantRoomComponent } from './participant-room/participant-room.component';
import { CreatorRoomComponent } from './creator-room/creator-room.component';
import { CommentComponent } from './comment/comment.component'; import { CommentComponent } from './comment/comment.component';
import { CommentListComponent } from './comment-list/comment-list.component'; import { CommentListComponent } from './comment-list/comment-list.component';
...@@ -32,6 +33,11 @@ const routes: Routes = [ ...@@ -32,6 +33,11 @@ const routes: Routes = [
component: RoomComponent, component: RoomComponent,
canActivate: [AuthenticationGuard] canActivate: [AuthenticationGuard]
}, },
{
path: 'creator/room/:roomId',
component: CreatorRoomComponent,
canActivate: [AuthenticationGuard]
},
{ {
path: 'room/:roomId/comments', path: 'room/:roomId/comments',
component: CommentListComponent, component: CommentListComponent,
......
...@@ -3,6 +3,13 @@ ...@@ -3,6 +3,13 @@
<button mat-raised-button color="primary" (click)="openCreateRoomDialog()">Create new room</button> <button mat-raised-button color="primary" (click)="openCreateRoomDialog()">Create new room</button>
</div> </div>
<div fxLayout="row" fxLayoutAlign="center"> <div fxLayout="row" fxLayoutAlign="center">
<app-room-list></app-room-list> <!-- <app-room-list></app-room-list> -->
<mat-list>
<mat-list-item *ngFor="let room of rooms">
<button mat-button routerLink="room/{{room.id}}">
{{room.name}}
</button>
</mat-list-item>
</mat-list>
</div> </div>
</div> </div>
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { MatDialog } from '@angular/material'; import { MatDialog } from '@angular/material';
import { RoomCreationComponent } from '../room-creation/room-creation.component'; import { RoomCreationComponent } from '../room-creation/room-creation.component';
import { RoomListComponent } from '../room-list/room-list.component';
import { RoomService } from '../room.service';
@Component({ @Component({
selector: 'app-creator-home-screen', selector: 'app-creator-home-screen',
templateUrl: './creator-home-screen.component.html', templateUrl: './creator-home-screen.component.html',
styleUrls: ['./creator-home-screen.component.scss'] styleUrls: ['./creator-home-screen.component.scss']
}) })
export class CreatorHomeScreenComponent implements OnInit { export class CreatorHomeScreenComponent extends RoomListComponent implements OnInit {
constructor(public dialog: MatDialog) { } constructor(public dialog: MatDialog,
protected roomService: RoomService) {
super(roomService);
}
ngOnInit() { ngOnInit() {
this.getRooms();
} }
openCreateRoomDialog(): void { openCreateRoomDialog(): void {
......
<div fxLayout="column" fxLayoutAlign="center" fxLayoutGap="20px" fxFill> <div fxLayout="column" fxLayoutAlign="center" fxLayoutGap="20px" fxFill>
<div fxLayout="row" fxLayoutAlign="center"> <div fxLayout="row" fxLayoutAlign="center">
<div fxLayoutGap="20px"> <div fxLayoutGap="20px">
<mat-list-item>Room: {{room}}</mat-list-item> <mat-list-item>Room: {{room.name}}</mat-list-item>
<mat-list-item> <mat-list-item>
<button mat-raised-button color="primary">Create content</button> <button mat-raised-button color="primary">Create content</button>
</mat-list-item> </mat-list-item>
......
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { RoomService } from '../room.service';
import { ActivatedRoute } from '@angular/router';
import { RoomComponent } from '../room/room.component';
import { Room } from '../room';
@Component({ @Component({
selector: 'app-creator-room', selector: 'app-creator-room',
templateUrl: './creator-room.component.html', templateUrl: './creator-room.component.html',
styleUrls: ['./creator-room.component.scss'] styleUrls: ['./creator-room.component.scss']
}) })
export class CreatorRoomComponent implements OnInit { export class CreatorRoomComponent extends RoomComponent implements OnInit {
room = '1'; room: Room;
constructor() { } constructor(protected roomService: RoomService,
protected route: ActivatedRoute) {
super(roomService, route);
}
ngOnInit() { ngOnInit() {
this.route.params.subscribe(params => {
this.getRoom(params['roomId']);
});
} }
} }
...@@ -11,7 +11,7 @@ export class RoomListComponent implements OnInit { ...@@ -11,7 +11,7 @@ export class RoomListComponent implements OnInit {
rooms: Room[]; rooms: Room[];
closedRooms: Room[]; closedRooms: Room[];
constructor(private roomService: RoomService) { constructor(protected roomService: RoomService) {
} }
ngOnInit() { ngOnInit() {
......
...@@ -11,8 +11,8 @@ import { ActivatedRoute } from '@angular/router'; ...@@ -11,8 +11,8 @@ import { ActivatedRoute } from '@angular/router';
export class RoomComponent implements OnInit { export class RoomComponent implements OnInit {
room: Room = null; room: Room = null;
constructor(private roomService: RoomService, constructor(protected roomService: RoomService,
private route: ActivatedRoute) { protected route: ActivatedRoute) {
} }
ngOnInit() { ngOnInit() {
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment